blob: becdfa3ed5936f1b34da61bb0acacbf1c31cb3b3 [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?><manifest revision="267a0935f202464987ffa427cb204381b6d1ef2c">
<notice>Your sources have been sync'd successfully.</notice>
<remote fetch="https://android.googlesource.com" name="aosp" review="https://android-review.googlesource.com"/>
<remote alias="cros" fetch="https://chromium.googlesource.com/" name="chromium"/>
<remote fetch="https://chromium.googlesource.com" name="cros" review="https://chromium-review.googlesource.com"/>
<default remote="cros" revision="refs/heads/master" sync-j="8"/>
<project name="aosp/platform/external/dbus-binding-generator" path="src/aosp/external/dbus-binding-generator" revision="bce0483dd09f592d6f9f989f0e34fc930d206810" upstream="refs/heads/master"/>
<project name="aosp/platform/external/libbrillo" path="src/aosp/external/libbrillo" revision="16c285d16813172eaacd12d3396df90a3894cbc5" upstream="refs/heads/master"/>
<project name="aosp/platform/external/libchrome" path="src/aosp/external/libchrome" revision="4ba5a9a6b07148b0b812ed34f8cdfe3a738a4dd4" upstream="refs/heads/master"/>
<project name="aosp/platform/external/minijail" path="src/aosp/external/minijail" revision="7a569073b95af7532892dc726c2f33cd40edfb57" upstream="refs/heads/master"/>
<project name="aosp/platform/external/modp_b64" path="src/third_party/modp_b64" revision="99dc13926931cedfd2e4e582c33ef657d0645c5c" upstream="refs/heads/master"/>
<project name="aosp/platform/system/connectivity/apmanager" path="src/aosp/system/connectivity/apmanager" revision="b606f03ee5a4d7a5f5f78cc980a447f08d94f9df" upstream="refs/heads/master"/>
<project name="aosp/platform/system/connectivity/shill" path="src/aosp/system/connectivity/shill" revision="496f396f9178b2830a60e3f667321f7eae5c482c" upstream="refs/heads/master"/>
<project name="aosp/platform/system/firewalld" path="src/aosp/system/firewalld" revision="90c4a0d3a66a84270aa8a8b4d46a97e6172074e9" upstream="refs/heads/master"/>
<project name="aosp/platform/system/tpm" path="src/aosp/system/tpm" revision="a6f1627c725e3218305afb47a215dc1564d8103d" upstream="refs/heads/master"/>
<project name="aosp/platform/system/update_engine" path="src/aosp/system/update_engine" revision="696faf4dffebca4d15959251cf3fb88b0727d801" upstream="refs/heads/master"/>
<project name="aosp/platform/system/webservd" path="src/aosp/system/webservd" revision="b470b41a117a213f5b8cf2d7badcc208da001b72" upstream="refs/heads/master"/>
<project name="chromium/deps/libmtp" path="chromium/src/third_party/libmtp" revision="0680a2d0c4cec58f8163fe115de80cff8852fd8b" upstream="refs/heads/master"/>
<project name="chromium/src/third_party/hwcplus" revision="e66a31e54e12906e86dc59f95b458889f025c505" upstream="refs/heads/master"/>
<project groups="minilayout,buildtools" name="chromium/tools/depot_tools" revision="9d20675998f69ae543c3ebed4bcc14f748f3797e"/>
<project groups="minilayout,buildtools,labtools" name="chromiumos/chromite" path="chromite" revision="8f2c7dfd01585b97cf9e36c59a107defcf4056eb" upstream="refs/heads/master">
<copyfile dest="AUTHORS" src="AUTHORS"/>
<copyfile dest="LICENSE" src="LICENSE"/>
</project>
<project name="chromiumos/manifest" path="manifest" revision="49ef9671d35ef92f1e2f0eea163ef17a4e167f12" upstream="refs/heads/master"/>
<project groups="minilayout" name="chromiumos/overlays/board-overlays" path="src/overlays" revision="a52232c044e6f41dd4ea06f86795116d2af6c07f" upstream="refs/heads/master"/>
<project groups="minilayout,labtools" name="chromiumos/overlays/chromiumos-overlay" path="src/third_party/chromiumos-overlay" revision="c89e8a1eb480a8358f059110cc858c1efc84eb01" sync-c="true" upstream="refs/heads/master"/>
<project groups="minilayout,labtools" name="chromiumos/overlays/eclass-overlay" path="src/third_party/eclass-overlay" revision="161edc9f4dddd54a867ae6ce521a32971ba48f30" upstream="refs/heads/master"/>
<project groups="minilayout,labtools" name="chromiumos/overlays/portage-stable" path="src/third_party/portage-stable" revision="6b67343eb5c26cb57a9ab0a2ddff2d7733e13c56" upstream="refs/heads/master"/>
<project name="chromiumos/platform/assets" path="src/platform/assets" revision="5fc15dee29d1d967ccc46071a732d802d3b34655" upstream="refs/heads/master"/>
<project name="chromiumos/platform/audiotest" path="src/platform/audiotest" revision="547ee7b5c86235308527c0ddd5e43c1673e7fcf1" upstream="refs/heads/master"/>
<project name="chromiumos/platform/battery_updater" path="src/platform/battery_updater" revision="32463c6de8e8c98d4b1711937bc7678afc121a85" upstream="refs/heads/master"/>
<project name="chromiumos/platform/bmpblk" path="src/platform/bmpblk" revision="563ac6b7db7e742045b02ed29cc5ecc81ff58531" upstream="refs/heads/master"/>
<project name="chromiumos/platform/bootcache" path="src/platform/bootcache" revision="ebe3a0995e90026433ffc62b7aeed6cad1f28694" upstream="refs/heads/master"/>
<project name="chromiumos/platform/btsocket" path="src/platform/btsocket" revision="1b65449a647c99556511df30b8ab660b98acce7f" upstream="refs/heads/master"/>
<project name="chromiumos/platform/chameleon" path="src/platform/chameleon" revision="5d067bf2f813e81e2cf2b5f0db22c3307be37cea" upstream="refs/heads/master"/>
<project name="chromiumos/platform/chromiumos-assets" path="src/platform/chromiumos-assets" revision="05ce8d3c59a2d8e765b3beb2e1a69e7fcf59e5ba" upstream="refs/heads/master"/>
<project groups="minilayout,buildtools" name="chromiumos/platform/crostestutils" path="src/platform/crostestutils" revision="0d4ff6c83c9f6ce674e49bf461f370ec77de6809" upstream="refs/heads/master"/>
<project groups="minilayout,buildtools,labtools" name="chromiumos/platform/crosutils" path="src/scripts" revision="691778827ade02c0e1c1ce1d3b992228fca5b282" upstream="refs/heads/master"/>
<project name="chromiumos/platform/depthcharge" path="src/platform/depthcharge" revision="0b8e290aa6970534b4b95e6817e53ebf1638bd86" upstream="refs/heads/master"/>
<project groups="minilayout,buildtools" name="chromiumos/platform/dev-util" path="src/platform/dev" revision="ee5a8c3e7156974b924c8bd5f3e0786ea3896749" upstream="refs/heads/master"/>
<project name="chromiumos/platform/dm-verity" path="src/platform/verity" revision="c4df284b32558f631862f79c75fc03af4f5ca68a" upstream="refs/heads/master"/>
<project name="chromiumos/platform/drm-tests" path="src/platform/drm-tests" revision="fa0547a876bf0e1ac3740ea2a9cf8c7999acb87f" upstream="refs/heads/master"/>
<project name="chromiumos/platform/ec" path="src/platform/ec" revision="3cb77ee041d3dbf9b27dc5baabcdf10b82914e48" upstream="refs/heads/master"/>
<project name="chromiumos/platform/factory" path="src/platform/factory" revision="aaa918be47adbe5a4d6756f490615ff8b6b50041" upstream="refs/heads/master"/>
<project name="chromiumos/platform/factory_installer" path="src/platform/factory_installer" revision="312f06df6f921915f15f976f936eea335c51b236" upstream="refs/heads/master"/>
<project name="chromiumos/platform/firmware" path="src/platform/firmware" revision="70f79da7a3bd18c942fa65a6b21fea589bbb5516" upstream="refs/heads/master"/>
<project name="chromiumos/platform/frecon" path="src/platform/frecon" revision="607e4dcf6dbc983272bee14f8e8c1300d6a1eecd" upstream="refs/heads/master"/>
<project name="chromiumos/platform/gestures" path="src/platform/gestures" revision="9d27a36fdd3727d7fdebe96fd24013bc601a58df" upstream="refs/heads/master"/>
<project name="chromiumos/platform/glbench/images" path="src/platform2/glbench/images" revision="5fd5ce655833f65d46b1950bec4eedeb4e96959b" upstream="refs/heads/master"/>
<project name="chromiumos/platform/go-seccomp" path="src/platform/go-seccomp" revision="0280326e5bd212fcfbe3696e113730045debae74" upstream="refs/heads/master"/>
<project name="chromiumos/platform/google-breakpad" path="src/third_party/breakpad" revision="67d5567177301d0c24303f26ad119ab7bd7fab40" upstream="refs/heads/master"/>
<project name="chromiumos/platform/imageloader" path="src/platform/imageloader" revision="d5eb65afd5f9da10a3fa86f65d357a817221717e" upstream="refs/heads/master"/>
<project name="chromiumos/platform/initramfs" path="src/platform/initramfs" revision="1a710721263b8b93ab49af6a6f749a778483f3df" upstream="refs/heads/master"/>
<project name="chromiumos/platform/inputcontrol" path="src/platform/inputcontrol" revision="ae0b15dc322bab9bf6d7c4fcd5f77d488766a275" upstream="refs/heads/master"/>
<project name="chromiumos/platform/jabra_vold" path="src/platform/jabra_vold" revision="5ee665e7c68856d3b6ce8bb0f610d43503e603af" upstream="refs/heads/master"/>
<project name="chromiumos/platform/libevdev" path="src/platform/libevdev" revision="61f882f395b9f39478d7164209e7134cccdcb72b" upstream="refs/heads/master"/>
<project name="chromiumos/platform/memento_softwareupdate" path="src/platform/memento_softwareupdate" revision="3c7204287bbc8f4341f546857216389bdff58e51" upstream="refs/heads/master"/>
<project name="chromiumos/platform/microbenchmark" path="src/platform/microbenchmark" revision="d5ea30febe406c5b486325dfae926564f3a46efd" upstream="refs/heads/master"/>
<project name="chromiumos/platform/minigbm" path="src/platform/minigbm" revision="f9e7c4c8e91fb354abf714c7a5c89b4990814ff3" upstream="refs/heads/master"/>
<project name="chromiumos/platform/monitor_reconfig" path="src/platform/monitor_reconfig" revision="f022d19d84f232290b596beeb26347f62442e7eb" upstream="refs/heads/master"/>
<project name="chromiumos/platform/mosys" path="src/platform/mosys" revision="f7f088cb046603ff434c4b550a856dd3d01311b2" upstream="refs/heads/master"/>
<project name="chromiumos/platform/mtpd" path="src/platform/mtpd" revision="44148fe605b952132644f0d0e5ccea7cfcc6d6c8" upstream="refs/heads/master"/>
<project name="chromiumos/platform/mtplot" path="src/platform/mtplot" revision="5e4f631e633384751f582bd9db5f4d6eb2112494" upstream="refs/heads/master"/>
<project name="chromiumos/platform/mttools" path="src/platform/mttools" revision="9efd0e1723cd45709bd0d34e8e7bbfd15967f0d5" upstream="refs/heads/master"/>
<project name="chromiumos/platform/punybench" path="src/platform/punybench" revision="5a230ee17756dc43ff732932dcb52899c06a4d09" upstream="refs/heads/master"/>
<project name="chromiumos/platform/system_api" path="src/platform/system_api" revision="c74bf51d2bc256adf09b6cfb2e353262fa43a736" upstream="refs/heads/master"/>
<project name="chromiumos/platform/touch_firmware_test" path="src/platform/touch_firmware_test" revision="1973ced7b023bdb4d095dff3e779bb4afacfe4f4" upstream="refs/heads/master"/>
<project name="chromiumos/platform/touch_noise_filter" path="src/platform/touch_noise_filter" revision="6b0aba12a385f4d3a7a47641a3a919018032f6f8" upstream="refs/heads/master"/>
<project name="chromiumos/platform/touch_updater" path="src/platform/touch_updater" revision="3f379a2b8808a435dc14a333f3f7ad82e54e2511" upstream="refs/heads/master"/>
<project name="chromiumos/platform/touchbot" path="src/platform/touchbot" revision="75d8f1bfbbb3dfc870fcbc22f53cd16b66ac7f23" upstream="refs/heads/master"/>
<project name="chromiumos/platform/touchpad-tests" path="src/platform/touchpad-tests" revision="d2e7d94a834b54511ca57e6359839f9ca86d6d04" upstream="refs/heads/master"/>
<project name="chromiumos/platform/tpm" path="src/third_party/tpm" revision="0cba6cadd1bea1ce3717779201d594c4c9131dc2" upstream="refs/heads/master"/>
<project name="chromiumos/platform/tpm_lite" path="src/platform/tpm_lite" revision="066c7f963b3ef733716251b666e0af0afd03b4fe" upstream="refs/heads/master"/>
<project name="chromiumos/platform/trunks" path="src/platform/trunks" revision="92dbe8c9e7fcf8acf67805fd5e25e85aa371f673" upstream="refs/heads/master"/>
<project name="chromiumos/platform/uboot-env" path="src/platform/uboot-env" revision="108ebbfac4d13d11e1940216434c368384ee0c0b" upstream="refs/heads/master"/>
<project groups="buildtools" name="chromiumos/platform/vboot" path="src/platform/vboot" revision="2d30a2f5b1c81eb61de4bf82180a910d45f22e81" upstream="refs/heads/master"/>
<project groups="buildtools" name="chromiumos/platform/vboot_reference" path="src/platform/vboot_reference" revision="d5820a79fc1354d68ead43a3bf88bdee8a6a2f3d" upstream="refs/heads/master"/>
<project name="chromiumos/platform/vpd" path="src/platform/vpd" revision="3e4cf4867fff44491b4f4c294eee9c77b92d4440" upstream="refs/heads/master"/>
<project name="chromiumos/platform/webplot" path="src/platform/webplot" revision="bbd5ea22ef9f8e109e363b26958d9a2fc8921f0f" upstream="refs/heads/master"/>
<project name="chromiumos/platform/wireless_automation" path="src/platform/wireless_automation" revision="d7177dbd464f2952e10309bf1eef56bb31a7f8ad" upstream="refs/heads/master"/>
<project name="chromiumos/platform/workarounds" path="src/platform/workarounds" revision="30cab56de921f5be2d24c2e83bcd4ad5631b2d9b" upstream="refs/heads/master"/>
<project name="chromiumos/platform/xf86-input-cmt" path="src/platform/xf86-input-cmt" revision="3f2ffc921952e57a4343463b0679d90b80b51fc7" upstream="refs/heads/master"/>
<project name="chromiumos/platform/xorg-conf" path="src/platform/xorg-conf" revision="141199fa101370af0aed16a44f7122fea43f7c30" upstream="refs/heads/master"/>
<project name="chromiumos/platform2" path="src/platform2" revision="23c769f6abe001f250fc98d771f1ea46f0b9e8a4" upstream="refs/heads/master"/>
<project groups="minilayout,buildtools,labtools" name="chromiumos/repohooks" path="src/repohooks" revision="fdbac8e95ef6153ab23370ea1586a86f462dbe5f" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/adhd" path="src/third_party/adhd" revision="305b2e610ce5d023aa8cda7adee571c5da8bcc0b" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/android_mtdutils" path="src/third_party/android_mtdutils" revision="9bcfc3ee238f16925e9aaa4573129784ebb397e7" upstream="chromeos"/>
<project name="chromiumos/third_party/arm-trusted-firmware" path="src/third_party/arm-trusted-firmware" revision="a7e530331d7cf4b58618f0715e61b5a872176f07">
<annotation name="branch-mode" value="create"/>
</project>
<project name="chromiumos/third_party/atheros" path="src/third_party/atheros" revision="52a5bdaa8930c14ee42518354de3e5ec09911c6b" upstream="refs/heads/master"/>
<project groups="buildtools,labtools" name="chromiumos/third_party/autotest" path="src/third_party/autotest/files" revision="f6b8fc7e039b2b598bcef174ee8cf4bc43d1ba71" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/bluez" path="src/third_party/bluez" revision="58d9cf6e6ebbb1ce60e6da37943bb252b5c28557" upstream="refs/heads/chromeos-5.39"/>
<project name="chromiumos/third_party/bootstub" path="src/third_party/bootstub" revision="5ac54e8d3d305c2c6c7297e8e54d3cf7e4629b29" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/broadcom" path="src/third_party/broadcom" revision="4070e7161f2f1a1a22027a744eb868500688f0b6" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/cbootimage" path="src/third_party/cbootimage" revision="b7d5b2d6a6dd05874d86ee900ff441d261f9034c" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/chrontel" path="src/third_party/chrontel" revision="7bcd0328d0eeef6a0539bd0ba80cd9a545e6cf4a" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/coreboot" path="src/third_party/coreboot" revision="b93e833ad48d50fc66529eb71b5529cc0446052e" upstream="refs/heads/chromeos-2016.05"/>
<project name="chromiumos/third_party/coreboot/blobs" path="src/third_party/coreboot/3rdparty/blobs" revision="9ba07035ed0acb28902cce826ea833cf531d57c1" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/cryptoc" path="src/third_party/cryptoc" revision="5319e836704fcf2df75c7425addebb89bb973714" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/cypress-tools" path="src/third_party/cypress-tools" revision="043fba1c35f89cce95f804bf6d4f01cfc23a6c21" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/daisydog" path="src/third_party/daisydog" revision="3182aa85c087446e4358370549adc45db21ec124" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/dbus-cplusplus" path="src/third_party/dbus-c++" revision="f140c0aa430e1db1c0f31d23d3eb2397d47f209e" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/dbus-spy" path="src/third_party/dbus-spy" revision="0e04421c73b24536de7fcc1886da469d8b7a2a41" upstream="refs/heads/master"/>
<project groups="minilayout,buildtools" name="chromiumos/third_party/dpkt" path="chromite/third_party/dpkt" revision="f5259728b1294412bee945df9708efba09ea9160">
<annotation name="branch-mode" value="pin"/>
</project>
<project name="chromiumos/third_party/edk2" path="src/third_party/edk2" revision="0aa39d284043be61b5f1222afdffd39a5abaf3aa" upstream="refs/heads/chromeos-2014.04"/>
<project name="chromiumos/third_party/em100" path="src/third_party/em100" revision="6e60dbae5bf62cd0ffffb9fc5ca9ba93e831ee88" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/flashmap" path="src/third_party/flashmap" revision="aaaf66654dba797f152066df4d1dc4144b492c66" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/flashrom" path="src/third_party/flashrom" revision="d75cd67ac2c9e04c3e7722bb4d28a888ac9fa911" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/gcc" path="src/third_party/gcc" revision="a2bc87ab8851051e765d60626a6997f63ddfe00e" upstream="refs/heads/master"/>
<project groups="minilayout,buildtools" name="chromiumos/third_party/gdata" path="chromite/third_party/gdata" revision="fe7e5c90a9827feb66ed446b2d297a1618b25272" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/gdmwimax" path="src/third_party/gdmwimax" revision="e8236b4b2d66b1972e4f84955a238134acd7f6a1" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/gobi3k-sdk" path="src/third_party/gobi3k-sdk" revision="69702c400e274984a24d08fcaefe3952d5dcb36e" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/grub2" path="src/third_party/grub2" revision="df6034c59cb2d847f9e780cf2def30c5c9b8305f" upstream="refs/heads/master"/>
<project groups="labtools" name="chromiumos/third_party/hdctools" path="src/third_party/hdctools" revision="bf62ddd64bad2b64c2d9f7e56b187eaf5590762c" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/hostap" path="src/third_party/wpa_supplicant" revision="6fcb866534544ea8ce69c2134871cfcbdc1eb6d3" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/hwcplus-drm" path="src/third_party/hwcplus-drm" revision="7376a8da1c961115a61d7a3cb23bb13e4153583d" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/ibus-chewing" path="src/third_party/ibus-chewing/files" revision="7a9514a0844eb5eb90ab96f62484a6af9e4a0d6d" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/ibus-xkb-layouts" path="src/third_party/ibus-xkb-layouts/files" revision="6af015110aa92dc2eed88a9f704634c3eff53b14" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/kernel" path="src/third_party/kernel/v3.8" revision="74c1be9358d02d760004bf7ff2cabc107aa071f4" upstream="refs/heads/chromeos-3.8"/>
<project name="chromiumos/third_party/kernel" path="src/third_party/kernel/v3.10" revision="5c0d6ed87102bac50c26c7a3733363a6c650f830" upstream="refs/heads/chromeos-3.10"/>
<project name="chromiumos/third_party/kernel" path="src/third_party/kernel/v3.14" revision="0fec2402e9a58167df7dfbd509bafa28b01ad197" upstream="refs/heads/chromeos-3.14"/>
<project name="chromiumos/third_party/kernel" path="src/third_party/kernel/v3.18" revision="d98972429e5d3b4bd9664f55d63b8762df75c93b" upstream="refs/heads/chromeos-3.18"/>
<project name="chromiumos/third_party/kernel" path="src/third_party/kernel/v4.4" revision="80e05635532527e9f8ce96d40634b3d05910c3df" upstream="refs/heads/chromeos-4.4"/>
<project name="chromiumos/third_party/khronos" path="src/third_party/khronos" revision="dceee6ef99b968fd11d9c6058448202db835bc0f" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/libc-bench" path="src/third_party/libc-bench" revision="76793dd4b09191a78a78180012718e72d792717f" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/libdrm" path="src/third_party/libdrm" revision="2c25afb719347a151657f8637ad62a5df42e247e" upstream="refs/heads/chromeos-2.4.66"/>
<project name="chromiumos/third_party/libmbim" path="src/third_party/libmbim" revision="c4e2949edeed01ca3b810729a7af0d265c49629b" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/libqmi" path="src/third_party/libqmi" revision="a436c551cf226af66cdb3dd74ee3971d0b1dae04" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/libresample" path="src/third_party/libresample" revision="cc9f20f439396b7d45e94b8301edd95d33f26a46" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/libscrypt" path="src/third_party/libscrypt" revision="b45c53f9418a6eff2c8ed98703a55f96029304b1" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/libsigrok" path="src/third_party/libsigrok" revision="199fe31115c76231746f5953271795d58679561c" upstream="refs/heads/chromeos"/>
<project name="chromiumos/third_party/libsigrok-cli" path="src/third_party/sigrok-cli" revision="c9edfa218e5a5972531b6f4a3ece8d33a44ae1b5" upstream="refs/heads/chromeos"/>
<project name="chromiumos/third_party/libsigrokdecode" path="src/third_party/libsigrokdecode" revision="3279c2825684c7009775b731d0a9e37815778282" upstream="refs/heads/chromeos"/>
<project name="chromiumos/third_party/libv4lplugins" path="src/third_party/libv4lplugins" revision="61eb2eceaed6f66a36aa9fc3ed2bd55b8aa3eafe" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/linux-firmware" path="src/third_party/linux-firmware" revision="13556f5f77128189571ecd2ffabd985ca837ff29" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/ltp" path="src/third_party/ltp" revision="7fea30a4ad5b7b4e99865afcee8b6bfd19ec8b03" upstream="refs/heads/chromeos-20150119"/>
<project name="chromiumos/third_party/marvell" path="src/third_party/marvell" revision="db05d126a42a1540a503a2e5b49c3746c03df77d" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/memtest" path="src/third_party/memtest" revision="3d4be6e3bfd819856e38a82e35c206fec4551851" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/mesa" path="src/third_party/arc-mesa" revision="b2b27d09c1d7f694a37a80f7b04e4f79df557b1f" upstream="refs/heads/arc-11.3.0-pre1"/>
<project name="chromiumos/third_party/mesa" path="src/third_party/mesa" revision="6ef50efc1079e544d7fe912aba219e8907cb0cbd" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/mesa" path="src/third_party/mesa-img" revision="129178893b2260df22db96327c5ca9c2ce7db046" upstream="refs/heads/mesa-img"/>
<project name="chromiumos/third_party/minifakedns" path="src/third_party/miniFakeDns" revision="6184bea119dea53da539727fe8c2a116f98cef24" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/mmc-utils" path="src/third_party/mmc-utils" revision="bcc3e2e4246431be511be3959a11cd9733bedd29" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/modemmanager-next" path="src/third_party/modemmanager-next" revision="d759387adb6b4079241f7d1f2a145738acad929b" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/opencryptoki" path="src/third_party/opencryptoki" revision="b67690aeeb4174b2253db18a9c1b19eeb219a4ef" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/ply-image" path="src/third_party/ply-image" revision="6cf4e4cd968bb72ade54e423e2b97eb3a80c6de9" upstream="refs/heads/master"/>
<project groups="minilayout,buildtools" name="chromiumos/third_party/pyelftools" path="chromite/third_party/pyelftools" revision="19b3e610c86fcadb837d252c794cb5e8008826ae" upstream="refs/heads/master-0.22"/>
<project name="chromiumos/third_party/rootdev" path="src/third_party/rootdev" revision="5d7d7ff513315abd103d0c95e92ae646c1a7688c" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/seabios" path="src/third_party/seabios" revision="3004147dd3707e600772ec6c5d37beac7f4b8eb4" upstream="refs/heads/chromeos-2014.11.03"/>
<project name="chromiumos/third_party/sysbios" path="src/third_party/sysbios" revision="33e1db34b8162de72a5e9bbbc44e6bce38978396" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/tegra-power-query" path="src/third_party/tegra-power-query" revision="66f1f0d949f4ca4836c1a65b622629205240e37a" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/tegrastats" path="src/third_party/tegrastats" revision="1be161a89525d840e1f6d1f21b3f45645a7dedb3" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/tlsdate" path="src/third_party/tlsdate" revision="0c4b13bf15b8e5773b79e6317121fba5e97a154f" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/tpm-emulator" path="src/third_party/tpm-emulator" revision="310a21ef24ace14b4d6e8095172445494f54ff25" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/tpm2" path="src/third_party/tpm2" revision="716a46a8f2e9516bd9ac64674a5811374f446792" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/trousers" path="src/third_party/trousers" revision="416d30f74a9c1dc08b95b907d8b7e81edf6c9db0" upstream="refs/heads/master-0.3.13"/>
<project name="chromiumos/third_party/u-boot" path="src/third_party/u-boot/files" revision="cc72f5c47c758892b0f41257b0dd441a506ffdcd" upstream="refs/heads/chromeos-v2013.06"/>
<project name="chromiumos/third_party/u-boot" path="src/third_party/u-boot/next" revision="b30f38206f17aa73cda0a2fdaf4dc705527315ba" upstream="refs/heads/chromeos-v2015.07-rc1"/>
<project name="chromiumos/third_party/whining" path="src/third_party/whining" revision="bcf721d62d6a4c4c162c63714371fa4349df53bc" upstream="refs/heads/master"/>
<project name="chromiumos/third_party/xf86-video-armsoc" path="src/third_party/xf86-video-armsoc" revision="30370e9dbf7ba0e457ee7de297d2ad6c269a00be" upstream="refs/heads/master"/>
<project groups="minilayout,buildtools" name="external/swarming.client" path="chromite/third_party/swarming.client" revision="715861067a7cc8d20d2d629b6d76d796c004feb4"/>
<project name="linux-syscall-support" path="src/third_party/breakpad/src/third_party/lss" revision="9292030109847793f7a6689adac1ddafb412fe14"/>
<project name="platform/bootable/recovery" path="src/aosp/bootable/recovery" remote="aosp" revision="a82ee456bbb2fdcd77b782d52500650bd06d04e9" upstream="refs/heads/master"/>
<project name="platform/external/bsdiff" path="src/aosp/external/bsdiff" remote="aosp" revision="58632a3b7c85b2c0157d6f4d250ad397bd8fbe44" upstream="refs/heads/master"/>
<project name="platform/hardware/libhardware" path="src/platform/libhardware" remote="aosp" revision="99d2543a129b7054729bafeb17911a1349e9e8e3" upstream="refs/heads/master"/>
<project name="platform/system/bt" path="src/platform/bt" remote="aosp" revision="7932727cbe07b4bc176b2d1c04f0bcf350973512" upstream="refs/heads/master"/>
<project name="platform/system/core" path="src/platform/core" remote="aosp" revision="fc36f6fab624dac75ff4c1a28b7833cdb1db0540" upstream="refs/heads/master"/>
<project name="toolchain/binutils" path="src/aosp/toolchain/binutils" remote="aosp" revision="6422a80df992e4542dbd4fb70a04f316065674af" upstream="refs/heads/master"/>
<project name="toolchain/gcc" path="src/aosp/toolchain/gcc" remote="aosp" revision="fe767fbb6d580458aeea609ac5c82b600acce63d"/>
<repo-hooks enabled-list="pre-upload" in-project="chromiumos/repohooks"/>
<pending_commit branch="chromeos-3.14" change_id="I65c887c18a98749643fdce553f333db104bbfd4e" commit="7e528ec399b43bc05312a05a0c3436a7827a4c9d" commit_message="UPSTREAM: cgroup: Use RCU_INIT_POINTER(x, NULL) in cgroup.c This patch replaces rcu_assign_pointer(x, NULL) with RCU_INIT_POINTER(x, NULL) The rcu_assign_pointer() ensures that the initialization of a structure is carried out before storing a pointer to that structure. And in the case of the NULL pointer, there is no structure to initialize. So, rcu_assign_pointer(p, NULL) can be safely converted to RCU_INIT_POINTER(p, NULL) Signed-off-by: Monam Agarwal &lt;monamagarwal123@gmail.com&gt; Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 01a971406177c2ca9834be6914a67e20f463a3e6) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I65c887c18a98749643fdce553f333db104bbfd4e Reviewed-on: https://chromium-review.googlesource.com/359741 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359741" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/41/359741/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I53c394233f42c8461518890a4ebced11022d4d91" commit="3057cb395a28b0e91c504d4dc063d733d49ab107" commit_message="UPSTREAM: cgroup: fix spurious lockdep warning in cgroup_exit() cgroup_exit() is called in fork and exit path. If it's called in the failure path during fork, PF_EXITING isn't set, and then lockdep will complain. Fix this by removing cgroup_exit() in that failure path. cgroup_fork() does nothing that needs cleanup. Reported-by: Sasha Levin &lt;sasha.levin@oracle.com&gt; Signed-off-by: Li Zefan &lt;lizefan@huawei.com&gt; Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit e8604cb43690b781f9a7ad4a770f3e10259fe939) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I53c394233f42c8461518890a4ebced11022d4d91 Reviewed-on: https://chromium-review.googlesource.com/359742 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359742" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/42/359742/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="Icc51a932d6406693de7c3351d40f74e2ecb9e7a6" commit="44c96bd8734525e131461548a14b7a953a5f1e60" commit_message="UPSTREAM: cgroup: remove useless argument from cgroup_exit() Signed-off-by: Li Zefan &lt;lizefan@huawei.com&gt; Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 1ec41830e087cda1f62dda4182c2b62811eb0ffc) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: Icc51a932d6406693de7c3351d40f74e2ecb9e7a6 Reviewed-on: https://chromium-review.googlesource.com/359743 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359743" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/43/359743/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I5d26efe9b6bec0486e955c209b7ba99432316dac" commit="db733e1e5d93a6bda1c4c1d122b676ca2543c9aa" commit_message="UPSTREAM: kernfs: protect lazy kernfs_iattrs allocation with mutex kernfs_iattrs is allocated lazily when operations which require it take place; unfortunately, the lazy allocation and returning weren't properly synchronized and when there are multiple concurrent operations, it might end up returning kernfs_iattrs which hasn't finished initialization yet or different copies to different callers. Fix it by synchronizing with a mutex. This can be smarter with memory barriers but let's go there if it actually turns out to be necessary. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Link: http://lkml.kernel.org/g/533ABA32.9080602@oracle.com Reported-by: Sasha Levin &lt;sasha.levin@oracle.com&gt; Cc: stable@vger.kernel.org # 3.14 Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 4afddd60a770560d370d6f85c5aef57c16bf7502) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I5d26efe9b6bec0486e955c209b7ba99432316dac Reviewed-on: https://chromium-review.googlesource.com/359744 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359744" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/44/359744/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="Ib8a576d61259d6b181450cb6c636ef79468f15fb" commit="94fbad5986dcac834affd744e0c6d77740f52955" commit_message="UPSTREAM: kernfs: implement kernfs_root-&gt;supers list Currently, there's no way to find out which super_blocks are associated with a given kernfs_root. Let's implement it - the planned inotify extension to kernfs_notify() needs it. Make kernfs_super_info point back to the super_block and chain it at kernfs_root-&gt;supers. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 7d568a8383bbb9c1f5167781075906acb2bb1550) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: Ib8a576d61259d6b181450cb6c636ef79468f15fb Reviewed-on: https://chromium-review.googlesource.com/359745 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359745" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/45/359745/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I7cf16d93a9bdadc8e6740978bf31e2d035314e90" commit="387c6c793f45bd283296e77710e600780a87a0b6" commit_message="UPSTREAM: kernfs: make kernfs_notify() trigger inotify events too kernfs_notify() is used to indicate either new data is available or the content of a file has changed. It currently only triggers poll which may not be the most convenient to monitor especially when there are a lot to monitor. Let's hook it up to fsnotify too so that the events can be monitored via inotify too. fsnotify_modify() requires file * but kernfs_notify() doesn't have any specific file associated; however, we can walk all super_blocks associated with a kernfs_root and as kernfs always associate one ino with inode and one dentry with an inode, it's trivial to look up the dentry associated with a given kernfs_node. As any active monitor would pin dentry, just looking up existing dentry is enough. This patch looks up the dentry associated with the specified kernfs_node and generates events equivalent to fsnotify_modify(). Note that as fsnotify doesn't provide fsnotify_modify() equivalent which can be called with dentry, kernfs_notify() directly calls fsnotify_parent() and fsnotify(). It might be better to add a wrapper in fsnotify.h instead. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Cc: John McCutchan &lt;john@johnmccutchan.com&gt; Cc: Robert Love &lt;rlove@rlove.org&gt; Cc: Eric Paris &lt;eparis@parisplace.org&gt; Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit d911d98748018f7c8facc035ba39c30f5cce6f9c) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I7cf16d93a9bdadc8e6740978bf31e2d035314e90 Reviewed-on: https://chromium-review.googlesource.com/359746 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359746" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/46/359746/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I9b767ce4bdee7a9977f020d4fd8975574ff90e58" commit="61fe881a258b43e9da930a6de8a79fdc4541cc76" commit_message="UPSTREAM: kernfs: fix a subdir count leak Currently kernfs_link_sibling() increates parent-&gt;dir.subdirs before adding the node into parent's chidren rb tree. Because it is possible that kernfs_link_sibling() couldn't find a suitable slot and bail out, this leads to a mismatch between elevated subdir count with actual children node numbers. This patches fix this problem, by moving the subdir accouting after the actual addtion happening. Signed-off-by: Jianyu Zhan &lt;nasa4836@gmail.com&gt; Acked-by: Tejun Heo &lt;tj@kernel.org&gt; Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit c1befb885939cdaaf420c10bbe9ff57aa00446ea) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I9b767ce4bdee7a9977f020d4fd8975574ff90e58 Reviewed-on: https://chromium-review.googlesource.com/359747 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359747" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/47/359747/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="Icbbe5cc9a591a0a2e9434e45fc88628376301f38" commit="c90a66373bb98e39ba922ad3e682bde60c53746a" commit_message="UPSTREAM: kernfs: add back missing error check in kernfs_fop_mmap() While updating how mmap enabled kernfs files are handled by lockdep, 9b2db6e18945 (&quot;sysfs: bail early from kernfs_file_mmap() to avoid spurious lockdep warning&quot;) inadvertently dropped error return check from kernfs_file_mmap(). The intention was just dropping &quot;if (ops-&gt;mmap)&quot; check as the control won't reach the point if the mmap callback isn't implemented, but I mistakenly removed the error return check together with it. This led to Xorg crash on i810 which was reported and bisected to the commit and then to the specific change by Tobias. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Reported-and-bisected-by: Tobias Powalowski &lt;tobias.powalowski@googlemail.com&gt; Tested-by: Tobias Powalowski &lt;tobias.powalowski@googlemail.com&gt; References: http://lkml.kernel.org/g/533D01BD.1010200@googlemail.com Cc: stable &lt;stable@vger.kernel.org&gt; # 3.14 Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit b44b2140265ddfde03acbe809336111d31adb0d1) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: Icbbe5cc9a591a0a2e9434e45fc88628376301f38 Reviewed-on: https://chromium-review.googlesource.com/359748 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359748" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/48/359748/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I87bc935fa320e2456b33b669cb45fdcc9897ee52" commit="8fdcd6bd22d7699ced642d50e5f34cb077da535a" commit_message="UPSTREAM: cgroup: newly created dirs and files should be owned by the creator While converting cgroup to kernfs, 2bd59d48ebfb (&quot;cgroup: convert to kernfs&quot;) accidentally dropped the logic which makes newly created cgroup dirs and files owned by the current uid / gid. This broke cases where cgroup subtree management is delegated to !root as the sub manager wouldn't be able to create more than single level of hierarchy or put tasks into child cgroups it created. Among other things, this breaks user session management in systemd and one of the symptoms was 90s hang during shutdown. User session systemd running as the user creates a sub-service to initiate shutdown and tries to put kill(1) into it but fails because cgroup.procs is owned by root. This leads to 90s hang during shutdown. Implement cgroup_kn_set_ugid() which sets a kn's uid and gid to those of the caller and use it from file and dir creation paths. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Reported-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 49957f8e2a43035a97d05bddefa394492a969c0d) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I87bc935fa320e2456b33b669cb45fdcc9897ee52 Reviewed-on: https://chromium-review.googlesource.com/359749 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359749" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/49/359749/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I1ef11b8849a92d75f05bc383024ba610c411290f" commit="c07ec566b2860416fcaf8e5ba400b8aaae7cfbdb" commit_message="UPSTREAM: cgroup: fix the retry path of cgroup_mount() If we hit the retry path, we'll call parse_cgroupfs_options() again, but the string we pass to it has been modified by the previous call to this function. This bug can be observed by: # mount -t cgroup -o name=foo,cpuset xxx /mnt &amp;&amp; umount /mnt &amp;&amp; \ mount -t cgroup -o name=foo,cpuset xxx /mnt mount: wrong fs type, bad option, bad superblock on xxx, missing codepage or helper program, or other error ... The second mount passed &quot;name=foo,cpuset&quot; to the parser, and then it hit the retry path and call the parser again, but this time the string passed to the parser is &quot;name=foo&quot;. To fix this, we avoid calling parse_cgroupfs_options() again in this case. Signed-off-by: Li Zefan &lt;lizefan@huawei.com&gt; Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit e37a06f10994c2ba86f54d8f96734f2483a869b8) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I1ef11b8849a92d75f05bc383024ba610c411290f Reviewed-on: https://chromium-review.googlesource.com/359750 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359750" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/50/359750/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="Ie88aa6ba14d8ff012ea6444033fa296c5b89a8b8" commit="9f321030de866c178733f4aa0a8c48918c8911e1" commit_message="UPSTREAM: cgroup: cgroup_apply_cftypes() shouldn't skip the default hierarhcy cgroup_apply_cftypes() skip creating or removing files if the subsystem is attached to the default hierarchy, which led to missing files in the root of the default hierarchy. Skipping made sense when the default hierarchy was dummy; however, now that the default hierarchy is full functional and planned to be used as the unified hierarchy, it shouldn't be skipped over. Reported-by: Li Zefan &lt;lizefan@huawei.com&gt; Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit ea8fd3b47ff4ed4b1b5942bf3e0cb8d8f590ec59) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: Ie88aa6ba14d8ff012ea6444033fa296c5b89a8b8 Reviewed-on: https://chromium-review.googlesource.com/359751 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359751" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/51/359751/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I8cfeb9092225320d8860602099bb31c70f46b001" commit="4ed213fcdad1951bc041d984e01bb1873410a9c7" commit_message="UPSTREAM: cgroup: update cgroup-&gt;subsys_mask to -&gt;child_subsys_mask and restore cgroup_root-&gt;subsys_mask 944196278d3d (&quot;cgroup: move -&gt;subsys_mask from cgroupfs_root to cgroup&quot;) moved -&gt;subsys_mask from cgroup_root to cgroup to prepare for the unified hierarhcy; however, it turns out that carrying the subsys_mask of the children in the parent, instead of itself, is a lot more natural. This patch restores cgroup_root-&gt;subsys_mask and morphs cgroup-&gt;subsys_mask into cgroup-&gt;child_subsys_mask. * Uses of root-&gt;cgrp.subsys_mask are restored to root-&gt;subsys_mask. * Remove automatic setting and clearing of cgrp-&gt;subsys_mask and instead just inherit -&gt;child_subsys_mask from the parent during cgroup creation. Note that this doesn't affect any current behaviors. * Undo __kill_css() separation. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit f392e51cd6ae6f6ee5b9b6d611cdc282b4c1711e) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I8cfeb9092225320d8860602099bb31c70f46b001 Reviewed-on: https://chromium-review.googlesource.com/359752 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359752" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/52/359752/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I1b548d6d644f1b9a2db5daa984618fafcb0193b7" commit="0d8f10b6eddeec2aa82d7e321519f5113569eff0" commit_message="UPSTREAM: cgroup: introduce effective cgroup_subsys_state In the planned default unified hierarchy, controllers may get dynamically attached to and detached from a cgroup and a cgroup may not have csses for all the controllers associated with the hierarchy. When a cgroup doesn't have its own css for a given controller, the css of the nearest ancestor with the controller enabled will be used, which is called the effective css. This patch introduces cgroup_e_css() and for_each_e_css() to access the effective csses and convert compare_css_sets(), find_existing_css_set() and cgroup_migrate() to use the effective csses so that they can handle cgroups with partial csses correctly. This means that for two css_sets to be considered identical, they should have both matching csses and cgroups. compare_css_sets() already compares both, not for correctness but for optimization. As this now becomes a matter of correctness, update the comments accordingly. For all !default hierarchies, cgroup_e_css() always equals cgroup_css(), so this patch doesn't change behavior. While at it, fix incorrect locking comment for for_each_css(). Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit aec3dfcb2e43892180ee053e8c260dcdeccf4392) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I1b548d6d644f1b9a2db5daa984618fafcb0193b7 Reviewed-on: https://chromium-review.googlesource.com/359753 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359753" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/53/359753/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I7c98396cbda74a81065e8b822c56114f39a85168" commit="d856bd3ccc54be68fdb7bc102f8b70f8627b67cd" commit_message="UPSTREAM: cgroup: implement cgroup-&gt;e_csets[] On the default unified hierarchy, a cgroup may be associated with csses of its ancestors, which means that a css of a given cgroup may be associated with css_sets of descendant cgroups. This means that we can't walk all tasks associated with a css by iterating the css_sets associated with the cgroup as there are css_sets which are pointing to the css but linked on the descendants. This patch adds per-subsystem list heads cgroup-&gt;e_csets[]. Any css_set which is pointing to a css is linked to css-&gt;cgroup-&gt;e_csets[$SUBSYS_ID] through css_set-&gt;e_cset_node[$SUBSYS_ID]. The lists are protected by css_set_rwsem and will allow us to walk all css_sets associated with a given css so that we can find out all associated tasks. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 2d8f243a5e6efa57fb7c46fe83fafa45b33d0ec2) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I7c98396cbda74a81065e8b822c56114f39a85168 Reviewed-on: https://chromium-review.googlesource.com/359754 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359754" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/54/359754/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I89f64e7826a102d056bbfc893a193c42b2c9099b" commit="1dc4e6801169529493a312c5975fc7c87aea8162" commit_message="UPSTREAM: cgroup: make css_next_child() skip missing csses css_next_child() walks the children of the specified css. It does this by finding the next cgroup and then returning the requested css. On the default unified hierarchy, a cgroup may not have a css associated with it even if the hierarchy has the subsystem enabled. This patch updates css_next_child() so that it skips children without the requested css associated. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 3b281afbc3a06cd69c54e6db1a04a8e73997723f) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I89f64e7826a102d056bbfc893a193c42b2c9099b Reviewed-on: https://chromium-review.googlesource.com/359755 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359755" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/55/359755/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I3ac29c797098d6a5592341ffd97dd2e45d98a364" commit="ac56cbee931d1e00bc3aa9bff2024d0f88979db5" commit_message="UPSTREAM: cgroup: reorganize css_task_iter This patch reorganizes css_task_iter so that adding effective css support is easier. * s/-&gt;cset_link/-&gt;cset_pos/ and s/-&gt;task/-&gt;task_pos/ for consistency * -&gt;origin_css is used to determine whether the iteration reached the last css_set. Replace it with explicit -&gt;cset_head so that css_advance_task_iter() doesn't have to know the termination condition directly. * css_task_iter_next() currently assumes that it's walking list of cgrp_cset_link and reaches into the current cset through the current link to determine the termination conditions for task walking. As this won't always be true for effective css walking, add -&gt;tasks_head and -&gt;mg_tasks_head and use them to control task walking so that css_task_iter_next() doesn't have to know how css_sets are being walked. This patch doesn't make any behavior changes. The iteration logic stays unchanged after the patch. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 0f0a2b4fa6210147131082999f1f16d7fb79abf8) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I3ac29c797098d6a5592341ffd97dd2e45d98a364 Reviewed-on: https://chromium-review.googlesource.com/359756 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359756" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/56/359756/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I637394f843477fde8e7fe1fdd75d7d53da3496cc" commit="5448ef56c0954ba5d1a672e1a7f3c302c252bf48" commit_message="UPSTREAM: cgroup: teach css_task_iter about effective csses Currently, css_task_iter iterates tasks associated with a css by visiting each css_set associated with the owning cgroup and walking tasks of each of them. This works fine for !unified hierarchies as each cgroup has its own css for each associated subsystem on the hierarchy; however, on the planned unified hierarchy, a cgroup may not have csses associated and its tasks would be considered associated with the matching css of the nearest ancestor which has the subsystem enabled. This means that on the default unified hierarchy, just walking all tasks associated with a cgroup isn't enough to walk all tasks which are associated with the specified css. If any of its children doesn't have the matching css enabled, task iteration should also include all tasks from the subtree. We already added cgroup-&gt;e_csets[] to list all css_sets effectively associated with a given css and walk css_sets on that list instead to achieve such iteration. This patch updates css_task_iter iteration such that it walks css_sets on cgroup-&gt;e_csets[] instead of cgroup-&gt;cset_links if iteration is requested on an non-dummy css. Thanks to the previous iteration update, this change can be achieved with the addition of css_task_iter-&gt;ss and minimal updates to css_advance_task_iter() and css_task_iter_start(). Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 3ebb2b6ef38875b866ec0118bfae7bc52afd0166) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I637394f843477fde8e7fe1fdd75d7d53da3496cc Reviewed-on: https://chromium-review.googlesource.com/359757 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359757" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/57/359757/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I0e512bb8b35187031dc673d1f5e0de8af3b037a3" commit="571101da9502755b5590b74211ac43c31d874a82" commit_message="UPSTREAM: cgroup: cgroup-&gt;subsys[] should be cleared after the css is offlined After a css finishes offlining, offline_css() mistakenly performs RCU_INIT_POINTER(css-&gt;cgroup-&gt;subsys[ss-&gt;id], css) which just sets the cgroup-&gt;subsys[] pointer to the current value. The intention was to clear it after offline is complete, not reassign the same value. Update it to assign NULL instead of the current value. This makes cgroup_css() to return NULL once offline is complete. All the existing users of the function either can handle NULL return already or guarantee that the css doesn't get offlined. While this is a bugfix, as css lifetime is currently tied to the cgroup it belongs to, this bug doesn't cause any actual problems. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit e32978031016f56be977a9a856ba4d9f447db51f) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I0e512bb8b35187031dc673d1f5e0de8af3b037a3 Reviewed-on: https://chromium-review.googlesource.com/359758 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359758" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/58/359758/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="Ie48518caaa2539e3fe92cb375395f3788e73b445" commit="853adb1857dd9ce9a6e1e12a54fe7333a8551270" commit_message="UPSTREAM: cgroup: allow cgroup creation and suppress automatic css creation in the unified hierarchy Now that effective css handling has been added and iterators updated accordingly, it's safe to allow cgroup creation in the default hierarchy. Unblock cgroup creation in the default hierarchy. As the default hierarchy will implement explicit enabling and disabling of controllers on each cgroup, suppress automatic css enabling on cgroup creation. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit bd53d617b34c781dac8e22dbc75e8f182d918ecf) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: Ie48518caaa2539e3fe92cb375395f3788e73b445 Reviewed-on: https://chromium-review.googlesource.com/359759 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359759" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/59/359759/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I53adec7868a3f48f3cea63d680e18c4d67f053e4" commit="a74e1f79923d87a0ecf780f4dad3cdf376bbaf26" commit_message="UPSTREAM: cgroup: add css_set-&gt;dfl_cgrp To implement the unified hierarchy behavior, we'll need to be able to determine the associated cgroup on the default hierarchy from css_set. Let's add css_set-&gt;dfl_cgrp so that it can be accessed conveniently and efficiently. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 6803c006282768ec850760766a6e4eb1a6ff87df) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I53adec7868a3f48f3cea63d680e18c4d67f053e4 Reviewed-on: https://chromium-review.googlesource.com/359760 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359760" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/60/359760/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="Ic93b85ecc7d34e19fc6a1fdf77e9bb2e0abb264b" commit="a6f43afb7a3fc6a4ff373699c087a5e578574505" commit_message="UPSTREAM: cgroup: update subsystem rebind restrictions Because the default root couldn't have any non-root csses attached to it, rebinding away from it was always allowed; however, the default hierarchy will soon host the unified hierarchy and have non-root csses so the rebind restrictions need to be updated accordingly. Instead of special casing rebinding from the default hierarchy and then checking whether the source hierarchy has children cgroups, which implies non-root csses for !dfl hierarchies, simply check whether the source hierarchy has non-root csses for the subsystem using css_next_child(). Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 7fd8c565d8a501486d63d7ee07fd6582e97db437) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: Ic93b85ecc7d34e19fc6a1fdf77e9bb2e0abb264b Reviewed-on: https://chromium-review.googlesource.com/359761 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359761" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/61/359761/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="Id82e289406d2db95651eab9367f9a6e689c7e88a" commit="6e9bcb7c06512ec236fb7b31dd51adaec6951e07" commit_message="UPSTREAM: cgroup: prepare migration path for unified hierarchy Unified hierarchy implementation would require re-migrating tasks onto the same cgroup on the default hierarchy to reflect updated effective csses. Update cgroup_migrate_prepare_dst() so that it accepts NULL as the destination cgrp. When NULL is specified, the destination is considered to be the cgroup on the default hierarchy associated with each css_set. After this change, the identity check in cgroup_migrate_add_src() isn't sufficient for noop detection as the associated csses may change without any cgroup association changing. The only way to tell whether a migration is noop or not is testing whether the source and destination csets are identical. The noop check in cgroup_migrate_add_src() is removed and cset identity test is added to cgroup_migreate_prepare_dst(). If it's detected that source and destination csets are identical, the cset is removed removed from @preloaded_csets and all the migration nodes are cleared which makes cgroup_migrate() ignore the cset. Also, make the function append the destination css_sets to @preloaded_list so that destination css_sets always come after source css_sets. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit f817de98513d060023be4fa1d061b29a6515273e) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: Id82e289406d2db95651eab9367f9a6e689c7e88a Reviewed-on: https://chromium-review.googlesource.com/359762 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359762" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/62/359762/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="I9c8448782430f0de63c13cbb41eb5ba0b08f7c05" commit="4ab57a3afaa0110b0d18a638d686ca0e6d0b2b46" commit_message="UPSTREAM: cgroup: implement dynamic subtree controller enable/disable on the default hierarchy cgroup is switching away from multiple hierarchies and will use one unified default hierarchy where controllers can be dynamically enabled and disabled per subtree. The default hierarchy will serve as the unified hierarchy to which all controllers are attached and a css on the default hierarchy would need to also serve the tasks of descendant cgroups which don't have the controller enabled - ie. the tree may be collapsed from leaf towards root when viewed from specific controllers. This has been implemented through effective css in the previous patches. This patch finally implements dynamic subtree controller enable/disable on the default hierarchy via a new knob - &quot;cgroup.subtree_control&quot; which controls which controllers are enabled on the child cgroups. Let's assume a hierarchy like the following. root - A - B - C \ D root's &quot;cgroup.subtree_control&quot; determines which controllers are enabled on A. A's on B. B's on C and D. This coincides with the fact that controllers on the immediate sub-level are used to distribute the resources of the parent. In fact, it's natural to assume that resource control knobs of a child belong to its parent. Enabling a controller in &quot;cgroup.subtree_control&quot; declares that distribution of the respective resources of the cgroup will be controlled. Note that this means that controller enable states are shared among siblings. The default hierarchy has an extra restriction - only cgroups which don't contain any task may have controllers enabled in &quot;cgroup.subtree_control&quot;. Combined with the other properties of the default hierarchy, this guarantees that, from the view point of controllers, tasks are only on the leaf cgroups. In other words, only leaf csses may contain tasks. This rules out situations where child cgroups compete against internal tasks of the parent, which is a competition between two different types of entities without any clear way to determine resource distribution between the two. Different controllers handle it differently and all the implemented behaviors are ambiguous, ad-hoc, cumbersome and/or just wrong. Having this structural constraints imposed from cgroup core removes the burden from controller implementations and enables showing one consistent behavior across all controllers. When a controller is enabled or disabled, css associations for the controller in the subtrees of each child should be updated. After enabling, the whole subtree of a child should point to the new css of the child. After disabling, the whole subtree of a child should point to the cgroup's css. This is implemented by first updating cgroup states such that cgroup_e_css() result points to the appropriate css and then invoking cgroup_update_dfl_csses() which migrates all tasks in the affected subtrees to the self cgroup on the default hierarchy. * When read, &quot;cgroup.subtree_control&quot; lists all the currently enabled controllers on the children of the cgroup. * White-space separated list of controller names prefixed with either '+' or '-' can be written to &quot;cgroup.subtree_control&quot;. The ones prefixed with '+' are enabled on the controller and '-' disabled. * A controller can be enabled iff the parent's &quot;cgroup.subtree_control&quot; enables it and disabled iff no child's &quot;cgroup.subtree_control&quot; has it enabled. * If a cgroup has tasks, no controller can be enabled via &quot;cgroup.subtree_control&quot;. Likewise, if &quot;cgroup.subtree_control&quot; has some controllers enabled, tasks can't be migrated into the cgroup. * All controllers which aren't bound on other hierarchies are automatically associated with the root cgroup of the default hierarchy. All the controllers which are bound to the default hierarchy are listed in the read-only file &quot;cgroup.controllers&quot; in the root directory. * &quot;cgroup.controllers&quot; in all non-root cgroups is read-only file whose content is equal to that of &quot;cgroup.subtree_control&quot; of the parent. This indicates which controllers can be used in the cgroup's &quot;cgroup.subtree_control&quot;. This is still experimental and there are some holes, one of which is that -&gt;can_attach() failure during cgroup_update_dfl_csses() may leave the cgroups in an undefined state. The issues will be addressed by future patches. v2: Non-root cgroups now also have &quot;cgroup.controllers&quot;. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit f8f22e53a262ebee37fc98004f16b066cf5bc125) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: I9c8448782430f0de63c13cbb41eb5ba0b08f7c05 Reviewed-on: https://chromium-review.googlesource.com/359763 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359763" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/63/359763/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="Ib51b3cd974b7938e4c6cf007f293796dd18ea672" commit="6e8b1d6650882baafe079ca227573fe5f76b6c47" commit_message="UPSTREAM: cgroup: implement cgroup.populated for the default hierarchy cgroup users often need a way to determine when a cgroup's subhierarchy becomes empty so that it can be cleaned up. cgroup currently provides release_agent for it; unfortunately, this mechanism is riddled with issues. * It delivers events by forking and execing a userland binary specified as the release_agent. This is a long deprecated method of notification delivery. It's extremely heavy, slow and cumbersome to integrate with larger infrastructure. * There is single monitoring point at the root. There's no way to delegate management of a subtree. * The event isn't recursive. It triggers when a cgroup doesn't have any tasks or child cgroups. Events for internal nodes trigger only after all children are removed. This again makes it impossible to delegate management of a subtree. * Events are filtered from the kernel side. &quot;notify_on_release&quot; file is used to subscribe to or suppress release event. This is unnecessarily complicated and probably done this way because event delivery itself was expensive. This patch implements interface file &quot;cgroup.populated&quot; which can be used to monitor whether the cgroup's subhierarchy has tasks in it or not. Its value is 0 if there is no task in the cgroup and its descendants; otherwise, 1, and kernfs_notify() notificaiton is triggers when the value changes, which can be monitored through poll and [di]notify. This is a lot ligther and simpler and trivially allows delegating management of subhierarchy - subhierarchy monitoring can block further propgation simply by putting itself or another process in the root of the subhierarchy and monitor events that it's interested in from there without interfering with monitoring higher in the tree. v2: Patch description updated as per Serge. v3: &quot;cgroup.subtree_populated&quot; renamed to &quot;cgroup.populated&quot;. The subtree_ prefix was a bit confusing because &quot;cgroup.subtree_control&quot; uses it to denote the tree rooted at the cgroup sans the cgroup itself while the populated state includes the cgroup itself. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Acked-by: Serge Hallyn &lt;serge.hallyn@ubuntu.com&gt; Acked-by: Li Zefan &lt;lizefan@huawei.com&gt; Cc: Lennart Poettering &lt;lennart@poettering.net&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 842b597ee0a7e1aa5a3148164ffdba00ec17f614) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: Ib51b3cd974b7938e4c6cf007f293796dd18ea672 Reviewed-on: https://chromium-review.googlesource.com/359764 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359764" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/64/359764/1" remote="cros" total_fail_count="0"/><pending_commit branch="chromeos-3.14" change_id="Ie80f7df91b5a113d518514b596d3aeefdc211f9d" commit="8b1597730b0fdcd381894793a6d2244fe18b45ff" commit_message="UPSTREAM: cgroup: add documentation about unified hierarchy Unified hierarchy will be the new version of cgroup interface. This patch adds Documentation/cgroups/unified-hierarchy.txt which describes the design and rationales of unified hierarchy. v2: Grammatical updates as per Randy Dunlap's review. Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt; Cc: Randy Dunlap &lt;rdunlap@infradead.org&gt; BUG=b:29259708 TEST=Built and booted Minnie (cherry picked from commit 657315780005a676d294c7edf7548650c7e57f76) Signed-off-by: Dmitry Torokhov &lt;dtor@chromium.org&gt; Change-Id: Ie80f7df91b5a113d518514b596d3aeefdc211f9d Reviewed-on: https://chromium-review.googlesource.com/359765 Reviewed-by: Dylan Reid &lt;dgreid@chromium.org&gt; " fail_count="0" gerrit_number="359765" owner_email="dtor@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/kernel" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/kernel" ref="refs/changes/65/359765/1" remote="cros" total_fail_count="0"/><pending_commit branch="master" change_id="Idf1484c2767f4fe0ac860360985c02b9bd635023" commit="3dfbe7e77ac5a0ca20411ca0da7c5333a9367ec2" commit_message="power_IdleSuspend: guarantee OOBE completed before suspend. power manager ignores idle action if OOBE is not completed. To guarantee that, control file now runs login_LoginSuccess prior to executing power_IdleSuspend. BUG=chromium:627363 TEST=test_that $dut power_IdleSuspend No longer raises exception 'timed out waiting for suspend' No longer see this log message in powerd log '[state_controller.cc(857)] Not performing idle action without OOBE completed' Change-Id: Idf1484c2767f4fe0ac860360985c02b9bd635023 Reviewed-on: https://chromium-review.googlesource.com/359614 Commit-Ready: Todd Broch &lt;tbroch@chromium.org&gt; Tested-by: Todd Broch &lt;tbroch@chromium.org&gt; Reviewed-by: Dan Erat &lt;derat@chromium.org&gt; " fail_count="2" gerrit_number="359614" owner_email="tbroch@chromium.org" pass_count="0" patch_number="2" project="chromiumos/third_party/autotest" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/autotest" ref="refs/changes/14/359614/2" remote="cros" total_fail_count="2"/><pending_commit branch="master" change_id="I7dd0bd5a7c8e196dd7dce5a0682aadf452a17ed8" commit="89fc798d515ab73341f3eca72ed79bf04c15f565" commit_message="power_IdleSuspend: Allow suspend-to-idle. Devices that support suspend-to-idle will echo 'freeze' to /sys/power/state instead of 'mem'. Make change to support either string. Also fixed some pylint docstring failures. BUG=chromium:627363 TEST=test_that $dut power_IdleSuspend on device that supports suspend-to-idle (AKA 'freeze') passes. Change-Id: I7dd0bd5a7c8e196dd7dce5a0682aadf452a17ed8 Reviewed-on: https://chromium-review.googlesource.com/359615 Commit-Ready: Todd Broch &lt;tbroch@chromium.org&gt; Tested-by: Todd Broch &lt;tbroch@chromium.org&gt; Reviewed-by: Dan Erat &lt;derat@chromium.org&gt; " fail_count="2" gerrit_number="359615" owner_email="tbroch@chromium.org" pass_count="0" patch_number="2" project="chromiumos/third_party/autotest" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/autotest" ref="refs/changes/15/359615/2" remote="cros" total_fail_count="2"/><pending_commit branch="master" change_id="Icee997b63a3046bbc88cf7713a0702645405a4a5" commit="49ab1de058a85be21f120c0facc18a8d285828bb" commit_message="Cave: Add bluetooth device ID DeviceID = bluetooth:00E0:2452:0400 BUG=chrome-os-partner:54624 BRANCH=TOT TEST=Verified ID Modalias: bluetooth:v00E0p2452d0400 Change-Id: Icee997b63a3046bbc88cf7713a0702645405a4a5 Signed-off-by: Zhuo-hao Lee &lt;zhuo-hao.lee@intel.com&gt; Reviewed-on: https://chromium-review.googlesource.com/354790 Reviewed-by: Yue-Herng Lin &lt;yueherngl@chromium.org&gt; Reviewed-by: Bernie Thompson &lt;bhthompson@chromium.org&gt; Reviewed-by: Agnes Cheng &lt;agnescheng@google.com&gt; " fail_count="0" gerrit_number="354790" owner_email="zhuo-hao.lee@intel.com" pass_count="0" patch_number="2" project="chromiumos/overlays/board-overlays" project_url="https://chromium-review.googlesource.com/chromiumos/overlays/board-overlays" ref="refs/changes/90/354790/2" remote="cros" total_fail_count="0"/><pending_commit branch="master" change_id="I4eeb1847ce6a32a6fc9c74a8e7a64dc015885aa9" commit="f0225870568ccdc5d113576f812a8363e1d52d17" commit_message="brillo: Add unittests to presubmit testing. BUG=30097817 TEST=none Change-Id: I4eeb1847ce6a32a6fc9c74a8e7a64dc015885aa9 Reviewed-on: https://chromium-review.googlesource.com/360136 Commit-Ready: Ralph Nathan &lt;ralphnathan@chromium.org&gt; Tested-by: Ralph Nathan &lt;ralphnathan@chromium.org&gt; Reviewed-by: Dan Shi &lt;dshi@google.com&gt; " fail_count="1" gerrit_number="360136" owner_email="ralphnathan@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/autotest" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/autotest" ref="refs/changes/36/360136/1" remote="cros" total_fail_count="1"/><pending_commit branch="master" change_id="I6bbc1e89cdc46f43ad0d3c010fbd4d80a12724ce" commit="fb732c7de5c11fe4f8518a43b75af82998f32737" commit_message="make.defaults: add tpm USE flag for chromeos target Most Chrome OS devices have a TPM, and the overlays for devices that don't already explicitly set -tpm. BUG=none TEST=emerge-butterfly --info, see tpm in USE flags Change-Id: I6bbc1e89cdc46f43ad0d3c010fbd4d80a12724ce Reviewed-on: https://chromium-review.googlesource.com/358925 Commit-Ready: Stephen Barber &lt;smbarber@chromium.org&gt; Tested-by: Stephen Barber &lt;smbarber@chromium.org&gt; Reviewed-by: Darren Krahn &lt;dkrahn@chromium.org&gt; Reviewed-by: Andrey Pronin &lt;apronin@chromium.org&gt; " fail_count="0" gerrit_number="358925" owner_email="smbarber@chromium.org" pass_count="0" patch_number="1" project="chromiumos/overlays/chromiumos-overlay" project_url="https://chromium-review.googlesource.com/chromiumos/overlays/chromiumos-overlay" ref="refs/changes/25/358925/1" remote="cros" total_fail_count="0"/><pending_commit branch="master" change_id="I9b1cf75c8983ebafd107d41fe5ddee11d16f03de" commit="93e44627095090da7f2a0e42aefa85ba762166de" commit_message="chromeos-fonts: Pre-cache fonts Building the chromeos-fonts package is slow, taking as long as 7 minutes to build on ARM boards. This is because we run fc-cache under qemu at install time and it takes an obscenely long time for fc-cache to process the notocjk fonts. For generic linux distributions, the font cache needs to be generated at install time because there is no way to know what fonts are installed on the system or in the user's directory. We don't have this problem on chrome os since we control exactly which fonts are installed in the rootfs and users don't have the ability to install additional fonts. We can take advantage of this to generate the font cache once on a builder and then distribute the cache files as part of a pre-built package so that each developer doesn't need to manually generate the exact same font cache on their machine. This CL makes the changes necessary to make this happen: - The actual font files are now build time dependencies rather than runtime dependencies since the font cache will be generated at build time. - fc-cache runs during the compile phase of the ebuild. The two issues with this are that it uses sudo to chroot into the board's ROOT and that it references ROOT during the compile phase at all. Both are considered bad by gentoo but they might be ok in this case since chromeos-fonts is such a specialized package and we get such a significant speedup from doing it. - The entire contents of ROOT/usr/share/cache/fontconfig are blown away during the package pre-install step. This is to prevent file collisions during install and stale files being left over from old versions. Overall this change speeds up build_image for ARM devices by 4 to 7 minutes. BUG=chromium:205424 TEST='emerge-kevin chromeos-fonts', 'emerge-samus chromeos-fonts', and 'emerge chromeos-fonts' all complete successfully Change-Id: I9b1cf75c8983ebafd107d41fe5ddee11d16f03de Signed-off-by: Chirantan Ekbote &lt;chirantan@chromium.org&gt; Reviewed-on: https://chromium-review.googlesource.com/359624 Reviewed-by: David James &lt;davidjames@chromium.org&gt; " fail_count="1" gerrit_number="359624" owner_email="chirantan@chromium.org" pass_count="0" patch_number="4" project="chromiumos/overlays/chromiumos-overlay" project_url="https://chromium-review.googlesource.com/chromiumos/overlays/chromiumos-overlay" ref="refs/changes/24/359624/4" remote="cros" total_fail_count="1"/><pending_commit branch="master" change_id="I5a732d4cdd0f764d8bae086ef23b2690522a038e" commit="bd5b08254583592b55a8db76cb9973e4c0ac67eb" commit_message="kevin: enable virtual battery Enable using the virtual battery on Kevin. BUG=chrome-os-partner:53322 BRANCH=none TEST=Verify 'power_supply_info' still works. Change-Id: I5a732d4cdd0f764d8bae086ef23b2690522a038e Reviewed-on: https://chromium-review.googlesource.com/360186 Commit-Ready: Mary Ruthven &lt;mruthven@chromium.org&gt; Tested-by: Mary Ruthven &lt;mruthven@chromium.org&gt; Reviewed-by: Aseda Aboagye &lt;aaboagye@chromium.org&gt; " fail_count="0" gerrit_number="360186" owner_email="mruthven@chromium.org" pass_count="0" patch_number="1" project="chromiumos/platform/ec" project_url="https://chromium-review.googlesource.com/chromiumos/platform/ec" ref="refs/changes/86/360186/1" remote="cros" total_fail_count="0"/><pending_commit branch="master" change_id="I05619fe39912ee9b77b3c28c9f225b9912d2b5e5" commit="b78363431f9e0dec75c35cc2bc9deef76ca556cf" commit_message="Update Roboto to 2.132 and 4 more weights Update Roboto built for CrOS from the upstream source with a pending upstream CL applied ( https://github.com/google/roboto/pull/187). What's new: - 4 more weights (Thin, Light, Medium, Black) now that Chrome can support all those weights. This matches what's available on Android weight-wise. Width-wise, we're only including normal width for now (i.e. Condensed is not included). - A lot of bug fixes in outlines, GSUB/GPOS/GDEF (shaping, kerning, etc) - Vertical metrics in OS/2 table were changed to match the upstream and Android values (2146, +-555). However, hhea vertical metrics were not changed. FreeType uses hhea metrics to determine the 'normal line-height' so that there should not be a change in the UI. Roboto bundled as reosources will be removed. See https://codereview.chromium.org/2043883004/ for that. BUG=chromium:617281 TEST=No change in the UI layout with line-height: normal in CSS. Change-Id: I05619fe39912ee9b77b3c28c9f225b9912d2b5e5 Reviewed-on: https://chromium-review.googlesource.com/349730 Commit-Ready: Jungshik Shin &lt;jshin@chromium.org&gt; Tested-by: Jungshik Shin &lt;jshin@chromium.org&gt; Reviewed-by: Dan Erat &lt;derat@chromium.org&gt; " fail_count="1" gerrit_number="349730" owner_email="jshin@chromium.org" pass_count="0" patch_number="3" project="chromiumos/overlays/chromiumos-overlay" project_url="https://chromium-review.googlesource.com/chromiumos/overlays/chromiumos-overlay" ref="refs/changes/30/349730/3" remote="cros" total_fail_count="1"/><pending_commit branch="master" change_id="I8c4e7fdb2694543320760f33e233d1dcc2ac6813" commit="08d1f9c9cd3d2fb1197d9898e5ac78e180fff116" commit_message="Fix flakiness in the CFM stress test. Adding a poll for whether hotrod app is ready for hangout session before proceeding with trying to start a session. BUG=None TEST=Locally Change-Id: I8c4e7fdb2694543320760f33e233d1dcc2ac6813 Reviewed-on: https://chromium-review.googlesource.com/359983 Commit-Ready: Harpreet Grewal &lt;harpreet@chromium.org&gt; Tested-by: Harpreet Grewal &lt;harpreet@chromium.org&gt; Reviewed-by: Rohit Makasana &lt;rohitbm@chromium.org&gt; " fail_count="1" gerrit_number="359983" owner_email="harpreet@chromium.org" pass_count="0" patch_number="1" project="chromiumos/third_party/autotest" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/autotest" ref="refs/changes/83/359983/1" remote="cros" total_fail_count="1"/><pending_commit branch="master" change_id="I2dc645d3dd632b8f11618bdf5ef66ffde8254308" commit="2da12561597b5e5b9454c9769fc5ddd2c831bbad" commit_message="Publish a cloud notification when a job directory is uploaded. BUG=chromium:623239 TEST=Unittest and manual test. Change-Id: I2dc645d3dd632b8f11618bdf5ef66ffde8254308 Reviewed-on: https://chromium-review.googlesource.com/358552 Commit-Ready: Michael Tang &lt;ntang@chromium.org&gt; Tested-by: Michael Tang &lt;ntang@chromium.org&gt; Reviewed-by: Simran Basi &lt;sbasi@chromium.org&gt; Reviewed-by: Michael Tang &lt;ntang@chromium.org&gt; " fail_count="1" gerrit_number="358552" owner_email="ntang@chromium.org" pass_count="0" patch_number="3" project="chromiumos/third_party/autotest" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/autotest" ref="refs/changes/52/358552/3" remote="cros" total_fail_count="1"/><pending_commit branch="master" change_id="I9c975dc451fba19536804b853fcb25fd00b8f716" commit="1cce886f19e7a0e9e5eeaf654ff037e1796aef1f" commit_message="[autotest] Improved atest attribute matching. Commas in values no longer need to be escaped. Multiple attributes are now passed by repeating the argument ie: -i foo=bar -i baz=zip,bang BUG=chromium:627284 TEST=Added unit test. Change-Id: I9c975dc451fba19536804b853fcb25fd00b8f716 Reviewed-on: https://chromium-review.googlesource.com/359953 Commit-Ready: Justin Giorgi &lt;jgiorgi@google.com&gt; Tested-by: Justin Giorgi &lt;jgiorgi@google.com&gt; Reviewed-by: Simran Basi &lt;sbasi@chromium.org&gt; " fail_count="1" gerrit_number="359953" owner_email="jgiorgi@google.com" pass_count="0" patch_number="3" project="chromiumos/third_party/autotest" project_url="https://chromium-review.googlesource.com/chromiumos/third_party/autotest" ref="refs/changes/53/359953/3" remote="cros" total_fail_count="1"/><pending_commit branch="master" change_id="I6cc3c018deadeb6fc7d39b5484ea44dbb8da2eb6" commit="e6e25e8a8f0615ac3a2feea7a8f5fca2e4e40c13" commit_message="net-print/cups: add 'lp' user/group back to ebuild The lp user/group aren't very useful to us, but the group is used as the means for cupsd to get permissions over USB printers. I previously dropped 'lp' from our custom ebuild, but I don't see a good reason to continue to do this. This user/group also happens to get setup in the chromeos-base ebuild, so we didn't notice that we still needed this. BUG=chromium:616866 TEST=build Change-Id: I6cc3c018deadeb6fc7d39b5484ea44dbb8da2eb6 Signed-off-by: Brian Norris &lt;briannorris@chromium.org&gt; Reviewed-on: https://chromium-review.googlesource.com/353154 " fail_count="2" gerrit_number="353154" owner_email="briannorris@chromium.org" pass_count="0" patch_number="4" project="chromiumos/overlays/chromiumos-overlay" project_url="https://chromium-review.googlesource.com/chromiumos/overlays/chromiumos-overlay" ref="refs/changes/54/353154/4" remote="cros" total_fail_count="3"/><lkgm version="8582.0.0-rc2"/></manifest>