From 845501066398271ee8011354b7ba727f832c521c Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Tue, 20 May 2014 23:10:45 +0000 Subject: [PATCH 01/23] Restore some config to increae cache hit since the nature of packages is static given the particular version number, it is safe to ignore packages cache header and use a larger expiration time. also enable access_log for monitoring the requests and hit rate so as to tune the cache control configurations later based on that knowledge. Change-Id: I8403ecca663ecc84facce7a215efebb553d225fc --- misc/squid/squid.conf | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/misc/squid/squid.conf b/misc/squid/squid.conf index 018da203..8bff0e31 100644 --- a/misc/squid/squid.conf +++ b/misc/squid/squid.conf @@ -53,13 +53,14 @@ cache_dir aufs /var/squid/cache 25000 16 256 cache_store_log /var/log/squid/store.log -access_log none +access_log /var/log/squid/access.log # Leave coredumps in the first cache dir coredump_dir /var/spool/squid +reload_into_ims on # Add any of your own refresh_pattern entries above these. -refresh_pattern . 86400 50% 518400 +refresh_pattern . 86400 50% 518400 override-expire override-lastmod quick_abort_min -1 QB read_ahead_gap 100 MB From ecc00f3ef9b9cfa239da3c16a9480fbbc0d2ba07 Mon Sep 17 00:00:00 2001 From: xiaodongwang Date: Thu, 22 May 2014 10:22:32 -0700 Subject: [PATCH 02/23] fix some installation bug, add regtest for ubuntu Change-Id: Icd71ce1d82778c365cb8f44abc9645b24603453f --- install/compass.sh | 23 ++++++++++++++++------- regtest/regtest.conf | 2 ++ regtest/regtest.sh | 2 +- regtest/regtest6.conf | 11 +++++++++++ regtest/regtest7.conf | 12 ++++++++++++ 5 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 regtest/regtest6.conf create mode 100644 regtest/regtest7.conf diff --git a/install/compass.sh b/install/compass.sh index 69a11369..ee0d1956 100755 --- a/install/compass.sh +++ b/install/compass.sh @@ -73,6 +73,22 @@ else echo "roles are added to chef server" fi +sudo mkdir -p /var/log/redis +sudo chown -R redis:root /var/log/redis +sudo mkdir -p /var/lib/redis/ +sudo chown -R redis:root /var/lib/redis +sudo mkdir -p /var/run/redis +sudo chown -R redis:root /var/run/redis +sudo service redis restart +echo "Checking if redis is running" +sudo service redis status +if [[ "$?" == "0" ]]; then + echo "redis is running" +else + echo "redis is not running" + exit 1 +fi + sudo /opt/compass/bin/refresh.sh if [[ "$?" != "0" ]]; then echo "failed to refresh compassd service" @@ -89,13 +105,6 @@ else echo "httpd has already started" fi -mkdir -p /var/log/redis -chown -R redis:root /var/log/redis -mkdir -p /var/lib/redis/ -chown -R redis:root /var/lib/redis -mkdir -p /var/run/redis -chown -R redis:root /var/run/redis - sudo service redis status if [[ "$?" != "0" ]]; then echo "redis is not started" diff --git a/regtest/regtest.conf b/regtest/regtest.conf index 032b6aeb..6f466c64 100644 --- a/regtest/regtest.conf +++ b/regtest/regtest.conf @@ -9,6 +9,8 @@ export SWITCH_COMMUNITY=${SWITCH_COMMUNITY:-'public'} export SWITCH_CREDENTIAL=${SWITCH_CREDENTIAL:-"version=${SWITCH_VERSION},community=${SWITCH_COMMUNITY}"} export USE_POLL_SWITCHES=${USE_POLL_SWITCHES:-true} +export ADAPTER_OS_NAME_PATTERN=${ADAPTER_OS_NAME_PATTERN:-'(?i)centos.*'} +export ADAPTER_TARGET_SYSTEM_NAME=${ADAPTER_TARGET_SYSTEM_NAME:-'openstack'} export HOST_ROLES=${HOST_ROLES:-''} export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $ipaddr |cut -d. -f'1 2 3'`.50} diff --git a/regtest/regtest.sh b/regtest/regtest.sh index 3bf59558..c0d332ca 100755 --- a/regtest/regtest.sh +++ b/regtest/regtest.sh @@ -164,7 +164,7 @@ else POLL_SWITCHES_FLAG="poll_switches" fi -${CLIENT_SCRIPT} --logfile= --loglevel=info --logdir= --networking="${NETWORKING}" --partitions="${PARTITION}" --credentials="${SECURITY}" --host_roles="${host_roles_list}" --dashboard_role="${DASHBOARD_ROLE}" --switch_ips="${SWITCH_IPS}" --machines="${machines}" --switch_credential="${SWITCH_CREDENTIAL}" --deployment_timeout="${DEPLOYMENT_TIMEOUT}" --${POLL_SWITCHES_FLAG} +${CLIENT_SCRIPT} --logfile= --loglevel=info --logdir= --adapter_os_name="${ADAPTER_OS_NAME_PATTERN}" --adapter_target_system="${ADAPTER_TARGET_SYSTEM_NAME}" --networking="${NETWORKING}" --partitions="${PARTITION}" --credentials="${SECURITY}" --host_roles="${host_roles_list}" --dashboard_role="${DASHBOARD_ROLE}" --switch_ips="${SWITCH_IPS}" --machines="${machines}" --switch_credential="${SWITCH_CREDENTIAL}" --deployment_timeout="${DEPLOYMENT_TIMEOUT}" --${POLL_SWITCHES_FLAG} rc=$? # Tear down machines after the test if [[ $rc != 0 ]]; then diff --git a/regtest/regtest6.conf b/regtest/regtest6.conf new file mode 100644 index 00000000..199e444b --- /dev/null +++ b/regtest/regtest6.conf @@ -0,0 +1,11 @@ +# Set test script variables +export VIRT_NUM=${VIRT_NUM:-'1'} +export VIRT_CPUS=${VIRT_CPUS:-'10'} +export VIRT_MEM=${VIRT_MEM:-'8192'} +export VIRT_DISK=${VIRT_DISK:-'30G'} +export ADAPTER_OS_NAME_PATTERN=${ADAPTER_OS_NAME_PATTERN:-'(?i)ubuntu.*'} +export ADAPTER_TARGET_SYSTEM_NAME=${ADAPTER_TARGET_SYSTEM_NAME:-'openstack'} +export HOST_ROLES=${HOST_ROLES:-''} + +REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source ${REGTEST_DIR}/regtest.conf diff --git a/regtest/regtest7.conf b/regtest/regtest7.conf new file mode 100644 index 00000000..2315625f --- /dev/null +++ b/regtest/regtest7.conf @@ -0,0 +1,12 @@ +# Set test script variables +export VIRT_NUM=${VIRT_NUM:-'7'} +export VIRT_CPUS=${VIRT_CPUS:-'4'} +export VIRT_MEM=${VIRT_MEM:-'6144'} +export VIRT_DISK=${VIRT_DISK:-'30G'} +export ADAPTER_OS_NAME_PATTERN=${ADAPTER_OS_NAME_PATTERN:-'(?i)ubuntu.*'} +export ADAPTER_TARGET_SYSTEM_NAME=${ADAPTER_TARGET_SYSTEM_NAME:-'openstack'} +export HOST_ROLES=${HOST_ROLES:-'os-controller,os-image;os-ops-database,os-ops-messaging;os-network,os-block-storage-worker;os-ha;os-ha'} +export HA_VIP=${HA_VIP:-`echo $ipaddr |cut -d. -f'1 2 3'`.253} + +REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source ${REGTEST_DIR}/regtest.conf From 09d4e6eec14607e66532cec47e0dd8ada209dd5d Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Wed, 4 Jun 2014 22:11:00 +0000 Subject: [PATCH 03/23] change pxe boot machine disk file from tmp to home pxe files will fill up tmp folder, so change disk files to home folder, where it is mounted on dedicated partition. Change-Id: Ief9a21b5fb56fc36e3e9bb0631126b1509316144 --- misc/ci/pxe-prepare.sh | 4 ++-- regtest/regtest.sh | 14 +++++++------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/misc/ci/pxe-prepare.sh b/misc/ci/pxe-prepare.sh index 08f5eb36..7e51b514 100755 --- a/misc/ci/pxe-prepare.sh +++ b/misc/ci/pxe-prepare.sh @@ -1,9 +1,9 @@ #!/bin/bash -x if [[ ! -e /tmp/pxe01.raw ]]; then - qemu-img create -f raw /tmp/pxe01.raw 20G + qemu-img create -f raw /home/pxe01.raw 20G else rm -rf /tmp/pxe01.raw - qemu-img create -f raw /tmp/pxe01.raw 20G + qemu-img create -f raw /home/pxe01.raw 20G fi virsh list |grep pxe01 vmrc=$? diff --git a/regtest/regtest.sh b/regtest/regtest.sh index c0d332ca..db99ab5c 100755 --- a/regtest/regtest.sh +++ b/regtest/regtest.sh @@ -50,19 +50,19 @@ tear_down_machines echo "setup $VIRT_NUM virt machines" for i in `seq $VIRT_NUM`; do - if [[ ! -e /tmp/pxe${i}.raw ]]; then + if [[ ! -e /home/pxe${i}.raw ]]; then echo "create image for instance pxe$i" - qemu-img create -f raw /tmp/pxe${i}.raw ${VIRT_DISK} + qemu-img create -f raw /home/pxe${i}.raw ${VIRT_DISK} if [[ "$?" != "0" ]]; then - echo "create image /tmp/pxe${i}.raw failed" + echo "create image /home/pxe${i}.raw failed" exit 1 fi else echo "recreate image for instance pxe$i" - rm -rf /tmp/pxe${i}.raw - qemu-img create -f raw /tmp/pxe${i}.raw ${VIRT_DISK} + rm -rf /home/pxe${i}.raw + qemu-img create -f raw /home/pxe${i}.raw ${VIRT_DISK} if [[ "$?" != "0" ]]; then - echo "create image /tmp/pxe${i}.raw failed" + echo "create image /home/pxe${i}.raw failed" exit 1 fi fi @@ -74,7 +74,7 @@ for i in `seq $VIRT_NUM`; do --network=bridge:installation \ --network=bridge:installation \ --name pxe${i} --ram=${VIRT_MEM} \ - --disk /tmp/pxe${i}.raw,format=raw \ + --disk /home/pxe${i}.raw,format=raw \ --vcpus=${VIRT_CPUS} \ --graphics vnc,listen=0.0.0.0 \ --noautoconsole \ From 076fc03f7d32c99b9e91cbd958baad17ecf7aa8f Mon Sep 17 00:00:00 2001 From: xiaodongwang Date: Thu, 22 May 2014 14:01:02 -0700 Subject: [PATCH 04/23] change ubuntu image version to 14.04 Change-Id: I3fcd37470199264284d61a947cb38828ff2ac4f3 --- compass/actions/health_check/check_celery.py | 6 +- .../health_check/check_package_installer.py | 96 +++++++++---------- compass/actions/health_check/setting.py | 11 --- compass/actions/poll_switch.py | 7 +- install/chef.sh | 1 + install/cobbler.sh | 37 +++++++ install/dependency.sh | 22 +++-- install/install.conf | 4 +- install/install.conf.template | 4 +- install/prepare.sh | 24 ++++- requirements.txt | 1 + 11 files changed, 129 insertions(+), 84 deletions(-) diff --git a/compass/actions/health_check/check_celery.py b/compass/actions/health_check/check_celery.py index 255028a5..5e8ef318 100644 --- a/compass/actions/health_check/check_celery.py +++ b/compass/actions/health_check/check_celery.py @@ -94,11 +94,7 @@ class CeleryCheck(base.BaseCheck): try: insp = inspect() celery_stats = inspect.stats(insp) - if not celery_stats: - self._set_status( - 0, - "[%s]Error: No running Celery workers were found." - % self.NAME) + print celery_stats, except IOError as error: self._set_status( 0, diff --git a/compass/actions/health_check/check_package_installer.py b/compass/actions/health_check/check_package_installer.py index dd47e1e6..e4d6e546 100644 --- a/compass/actions/health_check/check_package_installer.py +++ b/compass/actions/health_check/check_package_installer.py @@ -16,6 +16,7 @@ import os import requests +import subprocess from compass.actions.health_check import base from compass.actions.health_check import setting as health_check_setting @@ -34,37 +35,13 @@ class PackageInstallerCheck(base.BaseCheck): def chef_check(self): """Checks chef setting, cookbooks, databags and roles.""" - chef_data_map = { - 'CookBook': health_check_setting.COOKBOOKS, - 'DataBag': health_check_setting.DATABAGS, - 'Role': health_check_setting.ROLES, - } + for data_type in ['Cookbook', 'Role', 'Databag']: + self.check_chef_data(data_type) + if self.code != 1: + return (self.code, self.messages) - total_missing = [] - for data_type in chef_data_map.keys(): - total_missing.append(self.check_chef_data(data_type, - chef_data_map[data_type])) print "[Done]" - missing = False - for item in total_missing: - if item[1] != []: - missing = True - break - - if missing is True: - messages = [] - for item in total_missing: - messages.append("[%s]:%s" - % (item[0], - ', '.join(missed for missed in item[1]))) - self._set_status( - 0, - "[%s]Error: Missing modules on chef server: " - "%s." % ( - self.NAME, - ' ;'.join(message for message in messages))) - self.check_chef_config_dir() print "[Done]" if self.code == 1: @@ -75,7 +52,7 @@ class PackageInstallerCheck(base.BaseCheck): return (self.code, self.messages) - def check_chef_data(self, data_type, github_url): + def check_chef_data(self, data_type): """Checks if chef cookbooks/roles/databags are correct. :param data_type : chef data type @@ -92,37 +69,52 @@ class PackageInstallerCheck(base.BaseCheck): self._set_status( 0, "[%s]Error: pychef is not installed." % self.NAME) - - return self.get_status() + return api = chef.autoconfigure() - - github = set([ - item['name'] - for item in requests.get(github_url).json() - ]) if data_type == 'CookBook': - local = set(os.listdir('/var/chef/cookbooks')) + local = set([ + name for name in os.listdir('/var/chef/cookbooks') + if name + ]) + try: + server = set(api['/cookbooks'].keys()) + except Exception: + self._set_status( + 0, + "[%s]Error: pychef fails to get cookbooks" % self.NAME) + return elif data_type == 'Role': local = set([ - name for name, item in chef.Role.list(api=api).iteritems() - ]) - github = set([ - item['name'].replace(".rb", "") - for item in requests.get(github_url).json() + name[:-3] for name in os.listdir('/var/chef/roles') + if name.endswith('.rb') ]) + try: + server = set(api['/roles'].keys()) + except Exception: + self._set_status( + 0, + "[%s]Error: pychef fails to get roles" % self.NAME) + return else: local = set([ - item for item in eval( - 'chef.' + data_type + '.list(api=api)' - ) + name for name in os.listdir('/var/chef/databags') + if name ]) - diff = github - local + try: + server = set(api['/data'].keys()) + except Exception: + self._set_status( + 0, + "[%s]Error: pychef fails to get databags" % self.NAME) + return - if len(diff) <= 0: - return (data_type, []) - else: - return (data_type, list(diff)) + diff = server - local + + if len(diff) > 0: + self._set_status( + 0, + "[%s]Error: %s diff: %s" % (self.NAME, diff)) def check_chef_config_dir(self): """Validates chef configuration directories.""" @@ -131,9 +123,9 @@ class PackageInstallerCheck(base.BaseCheck): message = health_check_utils.check_path(self.NAME, '/etc/chef-server/') if not message == "": self._set_status(0, message) + return message = health_check_utils.check_path(self.NAME, '/opt/chef-server/') if not message == "": self._set_status(0, message) - - return None + return diff --git a/compass/actions/health_check/setting.py b/compass/actions/health_check/setting.py index 16be3ce2..f3af93ab 100644 --- a/compass/actions/health_check/setting.py +++ b/compass/actions/health_check/setting.py @@ -13,14 +13,3 @@ # limitations under the License. """Health Check Settings.""" - -# Chef data on github -COOKBOOKS = ( - "https://api.github.com/repos/stackforge" - "/compass-adapters/contents/chef/cookbooks") -ROLES = ( - "https://api.github.com/repos/stackforge" - "/compass-adapters/contents/chef/roles") -DATABAGS = ( - "https://api.github.com/repos/stackforge" - "/compass-adapters/contents/chef/databags") diff --git a/compass/actions/poll_switch.py b/compass/actions/poll_switch.py index ccc69d86..a32f219f 100644 --- a/compass/actions/poll_switch.py +++ b/compass/actions/poll_switch.py @@ -112,11 +112,14 @@ def poll_switch(ip_addr, req_obj='mac', oper="SCAN"): continue machine = session.query(Machine).filter_by( - mac=mac, port=port, switch_id=switch_id).first() + mac=mac, switch_id=switch_id).first() if not machine: machine = Machine(mac=mac, port=port, vlan=vlan) + machine.switch_id = switch_id session.add(machine) - machine.switch = switch + else: + machine.port = port + machine.vlan = vlan logging.debug('update switch %s state to under monitoring', switch) if prev_state != under_monitoring: diff --git a/install/chef.sh b/install/chef.sh index 78bf5608..4921f2a4 100755 --- a/install/chef.sh +++ b/install/chef.sh @@ -12,6 +12,7 @@ else fi # configure chef-server +sudo rm -rf ~/chef-server-cleanse-* sudo chef-server-ctl cleanse mkdir -p /etc/chef-server sudo cp -rn /etc/chef-server/chef-server.rb /root/backup/chef/ diff --git a/install/cobbler.sh b/install/cobbler.sh index 80aae1f1..2d4bf36c 100755 --- a/install/cobbler.sh +++ b/install/cobbler.sh @@ -179,6 +179,43 @@ else exit 1 fi + +systems=$(sudo cobbler system list) +for system in $systems; do + echo "remove system $system" + sudo cobbler system remove --name=$system + if [[ "$?" != "0" ]]; then + echo "failed to remove system $system" + fi +done + +profiles=$(sudo cobbler profile list) +for profile in $profiles; do + echo "remove profile $profile" + sudo cobbler profile remove --name=$profile + if [[ "$?" != "0" ]]; then + echo "failed to remove profile $profile" + fi +done + +distros=$(sudo cobbler distro list) +for distro in $distros; do + echo "remove distro $distro" + sudo cobbler distro remove --name=$distro + if [[ "$?" != "0" ]]; then + echo "failed to remove distro $distro" + fi +done + +repos=$(sudo cobbler repo list) +for repo in $repos; do + echo "remove repo $repo" + sudo cobbler repo remove --name=$repo + if [[ "$?" != "0" ]]; then + echo "failed to remove repo $repo" + fi +done + # create centos repo sudo mkdir -p /var/lib/cobbler/repo_mirror/centos_ppa_repo found_centos_ppa_repo=0 diff --git a/install/dependency.sh b/install/dependency.sh index f5c8f67c..e05504b5 100755 --- a/install/dependency.sh +++ b/install/dependency.sh @@ -2,7 +2,7 @@ echo 'Installing Required packages for Compass...' sudo yum clean all -sudo yum update -y --skip-broken +sudo yum update -y if [ "$tempest" == "true" ]; then sudo yum install -y virt-install libvirt qemu-kvm libxml2-devel libffi-devel libxslt-devel python-devel sshpass openssl-devel if [[ "$?" != "0" ]]; then @@ -10,7 +10,7 @@ if [ "$tempest" == "true" ]; then exit 1 fi fi -sudo yum install -y rsyslog logrotate ntp iproute openssh-clients python python-devel git wget python-setuptools syslinux python-netaddr python-flask python-flask-sqlalchemy python-amqplib python-argparse amqp python-paramiko python-mock mod_wsgi httpd squid dhcp bind rsync yum-utils xinetd tftp-server gcc net-snmp-utils net-snmp net-snmp-python python-daemon unzip openssl openssl098e ca-certificates redis python-redis --skip-broken +sudo yum install -y rsyslog logrotate ntp iproute openssh-clients python python-devel git wget python-setuptools syslinux python-netaddr python-flask python-flask-sqlalchemy python-amqplib python-argparse amqp python-paramiko python-mock mod_wsgi httpd squid dhcp bind rsync yum-utils xinetd tftp-server gcc net-snmp-utils net-snmp net-snmp-python python-daemon unzip openssl openssl098e ca-certificates redis python-redis python-importlib if [[ "$?" != "0" ]]; then echo "failed to install yum dependency" exit 1 @@ -35,13 +35,19 @@ fi # pip install flask-sqlalchemy need to remove /usr/lib64/python2.6/site-packages/easy-install.pth cp -n /usr/lib/python2.6/site-packages/easy-install* /usr/lib64/python2.6/site-packages/ -if [ "$tempest" == "true" ]; then - sudo pip install -U setuptools - if [[ "$?" != "0" ]]; then - echo "failed to install setuptools" - exit 1 - fi +sudo pip install -U setuptools +if [[ "$?" != "0" ]]; then + echo "failed to install setuptools" + exit 1 fi + +# TODO: (fixme). setuptools should be installed twice. One is to uninstall distribute, the other is to upgrade setuptools. + sudo pip install -U setuptools +if [[ "$?" != "0" ]]; then + echo "failed to install setuptools" + exit 1 +fi + sudo pip install -U -r $COMPASSDIR/requirements.txt if [[ "$?" != "0" ]]; then echo "failed to install compass requirement packages" diff --git a/install/install.conf b/install/install.conf index 5024af41..9249578d 100755 --- a/install/install.conf +++ b/install/install.conf @@ -47,13 +47,13 @@ export CENTOS_IMAGE_ARCH=${CENTOS_IMAGE_ARCH:-"x86_64"} export CENTOS_IMAGE_SOURCE=${CENTOS_IMAGE_SOURCE:-"http://mirror.rackspace.com/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION_MAJOR}/isos/${CENTOS_IMAGE_ARCH}/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}-minimal.iso"} export UBUNTU_IMAGE_TYPE=${UBUNTU_IMAGE_TYPE:-"Ubuntu"} -export UBUNTU_IMAGE_VERSION_MAJOR=${UBUNTU_IMAGE_VERSION_MAJOR:-"13"} +export UBUNTU_IMAGE_VERSION_MAJOR=${UBUNTU_IMAGE_VERSION_MAJOR:-"12"} export UBUNTU_IMAGE_VERSION_MINOR=${UBUNTU_IMAGE_VERSION_MINOR:-"04"} export UBUNTU_IMAGE_VERSION=${UBUNTU_IMAGE_VERSION:-"${UBUNTU_IMAGE_VERSION_MAJOR}.${UBUNTU_IMAGE_VERSION_MINOR}"} export UBUNTU_IMAGE_NAME=${UBUNTU_IMAGE_NAME:-"${UBUNTU_IMAGE_TYPE}-${UBUNTU_IMAGE_VERSION}"} export UBUNTU_IMAGE_ARCH=${UBUNTU_IMAGE_ARCH:-"x86_64"} export UBUNTU_IMAGE_ARCH_OTHER=${UBUNTU_IMAGE_ARCH_OTHER:-"amd64"} -export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-${UBUNTU_IMAGE_VERSION}-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} +export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-12.04.4-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} export COBBLER_PASSWORD=${COBBLER_PASSWORD:-"cobbler"} diff --git a/install/install.conf.template b/install/install.conf.template index 8e80b9f5..792f4054 100755 --- a/install/install.conf.template +++ b/install/install.conf.template @@ -53,13 +53,13 @@ export CENTOS_IMAGE_ARCH=${CENTOS_IMAGE_ARCH:-"x86_64"} export CENTOS_IMAGE_SOURCE=${CENTOS_IMAGE_SOURCE:-"http://mirror.rackspace.com/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION_MAJOR}/isos/${CENTOS_IMAGE_ARCH}/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}-minimal.iso"} export UBUNTU_IMAGE_TYPE=${UBUNTU_IMAGE_TYPE:-"Ubuntu"} -export UBUNTU_IMAGE_VERSION_MAJOR=${UBUNTU_IMAGE_VERSION_MAJOR:-"13"} +export UBUNTU_IMAGE_VERSION_MAJOR=${UBUNTU_IMAGE_VERSION_MAJOR:-"12"} export UBUNTU_IMAGE_VERSION_MINOR=${UBUNTU_IMAGE_VERSION_MINOR:-"04"} export UBUNTU_IMAGE_VERSION=${UBUNTU_IMAGE_VERSION:-"${UBUNTU_IMAGE_VERSION_MAJOR}.${UBUNTU_IMAGE_VERSION_MINOR}"} export UBUNTU_IMAGE_NAME=${UBUNTU_IMAGE_NAME:-"${UBUNTU_IMAGE_TYPE}-${UBUNTU_IMAGE_VERSION}"} export UBUNTU_IMAGE_ARCH=${UBUNTU_IMAGE_ARCH:-"x86_64"} export UBUNTU_IMAGE_ARCH_OTHER=${UBUNTU_IMAGE_ARCH_OTHER:-"amd64"} -export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-${UBUNTU_IMAGE_VERSION}-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} +export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-12.04.4-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} export COBBLER_PASSWORD=${COBBLER_PASSWORD:-"cobbler"} diff --git a/install/prepare.sh b/install/prepare.sh index dd413082..5db3ae44 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -24,6 +24,12 @@ copy2dir() cd $destdir git remote set-url origin $repo git remote update + if [ $? -ne 0 ]; then + echo "failed to git remote update $repo in $destdir" + exit 1 + else + echo "git remote update $repo in $destdir succeeded" + fi git reset --hard git clean -x -f git checkout $git_branch @@ -146,13 +152,13 @@ if [ -z $WEB_SOURCE ]; then echo "web source $WEB_SOURCE is not set" exit 1 fi -copy2dir "$WEB_SOURCE" "$WEB_HOME" "stackforge/compass-web" +copy2dir "$WEB_SOURCE" "$WEB_HOME" "stackforge/compass-web" || exit $? if [ -z $ADAPTERS_SOURCE ]; then echo "adpaters source $ADAPTERS_SOURCE is not set" exit 1 fi -copy2dir "$ADAPTERS_SOURCE" "$ADAPTERS_HOME" "stackforge/compass-adapters" +copy2dir "$ADAPTERS_SOURCE" "$ADAPTERS_HOME" "stackforge/compass-adapters" || exit $? if [ "$tempest" == "true" ]; then if [[ ! -e /tmp/tempest ]]; then @@ -160,6 +166,8 @@ if [ "$tempest" == "true" ]; then if [[ "$?" != "0" ]]; then echo "failed to git clone tempest project" exit 1 + else + echo "git clone tempest project succeeded" fi cd /tmp/tempest git checkout grizzly-eol @@ -167,12 +175,24 @@ if [ "$tempest" == "true" ]; then cd /tmp/tempest git remote set-url origin http://git.openstack.org/openstack/tempest git remote update + if [[ "$?" != "0" ]]; then + echo "failed to git remote update tempest project" + exit 1 + else + echo "git remote update tempest project succeeded" + fi git reset --hard git clean -x -f -d -q git checkout grizzly-eol fi cd /tmp/tempest pip install -e . + if [[ "$?" != "0" ]]; then + echo "failed to install tempest project" + exit 1 + else + echo "install tempest project succeeded" + fi fi download() diff --git a/requirements.txt b/requirements.txt index 9f64dfde..01fdc649 100644 --- a/requirements.txt +++ b/requirements.txt @@ -12,3 +12,4 @@ PyChef redis flask-wtf itsdangerous +importlib From 020fa6b54ae86a8b36dda35f1a679446178e04a8 Mon Sep 17 00:00:00 2001 From: Xicheng Chang Date: Fri, 6 Jun 2014 22:06:42 +0000 Subject: [PATCH 05/23] Add Compass Appliance module to hd_discovery Change-Id: If6b579b2cdf0cb733f7ea39c830bc8df5c0da543 --- compass/hdsdiscovery/hdmanager.py | 4 ++ .../vendors/appliance/__init__.py | 13 ++++++ .../vendors/appliance/appliance.py | 34 ++++++++++++++ .../vendors/appliance/plugins/__init__.py | 0 .../vendors/appliance/plugins/mac.py | 45 +++++++++++++++++++ .../tests/hdsdiscovery/test_hdsdiscovery.py | 5 ++- 6 files changed, 99 insertions(+), 2 deletions(-) create mode 100644 compass/hdsdiscovery/vendors/appliance/__init__.py create mode 100644 compass/hdsdiscovery/vendors/appliance/appliance.py create mode 100644 compass/hdsdiscovery/vendors/appliance/plugins/__init__.py create mode 100644 compass/hdsdiscovery/vendors/appliance/plugins/mac.py diff --git a/compass/hdsdiscovery/hdmanager.py b/compass/hdsdiscovery/hdmanager.py index 4980cda1..46b12969 100644 --- a/compass/hdsdiscovery/hdmanager.py +++ b/compass/hdsdiscovery/hdmanager.py @@ -98,6 +98,10 @@ class HDManager(object): :return a tuple (vendor, switch_state, error) """ + # Returen appliance plugin once we see 127.0.0.1 ass switch ip + if host == '127.0.0.1': + return ("appliance", "Found", "") + # TODO(grace): Why do we need to have valid IP? # a hostname should also work. if not utils.valid_ip_format(host): diff --git a/compass/hdsdiscovery/vendors/appliance/__init__.py b/compass/hdsdiscovery/vendors/appliance/__init__.py new file mode 100644 index 00000000..4ee55a4c --- /dev/null +++ b/compass/hdsdiscovery/vendors/appliance/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/hdsdiscovery/vendors/appliance/appliance.py b/compass/hdsdiscovery/vendors/appliance/appliance.py new file mode 100644 index 00000000..123fed02 --- /dev/null +++ b/compass/hdsdiscovery/vendors/appliance/appliance.py @@ -0,0 +1,34 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +"""Vendor: Compass Appliance""" +from compass.hdsdiscovery import base + + +#Vendor_loader will load vendor instance by CLASS_NAME +CLASS_NAME = 'Appliance' + + +class Appliance(base.BaseSnmpVendor): + """Fake SNMP object for compass appliance.""" + + def __init__(self): + base.BaseSnmpVendor.__init__(self, ['appliance']) + self.__name = 'appliance' + + @property + def name(self): + """Get 'name' proptery.""" + return self.__name diff --git a/compass/hdsdiscovery/vendors/appliance/plugins/__init__.py b/compass/hdsdiscovery/vendors/appliance/plugins/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/compass/hdsdiscovery/vendors/appliance/plugins/mac.py b/compass/hdsdiscovery/vendors/appliance/plugins/mac.py new file mode 100644 index 00000000..48069c3a --- /dev/null +++ b/compass/hdsdiscovery/vendors/appliance/plugins/mac.py @@ -0,0 +1,45 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Compass Appliance Mac module.""" +from compass.hdsdiscovery import base + +CLASS_NAME = "Mac" + + +class Mac(base.BaseSnmpMacPlugin): + """Processes MAC address.""" + + def __init__(self, host, credential): + return + + def scan(self): + """Implemnets the scan method in BasePlugin class. + + .. note:: + Dummy scan function for compass appliance. + Returns fixed mac addresses. + """ + mac_list = [ + { + 'port': 1, + 'mac': '00:01:02:03:04:05', + 'vlan': 0, + }, + { + 'port': 2, + 'mac': '06:07:08:09:0a:0b', + 'vlan': 0, + }] + return mac_list diff --git a/compass/tests/hdsdiscovery/test_hdsdiscovery.py b/compass/tests/hdsdiscovery/test_hdsdiscovery.py index e2208b42..f93745ac 100755 --- a/compass/tests/hdsdiscovery/test_hdsdiscovery.py +++ b/compass/tests/hdsdiscovery/test_hdsdiscovery.py @@ -139,7 +139,8 @@ class HDManagerTest(unittest2.TestCase): super(HDManagerTest, self).setUp() logsetting.init() self.manager = HDManager() - self.correct_host = '127.0.0.1' + self.correct_host = '33.33.33.1' + self.correct_host_2 = '127.0.0.1' self.correct_credential = {'version': '2c', 'community': 'public'} def tearDown(self): @@ -184,7 +185,7 @@ class HDManagerTest(unittest2.TestCase): sys_info = ['Huawei Versatile Routing Platform Software', 'ProCurve J9089A Switch 2610-48-PWR, revision R.11.25', 'Pica8 XorPlus Platform Software'] - expected_vendor_names = ['huawei', 'hp', 'pica8'] + expected_vendor_names = ['huawei', 'hp', 'pica8', 'appliance'] for info, expected_vendor in zip(sys_info, expected_vendor_names): sys_info_mock.return_value = (info, '') # the result is a tuple ($vendor, $state, $error_message) From 5c06975a18a9e3488f7bcac7f8ff6e83a65818a2 Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Thu, 12 Jun 2014 22:44:16 +0000 Subject: [PATCH 06/23] clean stale chef folder before installation if install compass over and over again on one server, stale cookbooks or roles would be left in /var/chef folder, so remove it each time we install new compass. also archive squid access_log in compass_logs for investigation for test failures. Change-Id: Idad99c4540e3b971c80361f57559edafbbf33aa8 --- install/chef.sh | 5 ++++- install/prepare.sh | 2 +- misc/ci/pxe-prepare.sh | 6 +++--- misc/ci/test-install.sh | 1 + regtest/regtest.sh | 3 +++ 5 files changed, 12 insertions(+), 5 deletions(-) diff --git a/install/chef.sh b/install/chef.sh index 4921f2a4..fbac7dd4 100755 --- a/install/chef.sh +++ b/install/chef.sh @@ -14,7 +14,7 @@ fi # configure chef-server sudo rm -rf ~/chef-server-cleanse-* sudo chef-server-ctl cleanse -mkdir -p /etc/chef-server +sudo mkdir -p /etc/chef-server sudo cp -rn /etc/chef-server/chef-server.rb /root/backup/chef/ sudo rm -f /etc/chef-server/chef-server.rb sudo cp -rf $COMPASSDIR/misc/chef-server/chef-server.rb /etc/chef-server/chef-server.rb @@ -26,6 +26,9 @@ if [[ "$?" != "0" ]]; then exit 1 fi +if [[ -e /var/chef ]]; then + sudo rm -rf /var/chef +fi sudo mkdir -p /var/chef/cookbooks/ sudo cp -r $ADAPTERS_HOME/chef/cookbooks/* /var/chef/cookbooks/ if [ $? -ne 0 ]; then diff --git a/install/prepare.sh b/install/prepare.sh index 5db3ae44..ef5d94d6 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -211,7 +211,7 @@ download() exit 1 else echo "successfully download $package" - cp -rf /tmp/${package}.tmp /tmp/${package} + mv -rf /tmp/${package}.tmp /tmp/${package} fi else cp -rf $url /tmp/${package} diff --git a/misc/ci/pxe-prepare.sh b/misc/ci/pxe-prepare.sh index 7e51b514..ee455f05 100755 --- a/misc/ci/pxe-prepare.sh +++ b/misc/ci/pxe-prepare.sh @@ -1,9 +1,9 @@ #!/bin/bash -x if [[ ! -e /tmp/pxe01.raw ]]; then - qemu-img create -f raw /home/pxe01.raw 20G + qemu-img create -f raw /home/pxe01.raw 30G else rm -rf /tmp/pxe01.raw - qemu-img create -f raw /home/pxe01.raw 20G + qemu-img create -f raw /home/pxe01.raw 30G fi virsh list |grep pxe01 vmrc=$? @@ -17,7 +17,7 @@ virt-install --accelerate --hvm --connect qemu:///system \ --network=bridge:installation,mac=00:11:20:30:40:01 --pxe \ --network=network:default \ --name pxe01 --ram=8192 \ - --disk /tmp/pxe01.raw,format=raw \ + --disk /home/pxe01.raw,format=raw \ --vcpus=10 \ --graphics vnc,listen=0.0.0.0 --noautoconsole \ --os-type=linux --os-variant=rhel6 diff --git a/misc/ci/test-install.sh b/misc/ci/test-install.sh index 143ab004..8dc400e6 100755 --- a/misc/ci/test-install.sh +++ b/misc/ci/test-install.sh @@ -13,6 +13,7 @@ else dhclient installation fi source compass-core/install/install.conf.template +set -e /bin/bash -x compass-core/install/install.sh echo "cache_peer 10.145.81.137 parent 3128 3130 default" >> /etc/squid/squid.conf service squid restart diff --git a/regtest/regtest.sh b/regtest/regtest.sh index db99ab5c..82cdc34e 100755 --- a/regtest/regtest.sh +++ b/regtest/regtest.sh @@ -136,6 +136,9 @@ fi if [[ ! -L compass_logs ]]; then ln -s /var/log/compass compass_logs fi +if [[ ! -e compass_logs/squid_access.log ]]; then + ln -s /var/log/squid/access.log compass_logs/squid_access.log +fi CLIENT_SCRIPT=/opt/compass/bin/client.py /opt/compass/bin/refresh.sh if [[ "$?" != "0" ]]; then From 34cdc0925c76bd83ae991c8714cabfbb08fa4ab7 Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Tue, 17 Jun 2014 01:52:43 +0000 Subject: [PATCH 07/23] fix some prepare script bugs Change-Id: I2e1d20d2b96d9440b28ff03638251b6b284aeed9 --- install/prepare.sh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/install/prepare.sh b/install/prepare.sh index ef5d94d6..580556fa 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -211,7 +211,7 @@ download() exit 1 else echo "successfully download $package" - mv -rf /tmp/${package}.tmp /tmp/${package} + mv -f /tmp/${package}.tmp /tmp/${package} fi else cp -rf $url /tmp/${package} @@ -285,16 +285,24 @@ download "$CENTOS_IMAGE_SOURCE" ${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso || download "$UBUNTU_IMAGE_SOURCE" ${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso || exit $? # Install net-snmp -sudo cp -rn /etc/snmp/snmp.conf /root/backup/ +if [[ ! -e /etc/snmp ]]; then + sudo mkdir -p /etc/snmp +fi +if [[ -e /etc/snmp/snmp.conf ]]; then + sudo cp -rn /etc/snmp/snmp.conf /root/backup/ + sudo rm -f /etc/snmp/snmp.conf +fi sudo mkdir -p /usr/local/share/snmp/ sudo cp -rf $COMPASSDIR/mibs /usr/local/share/snmp/ -sudo rm -f /etc/snmp/snmp.conf sudo cp -rf $COMPASSDIR/misc/snmp/snmp.conf /etc/snmp/snmp.conf sudo chmod 644 /etc/snmp/snmp.conf sudo mkdir -p /var/lib/net-snmp/mib_indexes sudo chmod 755 /var/lib/net-snmp/mib_indexes # generate ssh key +if [[ ! -e $HOME/.ssh ]]; then + sudo mkdir -p $HOME/.ssh +fi if [ ! -e $HOME/.ssh/id_rsa.pub ]; then rm -rf $HOME/.ssh/id_rsa ssh-keygen -t rsa -f $HOME/.ssh/id_rsa -q -N '' From 3b67570db1f9c1d4b33281b7d2bf3393585bf8ad Mon Sep 17 00:00:00 2001 From: xiaodongwang Date: Mon, 9 Jun 2014 15:02:36 -0700 Subject: [PATCH 08/23] update switch model. Change-Id: I032d06ec661b61ca79f1b6f987af0d026987b541 --- bin/manage_db.py | 5 --- bin/refresh.sh | 2 ++ compass/actions/poll_switch.py | 4 +-- .../installers/plugins/chefhandler.py | 2 +- compass/db/model.py | 26 +++++++------- conf/setting | 8 +++-- install/compass.sh | 17 +++++++-- install/dependency.sh | 13 +++++-- install/install.conf | 8 +++++ install/install.conf.template | 12 +++++-- install/install.sh | 2 ++ install/prepare.sh | 35 +++++++++++++++++++ 12 files changed, 104 insertions(+), 30 deletions(-) diff --git a/bin/manage_db.py b/bin/manage_db.py index dfcb870a..d25791f1 100755 --- a/bin/manage_db.py +++ b/bin/manage_db.py @@ -120,12 +120,7 @@ def checkdb(): @app_manager.command def createdb(): """Creates database from sqlalchemy models.""" - if setting.DATABASE_TYPE == 'file': - if os.path.exists(setting.DATABASE_FILE): - os.remove(setting.DATABASE_FILE) database.create_db() - if setting.DATABASE_TYPE == 'file': - os.chmod(setting.DATABASE_FILE, 0o777) @app_manager.command diff --git a/bin/refresh.sh b/bin/refresh.sh index 890fdd75..07a0a078 100755 --- a/bin/refresh.sh +++ b/bin/refresh.sh @@ -3,6 +3,7 @@ if [[ "$?" == "0" ]]; then /opt/compass/bin/manage_db.py clean_clusters fi +/opt/compass/bin/manage_db.py dropdb &> /dev/null /opt/compass/bin/manage_db.py createdb /opt/compass/bin/manage_db.py sync_switch_configs /opt/compass/bin/manage_db.py sync_from_installers @@ -10,5 +11,6 @@ service httpd restart service rsyslog restart service redis restart redis-cli flushall +service mysqld restart service compassd restart diff --git a/compass/actions/poll_switch.py b/compass/actions/poll_switch.py index a32f219f..1d66d121 100644 --- a/compass/actions/poll_switch.py +++ b/compass/actions/poll_switch.py @@ -114,8 +114,8 @@ def poll_switch(ip_addr, req_obj='mac', oper="SCAN"): machine = session.query(Machine).filter_by( mac=mac, switch_id=switch_id).first() if not machine: - machine = Machine(mac=mac, port=port, vlan=vlan) - machine.switch_id = switch_id + machine = Machine( + mac=mac, port=port, vlan=vlan, switch_id=switch_id) session.add(machine) else: machine.port = port diff --git a/compass/config_management/installers/plugins/chefhandler.py b/compass/config_management/installers/plugins/chefhandler.py index 487bc998..e1caf44f 100644 --- a/compass/config_management/installers/plugins/chefhandler.py +++ b/compass/config_management/installers/plugins/chefhandler.py @@ -226,7 +226,7 @@ class Installer(package_installer.Installer): else: node.run_list = [] - for _, roles in node['roles'].items(): + for _, roles in roles_per_target_system.items(): for role in roles: node.run_list.append('role[%s]' % role) diff --git a/compass/db/model.py b/compass/db/model.py index 11e48eaa..888cdf8d 100644 --- a/compass/db/model.py +++ b/compass/db/model.py @@ -46,7 +46,7 @@ class User(BASE, UserMixin): __tablename__ = 'user' id = Column(Integer, primary_key=True) email = Column(String(80), unique=True) - password = Column(String(225)) + password = Column(String(225), default='') active = Column(Boolean, default=True) def __init__(self, email, password, **kwargs): @@ -215,7 +215,7 @@ class Machine(BASE): switch_id = Column(Integer, ForeignKey('switch.id', onupdate='CASCADE', ondelete='SET NULL')) - __table_args__ = (UniqueConstraint('mac', 'vlan', 'switch_id', + __table_args__ = (UniqueConstraint('mac', 'switch_id', name='unique_machine'),) switch = relationship('Switch', backref=backref('machines', lazy='dynamic')) @@ -252,7 +252,7 @@ class HostState(BASE): state = Column(Enum('UNINITIALIZED', 'INSTALLING', 'READY', 'ERROR'), ColumnDefault('UNINITIALIZED')) progress = Column(Float, ColumnDefault(0.0)) - message = Column(String) + message = Column(Text) severity = Column(Enum('INFO', 'WARNING', 'ERROR'), ColumnDefault('INFO')) update_timestamp = Column(DateTime, default=datetime.now, onupdate=datetime.now) @@ -305,7 +305,7 @@ class ClusterState(BASE): state = Column(Enum('UNINITIALIZED', 'INSTALLING', 'READY', 'ERROR'), ColumnDefault('UNINITIALIZED')) progress = Column(Float, ColumnDefault(0.0)) - message = Column(String) + message = Column(Text) severity = Column(Enum('INFO', 'WARNING', 'ERROR'), ColumnDefault('INFO')) update_timestamp = Column(DateTime, default=datetime.now, onupdate=datetime.now) @@ -347,7 +347,7 @@ class Cluster(BASE): __tablename__ = 'cluster' id = Column(Integer, primary_key=True) - name = Column(String, unique=True) + name = Column(String(80), unique=True) mutable = Column(Boolean, default=True) security_config = Column(Text) networking_config = Column(Text) @@ -527,7 +527,7 @@ class ClusterHost(BASE): ondelete='SET NULL'), nullable=True) - hostname = Column(String) + hostname = Column(String(80)) config_data = Column(Text) mutable = Column(Boolean, default=True) __table_args__ = (UniqueConstraint('cluster_id', 'hostname', @@ -633,13 +633,13 @@ class LogProgressingHistory(BASE): """ __tablename__ = 'log_progressing_history' id = Column(Integer, primary_key=True) - pathname = Column(String, unique=True) + pathname = Column(String(80), unique=True) position = Column(Integer, ColumnDefault(0)) partial_line = Column(Text) progress = Column(Float, ColumnDefault(0.0)) message = Column(Text) severity = Column(Enum('ERROR', 'WARNING', 'INFO'), ColumnDefault('INFO')) - line_matcher_name = Column(String, ColumnDefault('start')) + line_matcher_name = Column(String(80), ColumnDefault('start')) update_timestamp = Column(DateTime, default=datetime.now, onupdate=datetime.now) @@ -671,9 +671,9 @@ class Adapter(BASE): """ __tablename__ = 'adapter' id = Column(Integer, primary_key=True) - name = Column(String, unique=True) - os = Column(String) - target_system = Column(String) + name = Column(String(80), unique=True) + os = Column(String(80)) + target_system = Column(String(80)) __table_args__ = ( UniqueConstraint('os', 'target_system', name='unique_adapter'),) @@ -699,8 +699,8 @@ class Role(BASE): """ __tablename__ = 'role' id = Column(Integer, primary_key=True) - name = Column(String, unique=True) - target_system = Column(String) + name = Column(String(80), unique=True) + target_system = Column(String(80)) description = Column(Text) def __init__(self, **kwargs): diff --git a/conf/setting b/conf/setting index bcbcaedb..ee5c10fc 100644 --- a/conf/setting +++ b/conf/setting @@ -5,9 +5,13 @@ HOST_CONFIG_PROVIDER = 'db' CONFIG_DIR = '/etc/compass' GLOBAL_CONFIG_FILENAME = 'global_config' CONFIG_FILE_FORMAT = 'python' -DATABASE_TYPE = 'file' +DATABASE_TYPE = 'mysql' DATABASE_FILE = '/opt/compass/db/app.db' -SQLALCHEMY_DATABASE_URI = 'sqlite:///' + DATABASE_FILE +DATABASE_USER = 'root' +DATABASE_PASSWORD = 'root' +DATABASE_SERVER = '127.0.0.1:3306' +DATABASE_NAME = 'db' +SQLALCHEMY_DATABASE_URI = 'mysql://%s:%s@%s/%s' % (DATABASE_USER, DATABASE_PASSWORD, DATABASE_SERVER, DATABASE_NAME) OS_INSTALLER = 'cobbler' COBBLER_INSTALLER_URL = 'http://localhost/cobbler_api' COBBLER_INSTALLER_TOKEN = ['cobbler', 'cobbler'] diff --git a/install/compass.sh b/install/compass.sh index ee0d1956..290920e5 100755 --- a/install/compass.sh +++ b/install/compass.sh @@ -12,6 +12,7 @@ sudo cp -rf $COMPASSDIR/misc/apache/compass.wsgi /var/www/compass/compass.wsgi sudo cp -rf $COMPASSDIR/conf/celeryconfig /etc/compass/ sudo cp -rf $COMPASSDIR/conf/global_config /etc/compass/ sudo cp -rf $COMPASSDIR/conf/setting /etc/compass/ + sudo cp -rf $COMPASSDIR/conf/compassd /etc/init.d/ sudo cp -rf $COMPASSDIR/bin/*.py /opt/compass/bin/ sudo cp -rf $COMPASSDIR/bin/*.sh /opt/compass/bin/ @@ -40,8 +41,14 @@ else echo "compass package is installed" fi -sudo sed -i "/COBBLER_INSTALLER_URL/c\COBBLER_INSTALLER_URL = 'http:\/\/$ipaddr/cobbler_api'" /etc/compass/setting -sudo sed -i "/CHEF_INSTALLER_URL/c\CHEF_INSTALLER_URL = 'https:\/\/$ipaddr/'" /etc/compass/setting +sudo sed -i "/^COBBLER_INSTALLER_URL/c\COBBLER_INSTALLER_URL = 'http:\/\/$ipaddr/cobbler_api'" /etc/compass/setting +sudo sed -i "/^CHEF_INSTALLER_URL/c\CHEF_INSTALLER_URL = 'https:\/\/$ipaddr/'" /etc/compass/setting +sudo sed -i "/^DATABASE_TYPE/c\DATABASE_TYPE = 'mysql'" /etc/compass/setting +sudo sed -i "/^DATABASE_USER/c\DATABASE_USER = '${MYSQL_USER}'" /etc/compass/setting +sudo sed -i "/^DATABASE_PASSWORD/c\DATABASE_PASSWORD = '${MYSQL_PASSWORD}'" /etc/compass/setting +sudo sed -i "/^DATABASE_SERVER/c\DATABASE_SERVER = '${MYSQL_SERVER}:${MYSQL_PORT}'" /etc/compass/setting +sudo sed -i "/^DATABASE_NAME/c\DATABASE_NAME = '${MYSQL_DATABASE}'" /etc/compass/setting +sudo sed -i "/^COBBLER_INSTALLER_TOKEN/c\COBBLER_INSTALLER_TOKEN = ['$CBLR_USER', '$CBLR_PASSWD']" /etc/compass/setting sudo sed -i "s/\$compass_ip/$ipaddr/g" /etc/compass/global_config sudo sed -i "s/\$compass_hostname/$HOSTNAME/g" /etc/compass/global_config sudo sed -i "s/\$compass_testmode/$TESTMODE/g" /etc/compass/global_config @@ -113,6 +120,12 @@ else echo "redis has already started" fi +sudo service mysqld status +if [[ "$?" != "0" ]]; then + echo "mysqld is not started" + exit 1 +fi + sudo service compassd status if [[ "$?" != "0" ]]; then echo "compassd is not started" diff --git a/install/dependency.sh b/install/dependency.sh index e05504b5..409f5d99 100755 --- a/install/dependency.sh +++ b/install/dependency.sh @@ -10,7 +10,7 @@ if [ "$tempest" == "true" ]; then exit 1 fi fi -sudo yum install -y rsyslog logrotate ntp iproute openssh-clients python python-devel git wget python-setuptools syslinux python-netaddr python-flask python-flask-sqlalchemy python-amqplib python-argparse amqp python-paramiko python-mock mod_wsgi httpd squid dhcp bind rsync yum-utils xinetd tftp-server gcc net-snmp-utils net-snmp net-snmp-python python-daemon unzip openssl openssl098e ca-certificates redis python-redis python-importlib +sudo yum install -y rsyslog logrotate ntp iproute openssh-clients python python-devel git wget python-setuptools syslinux python-netaddr python-flask python-flask-sqlalchemy python-amqplib python-argparse amqp python-paramiko python-mock mod_wsgi httpd squid dhcp bind rsync yum-utils xinetd tftp-server gcc net-snmp-utils net-snmp net-snmp-python python-daemon unzip openssl openssl098e ca-certificates redis python-redis python-importlib mysql mysql-server MySQL-python if [[ "$?" != "0" ]]; then echo "failed to install yum dependency" exit 1 @@ -42,12 +42,20 @@ if [[ "$?" != "0" ]]; then fi # TODO: (fixme). setuptools should be installed twice. One is to uninstall distribute, the other is to upgrade setuptools. - sudo pip install -U setuptools +sudo pip install -U setuptools if [[ "$?" != "0" ]]; then echo "failed to install setuptools" exit 1 fi +sudo pip install flask-mysql +if [[ "$?" != "0" ]]; then + echo "failed to install flask-mysql" + exit 1 +fi + + + sudo pip install -U -r $COMPASSDIR/requirements.txt if [[ "$?" != "0" ]]; then echo "failed to install compass requirement packages" @@ -69,5 +77,6 @@ sudo chkconfig sshd on sudo chkconfig rsyslog on sudo chkconfig ntpd on sudo chkconfig redis on +sudo chkconfig mysqld on sudo chkconfig iptables off sudo chkconfig ip6tables off diff --git a/install/install.conf b/install/install.conf index 9249578d..7f0d4f25 100755 --- a/install/install.conf +++ b/install/install.conf @@ -29,6 +29,14 @@ export NAMESERVER_DOMAINS=${NAMESERVER_DOMAINS:-} export CBLR_USER=${CBLR_USER:-} export CBLR_PASSWD=${CBLR_PASSWD:-} +# set the mysql user and password +export MYSQL_USER=${MYSQL_USER:-} +export MYSQL_OLD_PASSWORD=${MYSQL_OLD_PASSWORD:-} +export MYSQL_PASSWORD=${MYSQL_PASSWORD:-} +export MYSQL_SERVER=${MYSQL_SERVER:-} +export MYSQL_PORT=${MYSQL_PORT:-} +export MYSQL_DATABASE=${MYSQL_DATABASE:-} + export IMAGE_TYPE=${IMAGE_TYPE:-"CentOS"} export IMAGE_TYPE_OTHER=${IMAGE_TYPE_OTHER:-"el"} export IMAGE_VERSION_MAJOR=${IMAGE_VERSION_MAJOR:-"6"} diff --git a/install/install.conf.template b/install/install.conf.template index 792f4054..294a35ed 100755 --- a/install/install.conf.template +++ b/install/install.conf.template @@ -1,6 +1,6 @@ -##################################### -# Config File for Compass Installer # -##################################### +##################################################### +# Config File for Compass Installer Used by Testing # +##################################################### # REPO_URL indicates the source where to download compass-web and compass-adapters from #export REPO_URL=https://review.openstack.org @@ -33,6 +33,12 @@ export ADAPTERS_SOURCE='http://git.openstack.org/stackforge/compass-adapters' # set the default cobbler user "cobbler" password, if not set, the default will be cobbler/cobbler export CBLR_USER=cobbler export CBLR_PASSWD=cobbler +export MYSQL_USER=root +export MYSQL_OLD_PASSWORD=root +export MYSQL_PASSWORD=root +export MYSQL_SERVER='127.0.0.1' +export MYSQL_PORT=3306 +export MYSQL_DATABASE=db # IMAGE_SOURCE is where you host your CentOS image export IMAGE_TYPE=${IMAGE_TYPE:-"CentOS"} diff --git a/install/install.sh b/install/install.sh index f419afbc..73c750e7 100755 --- a/install/install.sh +++ b/install/install.sh @@ -201,6 +201,8 @@ fi loadvars NAMESERVER_DOMAINS "ods.com" loadvars WEB_SOURCE 'http://git.openstack.org/stackforge/compass-web' loadvars ADAPTERS_SOURCE 'http://git.openstack.org/stackforge/compass-adapters' +loadvars MYSQL_OLD_PASSWORD '' +loadvars MYSQL_PASSWORD 'root' echo "script dir: $SCRIPT_DIR" echo "compass dir is $COMPASSDIR" diff --git a/install/prepare.sh b/install/prepare.sh index 5db3ae44..f0f15b24 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -147,6 +147,41 @@ else echo "squid conf is updated" fi +#update mysqld +sudo service mysqld restart +MYSQL_USER=${MYSQL_USER:-root} +MYSQL_OLD_PASSWORD=${MYSQL_OLD_PASSWORD:-} +MYSQL_PASSWORD=${MYSQL_PASSWORD:-root} +MYSQL_SERVER=${MYSQL_SERVER:-127.0.0.1} +MYSQL_PORT=${MYSQL_PORT:-3306} +MYSQL_DATABASE=${MYSQL_DATABASE:-db} +# first time set mysql password +sudo mysqladmin -h${MYSQL_SERVER} --port=${MYSQL_PORT} -u ${MYSQL_USER} password ${MYSQL_PASSWORD} +sudo mysqladmin -h${MYSQL_SERVER} --port=${MYSQL_PORT} -u ${MYSQL_USER} -p"${MYSQL_OLD_PASSWORD}" password ${MYSQL_PASSWORD} +mysql -h${MYSQL_SERVER} --port=${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} -e "show databases;" +if [[ "$?" != "0" ]]; then + echo "mysql password set failed" + exit 1 +else + echo "mysql password set successful" +fi +sudo mysql -h${MYSQL_SERVER} --port=${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} -e "drop database ${MYSQL_DATABASE}" +sudo mysql -h${MYSQL_SERVER} --port=${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} -e "create database ${MYSQL_DATABASE}" +if [[ "$?" != "0" ]]; then + echo "mysql database set fails" + exit 1 +else + echo "mysql database set succeeds" +fi +sudo service mysqld restart +sudo service mysqld status +if [[ "$?" != "0" ]]; then + echo "mysqld is not started" + exit 1 +else + echo "mysqld conf is updated" +fi + cd $SCRIPT_DIR if [ -z $WEB_SOURCE ]; then echo "web source $WEB_SOURCE is not set" From 7119b3629d8ff8c2edf086689afb791fe14091a9 Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Wed, 16 Jul 2014 15:39:44 -0700 Subject: [PATCH 09/23] Use curl to download package from github. Github recently removed some sslv3 ciphers - wget seems to only enable a subset of the ciphers available so fails now, but curl continues to succeed. Also tune squid cache settings to ignore certain file extentions and cache only rpm and debian packages Change-Id: Id46df19ee51e9a771dbd47bd5643af9007669385 Closes-bug: #1342995 --- install/prepare.sh | 2 +- misc/squid/squid.conf | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/install/prepare.sh b/install/prepare.sh index 7339da3b..4222252a 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -240,7 +240,7 @@ download() else if [[ "$url" =~ (http|https|ftp):// ]]; then echo "downloading $url to /tmp/${package}" - wget -c --progress=bar:force -O /tmp/${package}.tmp $url + curl -L -o /tmp/${package}.tmp $url if [[ "$?" != "0" ]]; then echo "failed to download $package" exit 1 diff --git a/misc/squid/squid.conf b/misc/squid/squid.conf index 8bff0e31..38c4c64a 100644 --- a/misc/squid/squid.conf +++ b/misc/squid/squid.conf @@ -47,7 +47,7 @@ http_port 3128 cache_mem 512 MB maximum_object_size_in_memory 512 KB -maximum_object_size 512 MB +maximum_object_size 4096 MB # Uncomment and adjust the following to add a disk cache directory. cache_dir aufs /var/squid/cache 25000 16 256 @@ -60,7 +60,12 @@ coredump_dir /var/spool/squid reload_into_ims on # Add any of your own refresh_pattern entries above these. -refresh_pattern . 86400 50% 518400 override-expire override-lastmod +refresh_pattern -i .rpm$ 86400 50% 518400 override-expire override-lastmod +refresh_pattern -i .deb$ 86400 50% 518400 override-expire override-lastmod +refresh_pattern -i .gem$ 86400 50% 518400 override-expire override-lastmod +refresh_pattern -i .rz$ 86400 50% 518400 override-expire override-lastmod +refresh_pattern -i .img$ 86400 50% 518400 override-expire override-lastmod +refresh_pattern . 0 20% 4320 quick_abort_min -1 QB read_ahead_gap 100 MB From c3017c06036350f03faab9b14386f94591c0b8b2 Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Thu, 17 Jul 2014 16:30:38 -0700 Subject: [PATCH 10/23] Use latest validator provided by wtforms See bug #1343671. To avoid using depcrecated validator in wtforms and quiet the warning, switch to the new validator. Change-Id: I3cbd33ef02b7c6c2d9a42c9cc71e087ec2c82117 Closes-bug: #1343671 --- compass/api/api.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/compass/api/api.py b/compass/api/api.py index 8d0755f0..9f930eb6 100644 --- a/compass/api/api.py +++ b/compass/api/api.py @@ -57,7 +57,7 @@ from flask.ext.wtf import Form from wtforms.fields import BooleanField from wtforms.fields import PasswordField from wtforms.fields import TextField -from wtforms.validators import Required +from wtforms.validators import DataRequired @login_manager.header_loader @@ -136,8 +136,8 @@ def get_token(): class LoginForm(Form): """Define login form.""" - email = TextField('Email', validators=[Required()]) - password = PasswordField('Password', validators=[Required()]) + email = TextField('Email', validators=[DataRequired()]) + password = PasswordField('Password', validators=[DataRequired()]) remember = BooleanField('Remember me', default=False) From 75387f0527e040b92c0f3f839953ead05a3a5aa9 Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Mon, 21 Jul 2014 15:51:21 -0700 Subject: [PATCH 11/23] Install tempest in virtualenv Isolate tempest in a virtualenv to avoid version conflicts with Compass or other python apps. Change-Id: I1a2dfd1879968302eba40c271cb45fd46474e03a --- install/prepare.sh | 7 +++++++ misc/ci/tempest_run.sh | 10 ++++++++++ requirements.txt | 2 +- test-requirements.txt | 2 ++ 4 files changed, 20 insertions(+), 1 deletion(-) diff --git a/install/prepare.sh b/install/prepare.sh index 7339da3b..364d50ec 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -220,13 +220,20 @@ if [ "$tempest" == "true" ]; then git clean -x -f -d -q git checkout grizzly-eol fi + source `which virtualenvwrapper.sh` + if ! lsvirtualenv |grep tempest>/dev/null; then + mkvirtualenv tempest + fi + workon tempest cd /tmp/tempest pip install -e . if [[ "$?" != "0" ]]; then echo "failed to install tempest project" + deactivate exit 1 else echo "install tempest project succeeded" + deactivate fi fi diff --git a/misc/ci/tempest_run.sh b/misc/ci/tempest_run.sh index 18c24bb5..a7a7bb44 100755 --- a/misc/ci/tempest_run.sh +++ b/misc/ci/tempest_run.sh @@ -45,6 +45,7 @@ pip install tox==1.6.1 #Install setuptools twice so that it is really upgraded pip install -U setuptools pip install -U setuptools +pip install -U virtualenvwrapper yum install -y libxml2-devel libxslt-devel python-devel sshpass if [[ ! -e /tmp/tempest ]]; then git clone http://git.openstack.org/openstack/tempest /tmp/tempest @@ -58,6 +59,15 @@ else git clean -x -f -d -q git checkout grizzly-eol fi +source `which virtualenvwrapper.sh` +set +e +if ! lsvirtualenv |grep tempest>/dev/null; then + mkvirtualenv tempest + workon tempest +else + workon tempest +fi +set -e cd /tmp/tempest #Install Tempest including dependencies pip install -e . diff --git a/requirements.txt b/requirements.txt index 01fdc649..2a172b43 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,7 +5,7 @@ flask-sqlalchemy flask-login celery netaddr -paramiko==1.7.5 +paramiko simplejson requests PyChef diff --git a/test-requirements.txt b/test-requirements.txt index eac30daf..cb0798a2 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -7,3 +7,5 @@ mimeparse coverage>=3.6 hacking>=0.8.0,<0.9 pycrypto<=2.0.1 +virtualenv +virtualenvwrapper From ced9bf7db22c688c23f24a2d2fe34c13bf67d589 Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Mon, 21 Jul 2014 18:05:26 -0700 Subject: [PATCH 12/23] Add tool scripts to install Compass in virtualenv Add tool scripts to install Compass in virtualenv for dev and even production. Change-Id: Ie1988cb145812ae556bab1b06ca39046d87ad213 --- tools/install_venv.py | 73 +++++++++++++++ tools/install_venv_common.py | 172 +++++++++++++++++++++++++++++++++++ tools/with_venv.sh | 7 ++ 3 files changed, 252 insertions(+) create mode 100644 tools/install_venv.py create mode 100644 tools/install_venv_common.py create mode 100755 tools/with_venv.sh diff --git a/tools/install_venv.py b/tools/install_venv.py new file mode 100644 index 00000000..1385a3e8 --- /dev/null +++ b/tools/install_venv.py @@ -0,0 +1,73 @@ +# Copyright 2010 United States Government as represented by the +# Administrator of the National Aeronautics and Space Administration. +# All Rights Reserved. +# +# Copyright 2010 OpenStack Foundation +# Copyright 2013 IBM Corp. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +# Shamelessly copied from horizon project and renamed to Compass + +import os +import sys + +import install_venv_common as install_venv # noqa + + +def print_help(venv, root): + help = """ + Compass development environment setup is complete. + + Compass development uses virtualenv to track and manage Python + dependencies while in development and testing. + + To activate the Compass virtualenv for the extent of your current shell + session you can run: + + $ source %s/bin/activate + + Or, if you prefer, you can run commands in the virtualenv on a case by case + basis by running: + + $ %s/tools/with_venv.sh + + Also, make test will automatically use the virtualenv. + """ + print(help % (venv, root)) + + +def main(argv): + root = os.path.dirname(os.path.dirname(os.path.realpath(__file__))) + + if os.environ.get('tools_path'): + root = os.environ['tools_path'] + venv = os.path.join(root, '.venv') + if os.environ.get('venv'): + venv = os.environ['venv'] + + pip_requires = os.path.join(root, 'requirements.txt') + test_requires = os.path.join(root, 'test-requirements.txt') + py_version = "python%s.%s" % (sys.version_info[0], sys.version_info[1]) + project = 'Compass' + install = install_venv.InstallVenv(root, venv, pip_requires, test_requires, + py_version, project) + options = install.parse_args(argv) + install.check_python_version() + install.check_dependencies() + install.create_virtualenv(no_site_packages=options.no_site_packages) + install.install_dependencies() + print_help(venv, root) + +if __name__ == '__main__': + main(sys.argv) diff --git a/tools/install_venv_common.py b/tools/install_venv_common.py new file mode 100644 index 00000000..46822e32 --- /dev/null +++ b/tools/install_venv_common.py @@ -0,0 +1,172 @@ +# Copyright 2013 OpenStack Foundation +# Copyright 2013 IBM Corp. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +"""Provides methods needed by installation script for OpenStack development +virtual environments. + +Since this script is used to bootstrap a virtualenv from the system's Python +environment, it should be kept strictly compatible with Python 2.6. + +Synced in from openstack-common +""" + +from __future__ import print_function + +import optparse +import os +import subprocess +import sys + + +class InstallVenv(object): + + def __init__(self, root, venv, requirements, + test_requirements, py_version, + project): + self.root = root + self.venv = venv + self.requirements = requirements + self.test_requirements = test_requirements + self.py_version = py_version + self.project = project + + def die(self, message, *args): + print(message % args, file=sys.stderr) + sys.exit(1) + + def check_python_version(self): + if sys.version_info < (2, 6): + self.die("Need Python Version >= 2.6") + + def run_command_with_code(self, cmd, redirect_output=True, + check_exit_code=True): + """Runs a command in an out-of-process shell. + + Returns the output of that command. Working directory is self.root. + """ + if redirect_output: + stdout = subprocess.PIPE + else: + stdout = None + + proc = subprocess.Popen(cmd, cwd=self.root, stdout=stdout) + output = proc.communicate()[0] + if check_exit_code and proc.returncode != 0: + self.die('Command "%s" failed.\n%s', ' '.join(cmd), output) + return (output, proc.returncode) + + def run_command(self, cmd, redirect_output=True, check_exit_code=True): + return self.run_command_with_code(cmd, redirect_output, + check_exit_code)[0] + + def get_distro(self): + if (os.path.exists('/etc/fedora-release') or + os.path.exists('/etc/redhat-release')): + return Fedora( + self.root, self.venv, self.requirements, + self.test_requirements, self.py_version, self.project) + else: + return Distro( + self.root, self.venv, self.requirements, + self.test_requirements, self.py_version, self.project) + + def check_dependencies(self): + self.get_distro().install_virtualenv() + + def create_virtualenv(self, no_site_packages=True): + """Creates the virtual environment and installs PIP. + + Creates the virtual environment and installs PIP only into the + virtual environment. + """ + if not os.path.isdir(self.venv): + print('Creating venv...', end=' ') + if no_site_packages: + self.run_command(['virtualenv', '-q', '--no-site-packages', + self.venv]) + else: + self.run_command(['virtualenv', '-q', self.venv]) + print('done.') + else: + print("venv already exists...") + pass + + def pip_install(self, *args): + self.run_command(['tools/with_venv.sh', + 'pip', 'install', '--upgrade'] + list(args), + redirect_output=False) + + def install_dependencies(self): + print('Installing dependencies with pip (this can take a while)...') + + # First things first, make sure our venv has the latest pip and + # setuptools and pbr + self.pip_install('pip>=1.4') + self.pip_install('setuptools') + self.pip_install('pbr') + + self.pip_install('-r', self.requirements, '-r', self.test_requirements) + + def parse_args(self, argv): + """Parses command-line arguments.""" + parser = optparse.OptionParser() + parser.add_option('-n', '--no-site-packages', + action='store_true', + help="Do not inherit packages from global Python " + "install") + return parser.parse_args(argv[1:])[0] + + +class Distro(InstallVenv): + + def check_cmd(self, cmd): + return bool(self.run_command(['which', cmd], + check_exit_code=False).strip()) + + def install_virtualenv(self): + if self.check_cmd('virtualenv'): + return + + if self.check_cmd('easy_install'): + print('Installing virtualenv via easy_install...', end=' ') + if self.run_command(['easy_install', 'virtualenv']): + print('Succeeded') + return + else: + print('Failed') + + self.die('ERROR: virtualenv not found.\n\n%s development' + ' requires virtualenv, please install it using your' + ' favorite package management tool' % self.project) + + +class Fedora(Distro): + """This covers all Fedora-based distributions. + + Includes: Fedora, RHEL, CentOS, Scientific Linux + """ + + def check_pkg(self, pkg): + return self.run_command_with_code(['rpm', '-q', pkg], + check_exit_code=False)[1] == 0 + + def install_virtualenv(self): + if self.check_cmd('virtualenv'): + return + + if not self.check_pkg('python-virtualenv'): + self.die("Please install 'python-virtualenv'.") + + super(Fedora, self).install_virtualenv() diff --git a/tools/with_venv.sh b/tools/with_venv.sh new file mode 100755 index 00000000..7303990b --- /dev/null +++ b/tools/with_venv.sh @@ -0,0 +1,7 @@ +#!/bin/bash +TOOLS_PATH=${TOOLS_PATH:-$(dirname $0)} +VENV_PATH=${VENV_PATH:-${TOOLS_PATH}} +VENV_DIR=${VENV_NAME:-/../.venv} +TOOLS=${TOOLS_PATH} +VENV=${VENV:-${VENV_PATH}/${VENV_DIR}} +source ${VENV}/bin/activate && "$@" From 8f7a44d3882f5c1b8b37343a5f433bd4b22e3fc1 Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Wed, 23 Jul 2014 18:39:21 -0700 Subject: [PATCH 13/23] Install Compass in virtual env Create virtualenv for compass, point compass site packages to virtualenv, make virtualenv accessable for apache. Change compass executable scripts to use python in env to be virtualenv compatible. Make progress_update daemon use virtualenv. Comment out some health checks that use packages not available to pip, eg, yum, apt since we have other ways to check packages any way. Change-Id: Ib48633601bf238ffc660c4694834897edbe45e07 --- bin/client.py | 2 +- bin/compass | 2 +- bin/csvdeploy.py | 2 +- bin/manage_db.py | 2 +- bin/poll_switch.py | 2 +- bin/progress_update.py | 2 +- bin/query_switch.py | 2 +- bin/runserver.py | 2 +- compass/actions/health_check/check.py | 4 +-- conf/compassd | 22 +++++++++------- install/cobbler.sh | 1 + install/compass.sh | 27 ++++++++++++------- install/dependency.sh | 38 ++------------------------- install/prepare.sh | 22 ++++++++++++++++ misc/apache/compass.wsgi | 7 +++++ misc/apache/ods-server | 1 - regtest/regtest.sh | 3 +++ requirements.txt | 3 +++ 18 files changed, 78 insertions(+), 66 deletions(-) diff --git a/bin/client.py b/bin/client.py index b04624a5..60e06ccf 100755 --- a/bin/client.py +++ b/bin/client.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # # Copyright 2014 Huawei Technologies Co. Ltd # diff --git a/bin/compass b/bin/compass index 1a4a61b3..fe14526a 100755 --- a/bin/compass +++ b/bin/compass @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python import sys import compass.actions.cli as cli diff --git a/bin/csvdeploy.py b/bin/csvdeploy.py index dd4945cb..91e65b59 100755 --- a/bin/csvdeploy.py +++ b/bin/csvdeploy.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # # Copyright 2014 Huawei Technologies Co. Ltd # diff --git a/bin/manage_db.py b/bin/manage_db.py index d25791f1..63edb7d6 100755 --- a/bin/manage_db.py +++ b/bin/manage_db.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # # Copyright 2014 Huawei Technologies Co. Ltd # diff --git a/bin/poll_switch.py b/bin/poll_switch.py index 4dd77240..57263ea9 100755 --- a/bin/poll_switch.py +++ b/bin/poll_switch.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # # Copyright 2014 Huawei Technologies Co. Ltd # diff --git a/bin/progress_update.py b/bin/progress_update.py index e5862e9b..d189e385 100755 --- a/bin/progress_update.py +++ b/bin/progress_update.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # # Copyright 2014 Huawei Technologies Co. Ltd # diff --git a/bin/query_switch.py b/bin/query_switch.py index 835bfe8c..c6848d31 100755 --- a/bin/query_switch.py +++ b/bin/query_switch.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # # Copyright 2014 Huawei Technologies Co. Ltd # diff --git a/bin/runserver.py b/bin/runserver.py index 73a1e5f7..b8b1a72e 100755 --- a/bin/runserver.py +++ b/bin/runserver.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python # # Copyright 2014 Huawei Technologies Co. Ltd # diff --git a/compass/actions/health_check/check.py b/compass/actions/health_check/check.py index c1adbc6b..e50b83a5 100644 --- a/compass/actions/health_check/check.py +++ b/compass/actions/health_check/check.py @@ -36,12 +36,12 @@ class BootCheck(base.BaseCheck): status['celery'] = self._check_celery() status['dhcp'] = self._check_dhcp() status['dns'] = self._check_dns() - status['hds'] = self._check_hds() +# status['hds'] = self._check_hds() status['os_installer'] = self._check_os_installer() status['package_installer'] = self._check_package_installer() status['squid'] = self._check_squid() status['tftp'] = self._check_tftp() - status['other'] = self._check_misc() +# status['other'] = self._check_misc() return status diff --git a/conf/compassd b/conf/compassd index 90a37a6c..e64871ae 100755 --- a/conf/compassd +++ b/conf/compassd @@ -25,6 +25,8 @@ [ -x /opt/compass/bin/progress_update.py ] || exit 0 UBUNTU=/etc/debian_version SUSE=/etc/SuSE-release +PYTHON=$Python +CELERY=$CeleryPath if [ -f $UBUNTU ]; then . /lib/lsb/init_functions @@ -42,35 +44,35 @@ start() { echo "Starting Compass: " if [ -f $SUSE ]; then echo -n "Start celeryd: " - startproc -f -p /var/run/celeryd.pid -l /tmp/celeryd.log "C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper celeryd" + startproc -f -p /var/run/celeryd.pid -l /tmp/celeryd.log "C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper $CELERY" rc_status -v echo echo -n "Start service progress_update: " - startproc -f -p /var/run/progress_update.pid -l /tmp/progress_update.log /opt/compass/bin/progress_update.py + startproc -f -p /var/run/progress_update.pid -l /tmp/progress_update.log $PYTHON /opt/compass/bin/progress_update.py rc_status -v echo elif [ -e $UBUNTU ]; then if [ -f /var/run/celeryd.pid ]; then echo "celeryd is already started" RETVAL=1 - elif C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper celeryd &> /tmp/celeryd.log; then + elif C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper $CELERY &> /tmp/celeryd.log; then echo "celeryd starts OK" RETVAL=0 fi if [ -f /var/run/progress_update.pid ]; then echo "progress_update is already started" RETVAL=1 - elif /usr/bin/python /opt/compass/bin/progress_update.py &> /tmp/progress_update.log; then + elif $PYTHON /opt/compass/bin/progress_update.py &> /tmp/progress_update.log; then echo "progress_update starts OK" RETVAL=0 fi else echo -n "Start celeryd: " - daemon --pidfile /var/run/celeryd.pid "C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper celeryd &>/tmp/celeryd.log & echo \$! > /var/run/celeryd.pid" + daemon --pidfile /var/run/celeryd.pid "C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper $CELERY &>/tmp/celeryd.log & echo \$! > /var/run/celeryd.pid" RETVAL=$? echo echo -n "Start service progress_update: " - daemon --pidfile /var/run/progress_update.pid "/opt/compass/bin/progress_update.py &>/tmp/progress_update.log & echo \$! > /var/run/progress_update.pid" + daemon --pidfile /var/run/progress_update.pid "$PYTHON /opt/compass/bin/progress_update.py &>/tmp/progress_update.log & echo \$! > /var/run/progress_update.pid" RETVAL=$? echo fi @@ -82,7 +84,7 @@ stop() { echo "Stopping Compass: " if [ -f $SUSE ]; then echo -n "Stop service celeryd: " - killproc -t 10 -p /var/run/celeryd.pid celeryd + killproc -t 10 -p /var/run/celeryd.pid $CELERY rc_status -v echo echo -n "Stop service progress_update: " @@ -94,7 +96,7 @@ stop() { RETVAL=1 else echo -n "Stop service celeryd: " - killproc -p /var/run/celeryd.pid -d 30 celeryd + killproc -p /var/run/celeryd.pid -d 30 $CELERY RETVAL=$? echo echo -n "Stop service progress_update: " @@ -116,7 +118,7 @@ case "$1" in echo "Checking compass: " if [ -f $SUSE ]; then echo -n "Checking for service celeryd: " - checkproc -v -p /var/run/celeryd.pid celeryd + checkproc -v -p /var/run/celeryd.pid $CELERY rc_status -v echo echo -n "Checking for service progress_update: " @@ -142,7 +144,7 @@ case "$1" in fi else echo -n "checking for service celeryd: " - status -p /var/run/celeryd.pid celeryd + status -p /var/run/celeryd.pid $CELERY retval=$? echo echo -n "checking for service progress_update: " diff --git a/install/cobbler.sh b/install/cobbler.sh index 2d4bf36c..9a8f38ee 100755 --- a/install/cobbler.sh +++ b/install/cobbler.sh @@ -18,6 +18,7 @@ sudo mkdir -p /root/backup/cobbler # update httpd conf sudo cp -rn /etc/httpd/conf.d /root/backup/cobbler/ sudo rm -f /etc/httpd/conf.d/cobbler_web.conf +sudo rm -f /etc/httpd/conf.d/ods-server.conf sudo cp -rf $COMPASSDIR/misc/apache/cobbler_web.conf /etc/httpd/conf.d/cobbler_web.conf chmod 644 /etc/httpd/conf.d/cobbler_web.conf sudo rm -rf /etc/httpd/conf.d/ssl.conf diff --git a/install/compass.sh b/install/compass.sh index 290920e5..04085ac7 100755 --- a/install/compass.sh +++ b/install/compass.sh @@ -20,7 +20,8 @@ sudo cp -rf $COMPASSDIR/bin/compass /usr/bin/ sudo cp -rf $COMPASSDIR/bin/chef/* /opt/compass/bin/ sudo cp -rf $COMPASSDIR/conf/compassd /usr/bin/ sudo cp -rf $WEB_HOME/public/* /var/www/compass_web/ - +# add apache user to the group of virtualenv user +sudo usermod -a -G `groups $USER|awk '{print$3}'` apache sudo chkconfig compassd on # setup ods server @@ -33,12 +34,14 @@ sudo chmod -R 777 /var/log/compass sudo echo "export C_FORCE_ROOT=1" > /etc/profile.d/celery_env.sh sudo chmod +x /etc/profile.d/celery_env.sh cd $COMPASSDIR -sudo python setup.py install +workon compass-core +python setup.py install if [[ "$?" != "0" ]]; then echo "failed to install compass package" + deactivate exit 1 else - echo "compass package is installed" + echo "compass package is installed in virtualenv under current dir" fi sudo sed -i "/^COBBLER_INSTALLER_URL/c\COBBLER_INSTALLER_URL = 'http:\/\/$ipaddr/cobbler_api'" /etc/compass/setting @@ -52,27 +55,31 @@ sudo sed -i "/^COBBLER_INSTALLER_TOKEN/c\COBBLER_INSTALLER_TOKEN = ['$CBLR_USER' sudo sed -i "s/\$compass_ip/$ipaddr/g" /etc/compass/global_config sudo sed -i "s/\$compass_hostname/$HOSTNAME/g" /etc/compass/global_config sudo sed -i "s/\$compass_testmode/$TESTMODE/g" /etc/compass/global_config +sudo sed -e 's|$PythonHome|'$VIRTUAL_ENV'|' -i /var/www/compass/compass.wsgi +sudo sed -e 's|$Python|'$VIRTUAL_ENV/bin/python'|' -i /etc/init.d/compassd +sudo sed -e 's|$CeleryPath|'$VIRTUAL_ENV/bin/celeryd'|' -i /etc/init.d/compassd +sudo sed -e 's|$Python|'$VIRTUAL_ENV/bin/python'|' -i /usr/bin/compassd # add cookbooks, databags and roles sudo chmod +x /opt/compass/bin/addcookbooks.py sudo chmod +x /opt/compass/bin/adddatabags.py sudo chmod +x /opt/compass/bin/addroles.py -sudo /opt/compass/bin/addcookbooks.py +/opt/compass/bin/addcookbooks.py if [[ "$?" != "0" ]]; then echo "failed to add cookbooks" exit 1 else echo "cookbooks are added to chef server" fi -sudo /opt/compass/bin/adddatabags.py +/opt/compass/bin/adddatabags.py if [[ "$?" != "0" ]]; then echo "failed to add databags" exit 1 else echo "databags are added to chef server" fi -sudo /opt/compass/bin/addroles.py +/opt/compass/bin/addroles.py if [[ "$?" != "0" ]]; then echo "failed to add roles" exit 1 @@ -96,7 +103,7 @@ else exit 1 fi -sudo /opt/compass/bin/refresh.sh +/opt/compass/bin/refresh.sh if [[ "$?" != "0" ]]; then echo "failed to refresh compassd service" exit 1 @@ -126,7 +133,7 @@ if [[ "$?" != "0" ]]; then exit 1 fi -sudo service compassd status +service compassd status if [[ "$?" != "0" ]]; then echo "compassd is not started" exit 1 @@ -134,8 +141,10 @@ else echo "compassd has already started" fi -sudo compass check +compass check if [[ "$?" != "0" ]]; then echo "compass check failed" exit 1 fi + +deactivate diff --git a/install/dependency.sh b/install/dependency.sh index 409f5d99..cda58ca7 100755 --- a/install/dependency.sh +++ b/install/dependency.sh @@ -10,7 +10,7 @@ if [ "$tempest" == "true" ]; then exit 1 fi fi -sudo yum install -y rsyslog logrotate ntp iproute openssh-clients python python-devel git wget python-setuptools syslinux python-netaddr python-flask python-flask-sqlalchemy python-amqplib python-argparse amqp python-paramiko python-mock mod_wsgi httpd squid dhcp bind rsync yum-utils xinetd tftp-server gcc net-snmp-utils net-snmp net-snmp-python python-daemon unzip openssl openssl098e ca-certificates redis python-redis python-importlib mysql mysql-server MySQL-python +sudo yum install -y rsyslog logrotate ntp iproute openssh-clients python python-devel git wget syslinux amqp mod_wsgi httpd squid dhcp bind rsync yum-utils xinetd tftp-server gcc net-snmp-utils net-snmp python-daemon unzip openssl openssl098e ca-certificates redis mysql mysql-server mysql-devel python-virtualenv if [[ "$?" != "0" ]]; then echo "failed to install yum dependency" exit 1 @@ -32,41 +32,7 @@ if [[ "$?" != "0" ]]; then exit 1 fi -# pip install flask-sqlalchemy need to remove /usr/lib64/python2.6/site-packages/easy-install.pth -cp -n /usr/lib/python2.6/site-packages/easy-install* /usr/lib64/python2.6/site-packages/ - -sudo pip install -U setuptools -if [[ "$?" != "0" ]]; then - echo "failed to install setuptools" - exit 1 -fi - -# TODO: (fixme). setuptools should be installed twice. One is to uninstall distribute, the other is to upgrade setuptools. -sudo pip install -U setuptools -if [[ "$?" != "0" ]]; then - echo "failed to install setuptools" - exit 1 -fi - -sudo pip install flask-mysql -if [[ "$?" != "0" ]]; then - echo "failed to install flask-mysql" - exit 1 -fi - - - -sudo pip install -U -r $COMPASSDIR/requirements.txt -if [[ "$?" != "0" ]]; then - echo "failed to install compass requirement packages" - exit 1 -fi - -sudo pip install -U -r $COMPASSDIR/test-requirements.txt -if [[ "$?" != "0" ]]; then - echo "failed to install compass test require packages" - exit 1 -fi +sudo pip install virtualenvwrapper sudo chkconfig httpd on sudo chkconfig squid on diff --git a/install/prepare.sh b/install/prepare.sh index 364d50ec..07b430ef 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -227,6 +227,7 @@ if [ "$tempest" == "true" ]; then workon tempest cd /tmp/tempest pip install -e . + pip install sqlalchemy if [[ "$?" != "0" ]]; then echo "failed to install tempest project" deactivate @@ -237,6 +238,27 @@ if [ "$tempest" == "true" ]; then fi fi +if ! lsvirtualenv |grep compass-core>/dev/null; then + mkvirtualenv compass-core +fi +workon compass-core +cd $COMPASSDIR +pip install -U -r requirements.txt +if [[ "$?" != "0" ]]; then + echo "failed to install compass requiremnts" + deactivate + exit 1 +fi +pip install -U -r test-requirements.txt +if [[ "$?" != "0" ]]; then + echo "failed to install compass test requiremnts" + deactivate + exit 1 +else + echo "intall compass requirements succeeded" + deactivate +fi + download() { url=$1 diff --git a/misc/apache/compass.wsgi b/misc/apache/compass.wsgi index 83619ea4..b39a7b91 100755 --- a/misc/apache/compass.wsgi +++ b/misc/apache/compass.wsgi @@ -1,4 +1,11 @@ #!/usr/bin/env python +import site +import sys +import os +site.addsitedir('$PythonHome/lib/python2.6/site-packages') +sys.path.append('$PythonHome') +os.environ['PYTHON_EGG_CACHE'] = '/tmp/.egg' + from compass.api import app as application from compass.utils import flags from compass.utils import logsetting diff --git a/misc/apache/ods-server b/misc/apache/ods-server index b4359a67..da2daee4 100644 --- a/misc/apache/ods-server +++ b/misc/apache/ods-server @@ -1,7 +1,6 @@ # Apache config for ods server # # Specify python path if you use virtualenv -# WSGIPythonHome /home/vagrant/hwtest DocumentRoot /var/www/compass_web diff --git a/regtest/regtest.sh b/regtest/regtest.sh index 82cdc34e..ba731895 100755 --- a/regtest/regtest.sh +++ b/regtest/regtest.sh @@ -35,6 +35,8 @@ function tear_down_machines() { REGTEST_CONF=${REGTEST_CONF:-"regtest.conf"} REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) source ${REGTEST_DIR}/${REGTEST_CONF} +source `which virtualenvwrapper.sh` +workon compass-core declare -A roles_list machines='' @@ -169,6 +171,7 @@ fi ${CLIENT_SCRIPT} --logfile= --loglevel=info --logdir= --adapter_os_name="${ADAPTER_OS_NAME_PATTERN}" --adapter_target_system="${ADAPTER_TARGET_SYSTEM_NAME}" --networking="${NETWORKING}" --partitions="${PARTITION}" --credentials="${SECURITY}" --host_roles="${host_roles_list}" --dashboard_role="${DASHBOARD_ROLE}" --switch_ips="${SWITCH_IPS}" --machines="${machines}" --switch_credential="${SWITCH_CREDENTIAL}" --deployment_timeout="${DEPLOYMENT_TIMEOUT}" --${POLL_SWITCHES_FLAG} rc=$? +deactivate # Tear down machines after the test if [[ $rc != 0 ]]; then tear_down_machines diff --git a/requirements.txt b/requirements.txt index 2a172b43..709e19d2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -13,3 +13,6 @@ redis flask-wtf itsdangerous importlib +MySQL-python +lockfile +daemon From 9f83c975f601cf7e7d39ab5b9dee3cb022fdc2e3 Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Fri, 25 Jul 2014 15:22:42 -0700 Subject: [PATCH 14/23] Switch from ftp to http for rpmfind.net rpmfind.net disabled ftp support yesterday or maybe a service outage but http works anyway, so switch to http protocol to download packages for cobbler ppa repo. Change-Id: I8fbb69704f67b40a16a5002dca9c33b8ef1ad55b --- install/cobbler.sh | 2 +- install/prepare.sh | 2 +- requirements.txt | 1 + test-requirements.txt | 2 -- 4 files changed, 3 insertions(+), 4 deletions(-) diff --git a/install/cobbler.sh b/install/cobbler.sh index 9a8f38ee..b64e4ec8 100755 --- a/install/cobbler.sh +++ b/install/cobbler.sh @@ -247,7 +247,7 @@ iproute-2.6.32-31.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENT wget-1.12-1.8.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm ntpdate-4.2.6p5-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_TYPE,,}.${CENTOS_IMAGE_ARCH}.rpm" for f in $centos_ppa_repo_packages; do - download ftp://rpmfind.net/linux/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION_MAJOR}/os/${CENTOS_IMAGE_ARCH}/Packages/$f $f copy /var/lib/cobbler/repo_mirror/centos_ppa_repo/ || exit $? + download http://rpmfind.net/linux/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION_MAJOR}/os/${CENTOS_IMAGE_ARCH}/Packages/$f $f copy /var/lib/cobbler/repo_mirror/centos_ppa_repo/ || exit $? done centos_ppa_repo_rsyslog_packages=" diff --git a/install/prepare.sh b/install/prepare.sh index 953b002c..b228079c 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -323,7 +323,7 @@ wget-1.12-1.8.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_I ntpdate-4.2.6p5-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_TYPE,,}.${CENTOS_IMAGE_ARCH}.rpm" for f in $centos_ppa_repo_packages; do - download ftp://rpmfind.net/linux/${IMAGE_TYPE,,}/${IMAGE_VERSION_MAJOR}/os/${IMAGE_ARCH}/Packages/$f $f || exit $? + download http://rpmfind.net/linux/${IMAGE_TYPE,,}/${IMAGE_VERSION_MAJOR}/os/${IMAGE_ARCH}/Packages/$f $f || exit $? done centos_ppa_repo_rsyslog_packages=" diff --git a/requirements.txt b/requirements.txt index 709e19d2..5557258c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ +argparse flask flask-script flask-restful diff --git a/test-requirements.txt b/test-requirements.txt index cb0798a2..82584bd8 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -6,6 +6,4 @@ testrepository>=0.0.17 mimeparse coverage>=3.6 hacking>=0.8.0,<0.9 -pycrypto<=2.0.1 virtualenv -virtualenvwrapper From e1c39ac438554a431c8c8e1a13c33d1af0f319eb Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Thu, 7 Aug 2014 19:36:23 -0700 Subject: [PATCH 15/23] Add NO_TEAR_DOWN opiton to regtest Add NO_TEAR_DOWN option to keep environment for debugging or demos. Also change the way to use virsh list as --name option is not supported in ubuntu. BTW, fixed a squid bug to skip caching xml files to avoid squid users keep getting stale repo data. Change-Id: I8c4000c8088ada15c1a5105105bded81ee8a1f70 --- install/prepare.sh | 1 + misc/squid/squid.conf | 2 ++ regtest/regtest.sh | 14 +++++++++++--- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/install/prepare.sh b/install/prepare.sh index b228079c..54b6f804 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -238,6 +238,7 @@ if [ "$tempest" == "true" ]; then fi fi +source `which virtualenvwrapper.sh` if ! lsvirtualenv |grep compass-core>/dev/null; then mkvirtualenv compass-core fi diff --git a/misc/squid/squid.conf b/misc/squid/squid.conf index 38c4c64a..7da498d7 100644 --- a/misc/squid/squid.conf +++ b/misc/squid/squid.conf @@ -14,6 +14,8 @@ acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machine acl CONNECT method CONNECT +acl NoCacheURL url_regex -i \.xml +cache deny NoCacheURL # # Recommended minimum Access Permission configuration: # diff --git a/regtest/regtest.sh b/regtest/regtest.sh index ba731895..82105379 100755 --- a/regtest/regtest.sh +++ b/regtest/regtest.sh @@ -12,7 +12,11 @@ function mac_address() { } function tear_down_machines() { - virtmachines=$(virsh list --name) + if [[ -z $NO_TEAR_DOWN ]] || [[ $PRE_CLEAN == true ]]; then + virtmachines=$(virsh list | awk '{print$2}'| tail -n +3) + else + virtmachines= + fi for virtmachine in $virtmachines; do echo "destroy $virtmachine" virsh destroy $virtmachine @@ -21,7 +25,11 @@ function tear_down_machines() { exit 1 fi done - virtmachines=$(virsh list --all --name) + if [[ -z $NO_TEAR_DOWN ]] || [[ $PRE_CLEAN == true ]]; then + virtmachines=$(virsh list --all | awk '{print$2}'| tail -n +3) + else + virtmachines= + fi for virtmachine in $virtmachines; do echo "undefine $virtmachine" virsh undefine $virtmachine @@ -48,7 +56,7 @@ echo "role list: ${roles_list[@]}" roles_offset=0 host_roles_list='' -tear_down_machines +PRE_CLEAN=true tear_down_machines echo "setup $VIRT_NUM virt machines" for i in `seq $VIRT_NUM`; do From 7d77e607cb5f24bf61e5a904b3d72f3647bb7a63 Mon Sep 17 00:00:00 2001 From: zhaoxinyu Date: Fri, 8 Aug 2014 18:29:28 -0700 Subject: [PATCH 16/23] Make packages in virtualenv take precedance. Duplicate installations of packages in system python environment will take precedance by default and make unforseeable issues, so we declare to use packages in virutalenv first and then system packages. Change-Id: I29a56ffad33dfabec3ea73a84dbdc8e943ca8153 Closes-bug: #1354625 --- misc/apache/compass.wsgi | 3 +++ 1 file changed, 3 insertions(+) diff --git a/misc/apache/compass.wsgi b/misc/apache/compass.wsgi index b39a7b91..5b8b9a24 100755 --- a/misc/apache/compass.wsgi +++ b/misc/apache/compass.wsgi @@ -2,6 +2,9 @@ import site import sys import os + +activate_this='$PythonHome/bin/activate_this.py' +execfile(activate_this, dict(__file__=activate_this)) site.addsitedir('$PythonHome/lib/python2.6/site-packages') sys.path.append('$PythonHome') os.environ['PYTHON_EGG_CACHE'] = '/tmp/.egg' From 9beb06ccf8263daa7b251491443ae471b26aa5c2 Mon Sep 17 00:00:00 2001 From: Weidong Shao Date: Fri, 8 Aug 2014 03:47:51 +0000 Subject: [PATCH 17/23] update readme for general project information compassci recheck Change-Id: If67dc9e62f57213059484ed1abd95789b34ea972 --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 3d2bbb69..3cead5d4 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,16 @@ Compass ======= + A Deoployment Automation System. See Wiki page at https://wiki.openstack.org/wiki/Compass. +Two other related github repos are: + + * compass-web: http://github.com/stackforge/compass-web. The frontend layer of the Compass. It is built with client side MVC model with JavaScript. + * compass-adapters: http://github.com/stackforge/compass-adapters. The add-on modules for Compass adapters. Currently, this hosts Cobbler related data file (kickstart, snippet, etc), and chef cookbooks for OpenStack and other software packages. + +Note: We are currently actively developing an improved version of Compass on dev/experimental branch. The target release date is end of August. + How to install Compass? ----------------------- 1. Run `git clone https://github.com/huawei-cloud/compass` From 9196284948e2b09f7de55e1e66eddbb03658ae44 Mon Sep 17 00:00:00 2001 From: zjizhi Date: Sun, 19 Oct 2014 21:33:21 +0800 Subject: [PATCH 18/23] Implements: Fix the comment error for mac.py of arista plugin Fixes: bug 1386034 Change-Id: I9a20d905eea99980baae781f796a531a8053612b --- compass/hdsdiscovery/vendors/arista/plugins/mac.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compass/hdsdiscovery/vendors/arista/plugins/mac.py b/compass/hdsdiscovery/vendors/arista/plugins/mac.py index ed2f3319..11c83584 100644 --- a/compass/hdsdiscovery/vendors/arista/plugins/mac.py +++ b/compass/hdsdiscovery/vendors/arista/plugins/mac.py @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -"""Pica8 Switch Mac module.""" +"""Arista Switch Mac module.""" from compass.hdsdiscovery.base import BaseSnmpMacPlugin From 396c18774351fdee90a699d99bdb18f634608040 Mon Sep 17 00:00:00 2001 From: xiaodongwang Date: Mon, 20 Oct 2014 14:11:26 -0700 Subject: [PATCH 19/23] merge code from dev/experimental Change-Id: Ic36d93b23a3dcad8a06bda4f685323bbf729a58d --- README.md | 8 - bin/chef/addcookbooks.py | 8 + bin/chef/adddatabags.py | 7 + bin/chef/addroles.py | 9 +- bin/chef/clean_clients.sh | 6 + bin/chef/clean_environments.sh | 13 + bin/chef/clean_nodes.sh | 6 + bin/clean_installation_logs.py | 50 + bin/client.py | 1120 +++-- bin/client.sh | 2 + bin/cobbler/remove_systems.sh | 9 + bin/compass | 6 - bin/compass_check.py | 31 + bin/compass_wsgi.py | 42 + bin/compassd | 43 + bin/delete_clusters.py | 73 + bin/manage_db.py | 253 +- bin/poll_switch.py | 50 +- bin/progress_update.py | 31 +- bin/refresh.sh | 19 +- bin/run_celery.sh | 1 - bin/switch_virtualenv.py.template | 30 + compass/actions/clean_deployment.py | 2 +- compass/actions/clean_installing_progress.py | 49 - compass/actions/cli.py | 13 +- compass/actions/deploy.py | 290 +- compass/actions/health_check/base.py | 28 + compass/actions/health_check/check.py | 4 +- compass/actions/health_check/check_apache.py | 6 +- compass/actions/health_check/check_celery.py | 8 +- compass/actions/health_check/check_dhcp.py | 8 +- compass/actions/health_check/check_dns.py | 8 +- compass/actions/health_check/check_hds.py | 11 +- compass/actions/health_check/check_misc.py | 20 +- .../health_check/check_os_installer.py | 8 +- .../health_check/check_package_installer.py | 104 +- compass/actions/health_check/check_tftp.py | 8 +- compass/actions/health_check/setting.py | 8 + compass/actions/health_check/utils.py | 21 + compass/actions/poll_switch.py | 193 +- compass/actions/reinstall.py | 11 +- compass/actions/search.py | 2 +- compass/actions/update_progress.py | 295 +- compass/actions/util.py | 90 +- compass/api/__init__.py | 39 +- compass/api/api.py | 3822 ++++++++++------- compass/api/auth.py | 47 - compass/api/auth_handler.py | 49 + compass/api/errors.py | 145 - compass/api/exception_handler.py | 95 + compass/api/util.py | 411 -- compass/api/utils.py | 35 + .../update_progress => api/v1}/__init__.py | 0 compass/api/v1/api.py | 248 ++ compass/apiclient/example.py | 580 ++- compass/apiclient/restful.py | 1473 ++++--- .../installers => apiclient/v1}/__init__.py | 0 compass/apiclient/v1/example.py | 305 ++ compass/apiclient/v1/restful.py | 656 +++ .../config_management/installers/__init__.py | 43 - .../config_management/installers/installer.py | 146 - .../installers/os_installer.py | 78 - .../installers/package_installer.py | 101 - .../installers/plugins/chefhandler.py | 467 -- .../installers/plugins/cobbler.py | 290 -- .../config_management/providers/__init__.py | 33 - .../providers/config_provider.py | 231 - .../providers/plugins/db_config_provider.py | 314 -- .../providers/plugins/file_config_provider.py | 99 - .../providers/plugins/mix_config_provider.py | 111 - .../config_management/utils/config_filter.py | 154 - .../config_management/utils/config_manager.py | 687 --- .../config_management/utils/config_merger.py | 351 -- .../utils/config_merger_callbacks.py | 607 --- .../utils/config_reference.py | 343 -- .../utils/config_translator.py | 329 -- .../utils/config_translator_callbacks.py | 245 -- compass/db/api/__init__.py | 13 + compass/db/api/adapter.py | 197 + compass/db/api/adapter_holder.py | 130 + compass/db/api/cluster.py | 1707 ++++++++ compass/db/api/database.py | 314 ++ compass/db/api/host.py | 919 ++++ compass/db/api/installer.py | 53 + compass/db/api/machine.py | 212 + compass/db/api/metadata.py | 505 +++ compass/db/api/metadata_holder.py | 227 + compass/db/api/network.py | 128 + compass/db/api/permission.py | 309 ++ compass/db/api/switch.py | 835 ++++ compass/db/api/user.py | 478 +++ compass/db/api/user_log.py | 80 + compass/db/api/utils.py | 733 ++++ compass/db/callback.py | 204 + compass/db/config_validation/__init__.py | 0 .../db/config_validation/default_validator.py | 129 + .../config_validation/extension/__init__.py | 0 .../config_validation/extension/openstack.py | 18 + compass/db/database.py | 130 - compass/db/exception.py | 110 + compass/db/models.py | 2655 ++++++++++++ compass/db/{ => v1}/model.py | 17 +- compass/db/validator.py | 119 + compass/deployment/__init__.py | 15 + compass/deployment/deploy_manager.py | 191 + compass/deployment/installers/__init__.py | 21 + .../deployment/installers/config_manager.py | 383 ++ compass/deployment/installers/installer.py | 245 ++ .../installers/os_installers/__init__.py | 13 + .../os_installers/cobbler/__init__.py | 13 + .../os_installers/cobbler/cobbler.py | 410 ++ .../installers/pk_installers/__init__.py | 13 + .../pk_installers/chef_installer/__init__.py | 0 .../chef_installer/chef_installer.py | 606 +++ compass/deployment/utils/__init__.py | 15 + compass/deployment/utils/constants.py | 80 + compass/hdsdiscovery/hdmanager.py | 12 +- .../vendors/appliance/__init__.py | 13 - .../vendors/appliance/plugins/mac.py | 20 +- .../hdsdiscovery/vendors/arista}/__init__.py | 0 .../vendors/arista/arista.py} | 28 +- .../vendors/arista/plugins}/__init__.py | 0 .../vendors/arista/plugins/mac.py | 24 + compass/log_analyzor/adapter_matcher.py | 347 +- compass/log_analyzor/file_matcher.py | 240 +- compass/log_analyzor/line_matcher.py | 68 +- compass/log_analyzor/progress_calculator.py | 899 ++-- compass/static/css/bootstrap.min.css | 9 - .../static/img/glyphicons-halflings-white.png | Bin 8777 -> 0 bytes compass/static/img/glyphicons-halflings.png | Bin 12799 -> 0 bytes compass/static/js/bootstrap.min.js | 6 - compass/static/js/jquery-1.8.3.min.js | 2 - compass/tasks/tasks.py | 114 +- compass/templates/forbidden.jinja | 10 - compass/templates/index.jinja | 12 - compass/templates/layout.jinja | 39 - compass/templates/login.jinja | 19 - compass/templates/macros.jinja | 13 - compass/templates/restricted.jinja | 9 - compass/tests/actions/deploy/__init__.py | 13 + .../tests/actions/deploy/data/global_config | 64 - .../tests/actions/deploy/data/global_config2 | 64 - compass/tests/actions/deploy/data/test1 | 305 -- compass/tests/actions/deploy/data/test2 | 360 -- compass/tests/actions/deploy/data/test3 | 600 --- compass/tests/actions/deploy/data/test4 | 267 -- compass/tests/actions/deploy/data/test5 | 340 -- compass/tests/actions/deploy/data/test6 | 780 ---- compass/tests/actions/deploy/data/test7 | 904 ---- compass/tests/actions/deploy/test_deploy.py | 594 +-- compass/tests/actions/test_poll_switch.py | 126 - .../update_progress/data/global_config | 62 - .../checkpoint_1/server1.1/sys.log.template | 1726 -------- .../server1.1/anaconda.log.template | 61 - .../checkpoint_2/server1.1/sys.log.template | 1726 -------- .../server1.1/anaconda.log.template | 286 -- .../server1.1/install.log.template | 141 - .../checkpoint_3/server1.1/sys.log.template | 1726 -------- .../server1.1/anaconda.log.template | 286 -- .../server1.1/chef-client.log.template | 18 - .../server1.1/install.log.template | 212 - .../checkpoint_4/server1.1/sys.log.template | 1726 -------- .../server1.1/anaconda.log.template | 286 -- .../server1.1/chef-client.log.template | 422 -- .../server1.1/install.log.template | 212 - .../checkpoint_5/server1.1/sys.log.template | 1726 -------- .../actions/update_progress/data/test1/test1 | 182 - .../checkpoint_1/server1.1/sys.log.template | 1726 -------- .../checkpoint_1/server2.1/sys.log.template | 1628 ------- .../server1.1/anaconda.log.template | 223 - .../checkpoint_2/server1.1/sys.log.template | 1726 -------- .../server2.1/anaconda.log.template | 222 - .../checkpoint_2/server2.1/sys.log.template | 1628 ------- .../server1.1/anaconda.log.template | 286 -- .../server1.1/install.log.template | 212 - .../checkpoint_3/server1.1/sys.log.template | 1726 -------- .../server2.1/anaconda.log.template | 280 -- .../server2.1/install.log.template | 212 - .../checkpoint_3/server2.1/sys.log.template | 1628 ------- .../server1.1/anaconda.log.template | 286 -- .../server1.1/chef-client.log.template | 168 - .../server1.1/install.log.template | 212 - .../checkpoint_4/server1.1/sys.log.template | 1726 -------- .../server2.1/anaconda.log.template | 280 -- .../server2.1/chef-client.log.template | 342 -- .../server2.1/install.log.template | 212 - .../checkpoint_4/server2.1/sys.log.template | 1628 ------- .../server1.1/anaconda.log.template | 286 -- .../server1.1/chef-client.log.template | 422 -- .../server1.1/install.log.template | 212 - .../checkpoint_5/server1.1/sys.log.template | 1726 -------- .../server2.1/anaconda.log.template | 280 -- .../server2.1/chef-client.log.template | 446 -- .../server2.1/install.log.template | 212 - .../checkpoint_5/server2.1/sys.log.template | 1628 ------- .../actions/update_progress/data/test2/test2 | 224 - .../update_progress/test_update_progress.py | 255 -- compass/tests/api/__init__.py | 13 - compass/tests/api/data/adapter/ceph.conf | 3 + compass/tests/api/data/adapter/chef_ceph.conf | 7 + .../api/data/adapter/chef_openstack.conf | 7 + compass/tests/api/data/adapter/general.conf | 1 + compass/tests/api/data/adapter/openstack.conf | 4 + compass/tests/api/data/adapter/os_only.conf | 5 + .../api/data/distributed_system/ceph.conf | 3 + .../api/data/distributed_system/general.conf | 2 + .../data/distributed_system/openstack.conf | 3 + .../tests/api/data/flavor/openstack_chef.conf | 16 + compass/tests/api/data/os/centos.conf | 2 + compass/tests/api/data/os/centos6.5.conf | 3 + compass/tests/api/data/os/general.conf | 2 + compass/tests/api/data/os/ubuntu.conf | 2 + compass/tests/api/data/os/ubuntu12.04.conf | 3 + compass/tests/api/data/os_field/dns.conf | 2 + compass/tests/api/data/os_field/gateway.conf | 2 + compass/tests/api/data/os_field/general.conf | 1 + .../tests/api/data/os_field/general_list.conf | 2 + compass/tests/api/data/os_field/ip.conf | 2 + compass/tests/api/data/os_field/netmask.conf | 2 + compass/tests/api/data/os_field/network.conf | 2 + compass/tests/api/data/os_field/password.conf | 3 + .../tests/api/data/os_field/percentage.conf | 3 + compass/tests/api/data/os_field/size.conf | 2 + compass/tests/api/data/os_field/username.conf | 3 + .../tests/api/data/os_installer/cobbler.conf | 9 + .../tests/api/data/os_metadata/general.conf | 169 + compass/tests/api/data/package_field/dns.conf | 2 + .../tests/api/data/package_field/gateway.conf | 2 + .../tests/api/data/package_field/general.conf | 1 + compass/tests/api/data/package_field/ip.conf | 2 + .../tests/api/data/package_field/netmask.conf | 2 + .../tests/api/data/package_field/network.conf | 2 + .../api/data/package_field/password.conf | 3 + .../api/data/package_field/percentage.conf | 3 + .../tests/api/data/package_field/roles.conf | 3 + .../tests/api/data/package_field/size.conf | 2 + .../api/data/package_field/username.conf | 3 + .../data/package_installer/chef-icehouse.conf | 8 + .../api/data/package_metadata/openstack.conf | 58 + .../tests/api/data/role/openstack_chef.conf | 44 + compass/tests/api/expected_csv/adapter.csv | 2 - compass/tests/api/expected_csv/cluster.csv | 3 - .../tests/api/expected_csv/cluster_host.csv | 7 - compass/tests/api/expected_csv/machine.csv | 12 - compass/tests/api/expected_csv/role.csv | 2 - compass/tests/api/expected_csv/switch.csv | 5 - .../tests/api/expected_csv/switch_config.csv | 3 - compass/tests/api/test_api.py | 2287 ++++------ compass/tests/api/test_auth.py | 126 - compass/tests/apicommand/run_server.py | 297 -- compass/tests/apicommand/test_csvdeploy.py | 171 - .../tests/apicommand/test_files/adapter.csv | 2 - .../tests/apicommand/test_files/cluster.csv | 4 - .../apicommand/test_files/cluster_host.csv | 12 - .../tests/apicommand/test_files/machine.csv | 12 - compass/tests/apicommand/test_files/role.csv | 2 - .../tests/apicommand/test_files/switch.csv | 5 - .../apicommand/test_files/switch_config.csv | 3 - .../installers/test_os_installer.py | 88 - .../installers/test_package_installer.py | 89 - .../config_management/providers/__init__.py | 13 - .../providers/test_config_provider.py | 89 - compass/tests/config_management/utils/1 | 300 -- .../tests/config_management/utils/__init__.py | 13 - .../utils/test_config_filter.py | 168 - .../utils/test_config_merger.py | 578 --- .../utils/test_config_merger_callbacks.py | 767 ---- .../utils/test_config_reference.py | 353 -- .../utils/test_config_translator.py | 568 --- .../utils/test_config_translator_callbacks.py | 103 - .../plugins => tests/db}/__init__.py | 0 compass/tests/db/api/__init__.py | 0 compass/tests/db/api/base.py | 62 + compass/tests/db/api/data/adapter/ceph.conf | 3 + .../tests/db/api/data/adapter/chef_ceph.conf | 7 + .../db/api/data/adapter/chef_openstack.conf | 7 + .../tests/db/api/data/adapter/general.conf | 1 + .../tests/db/api/data/adapter/openstack.conf | 4 + .../tests/db/api/data/adapter/os_only.conf | 5 + .../db/api/data/distributed_system/ceph.conf | 3 + .../api/data/distributed_system/general.conf | 2 + .../data/distributed_system/openstack.conf | 3 + .../db/api/data/flavor/openstack_chef.conf | 16 + compass/tests/db/api/data/os/centos.conf | 2 + compass/tests/db/api/data/os/centos6.5.conf | 3 + compass/tests/db/api/data/os/general.conf | 2 + compass/tests/db/api/data/os/ubuntu.conf | 2 + compass/tests/db/api/data/os/ubuntu12.04.conf | 3 + compass/tests/db/api/data/os_field/dns.conf | 2 + .../tests/db/api/data/os_field/gateway.conf | 2 + .../tests/db/api/data/os_field/general.conf | 1 + .../db/api/data/os_field/general_list.conf | 2 + compass/tests/db/api/data/os_field/ip.conf | 2 + .../tests/db/api/data/os_field/netmask.conf | 2 + .../tests/db/api/data/os_field/network.conf | 2 + .../tests/db/api/data/os_field/password.conf | 3 + .../db/api/data/os_field/percentage.conf | 3 + compass/tests/db/api/data/os_field/size.conf | 2 + .../tests/db/api/data/os_field/username.conf | 3 + .../db/api/data/os_installer/cobbler.conf | 9 + .../db/api/data/os_metadata/general.conf | 169 + .../db/api/data/package_field/anytype.conf | 2 + .../tests/db/api/data/package_field/dns.conf | 2 + .../db/api/data/package_field/gateway.conf | 2 + .../db/api/data/package_field/general.conf | 1 + .../tests/db/api/data/package_field/ip.conf | 2 + .../db/api/data/package_field/netmask.conf | 2 + .../db/api/data/package_field/network.conf | 2 + .../db/api/data/package_field/password.conf | 3 + .../db/api/data/package_field/percentage.conf | 3 + .../db/api/data/package_field/roles.conf | 3 + .../tests/db/api/data/package_field/size.conf | 2 + .../db/api/data/package_field/username.conf | 3 + .../data/package_installer/chef-icehouse.conf | 8 + .../api/data/package_metadata/openstack.conf | 71 + .../db/api/data/role/openstack_chef.conf | 44 + compass/tests/db/api/test_adapter_holder.py | 149 + compass/tests/db/api/test_cluster.py | 1981 +++++++++ compass/tests/db/api/test_host.py | 1319 ++++++ compass/tests/db/api/test_machine.py | 163 + compass/tests/db/api/test_metadata_holder.py | 268 ++ compass/tests/db/api/test_network.py | 185 + .../test_permission.py} | 48 +- compass/tests/db/api/test_switch.py | 754 ++++ compass/tests/db/api/test_user.py | 356 ++ compass/tests/db/api/test_user_log.py | 141 + compass/tests/db/api/test_utils.py | 671 +++ compass/tests/db/test_model.py | 522 --- compass/tests/deployment/__init__.py | 13 + .../tests/deployment/installers/__init__.py | 13 + .../installers/os_installers/__init__.py | 13 + .../os_installers/cobbler/__init__.py | 13 + .../os_installers/cobbler/test_cobbler.py | 293 ++ .../installers/pk_installers/__init__.py | 13 + .../pk_installers/chef_installer/__init__.py | 13 + .../pk_installers/chef_installer/test_chef.py | 505 +++ .../installers/test_config_manager.py | 201 + .../deployment/installers/test_installer.py | 50 + .../tests/deployment/test_data/__init__.py | 13 + .../tests/deployment/test_data/config_data.py | 483 +++ .../databags/db_passwords.tmpl | 18 + .../openstack_icehouse/databags/secrets.tmpl | 8 + .../databags/service_passwords.tmpl | 20 + .../databags/user_passwords.tmpl | 16 + .../environments/multinodes.tmpl | 91 + .../nodes/os_compute_worker.tmpl | 11 + .../cobbler/Ubuntu-12.04-x86_64/system.tmpl | 57 + .../tests/deployment/test_deploy_manager.py | 62 + compass/tests/hdsdiscovery/__init__.py | 13 - compass/tests/hdsdiscovery/test_base.py | 129 - .../tests/hdsdiscovery/test_hdsdiscovery.py | 246 -- compass/tests/hdsdiscovery/test_utils.py | 105 - compass/tests/log_analyzor/data/config | 97 - .../log_analyzor/test_adapter_matcher.py | 629 --- .../tests/log_analyzor/test_file_matcher.py | 436 -- .../tests/log_analyzor/test_line_matcher.py | 229 - .../data/test_load_conf/test_load_conf1.conf} | 2 + .../test_load_confs/test_load_conf1.conf} | 2 + .../test_load_confs/test_load_conf2.conf} | 1 + .../data/test_no_suffix/test_no_suffix} | 2 + compass/tests/utils/test_util.py | 355 +- compass/tests_serverside/__init__.py | 13 + .../tests_serverside/deployment/__init__.py | 13 + .../deployment/installers/__init__.py | 13 + .../installers/pk_installers/__init__.py | 13 + .../pk_installers/chef_installer/__init__.py | 13 + .../chef_installer/test_chef_installer.py | 261 ++ compass/utils/celeryconfig_wrapper.py | 4 +- compass/utils/logsetting.py | 6 + compass/utils/setting_wrapper.py | 104 +- compass/utils/util.py | 417 +- conf/adapter/ceph.conf | 3 + conf/adapter/chef_ceph.conf | 7 + conf/adapter/chef_ceph_openstack.conf | 8 + conf/adapter/chef_openstack.conf | 7 + conf/adapter/general.conf | 1 + conf/adapter/openstack.conf | 4 + conf/adapter/os_only.conf | 5 + conf/compassd | 161 - conf/distributed_system/ceph.conf | 3 + conf/distributed_system/general.conf | 2 + conf/distributed_system/openstack.conf | 3 + conf/distributed_system/openstack_ceph.conf | 3 + conf/flavor/ceph_firefly.conf | 9 + conf/flavor/chef_ceph_openstack.conf | 22 + conf/flavor/openstack_chef.conf | 25 + conf/global_config | 64 - conf/mac_list/mac_list.conf | 42 + conf/os/centos.conf | 2 + conf/os/centos6.5.conf | 3 + conf/os/general.conf | 2 + conf/os/ubuntu.conf | 2 + conf/os/ubuntu12.04.conf | 3 + conf/os_field/dns.conf | 2 + conf/os_field/gateway.conf | 2 + conf/os_field/general.conf | 1 + conf/os_field/general_list.conf | 2 + conf/os_field/ip.conf | 2 + conf/os_field/netmask.conf | 2 + conf/os_field/network.conf | 2 + conf/os_field/password.conf | 3 + conf/os_field/percentage.conf | 3 + conf/os_field/size.conf | 2 + conf/os_field/username.conf | 3 + conf/os_installer/cobbler.conf | 9 + conf/os_metadata/general.conf | 160 + conf/package_field/anytype.conf | 2 + conf/package_field/dns.conf | 2 + conf/package_field/gateway.conf | 2 + conf/package_field/general.conf | 1 + conf/package_field/integer.conf | 2 + conf/package_field/ip.conf | 2 + conf/package_field/netmask.conf | 2 + conf/package_field/network.conf | 2 + conf/package_field/password.conf | 3 + conf/package_field/percentage.conf | 3 + conf/package_field/roles.conf | 3 + conf/package_field/size.conf | 2 + conf/package_field/username.conf | 3 + conf/package_installer/chef-icehouse.conf | 10 + conf/package_metadata/ceph.conf | 79 + conf/package_metadata/ceph_openstack.conf | 99 + conf/package_metadata/openstack.conf | 93 + conf/role/ceph.conf | 21 + conf/role/chef_ceph_openstack.conf | 81 + conf/role/openstack_chef.conf | 69 + conf/setting | 35 +- conf/switch_list/switch_list.conf | 3 + .../environments/ceph_firefly.tmpl | 69 + .../environments/ha_multinodes.tmpl | 407 ++ .../environments/multinodes.tmpl | 463 ++ .../databags/db_passwords.tmpl | 29 + .../openstack_icehouse/databags/secrets.tmpl | 8 + .../databags/service_passwords.tmpl | 20 + .../databags/user_passwords.tmpl | 5 + .../environments/allinone.tmpl | 334 ++ .../environments/multinodes.tmpl | 370 ++ .../nodes/os_compute_worker.tmpl | 9 + .../cobbler/CentOS-6.5-x86_64/system.tmpl | 65 + .../cobbler/Ubuntu-12.04-x86_64/system.tmpl | 65 + install/chef.sh | 74 +- install/cobbler.sh | 90 +- install/compass.sh | 134 +- install/compass_web.sh | 43 + install/dependency.sh | 5 +- install/install.conf | 18 +- install/install.conf.template | 36 +- install/install.sh | 104 +- install/install_func.sh | 218 + install/prepare.sh | 187 +- install/setup_env.sh | 14 + misc/apache/compass.wsgi | 19 - misc/apache/ods-server | 18 - misc/apache/ods-server.conf | 18 + misc/ci/pxe-deploy.sh | 1 + misc/ci/pxe-prepare.sh | 6 +- misc/ci/tempest_run.sh | 10 - misc/ci/test-install.sh | 4 +- misc/rsyslog/rsyslog.conf | 6 +- misc/squid/squid.conf | 14 +- regtest/regtest.conf | 133 +- regtest/regtest.sh | 97 +- regtest/regtest10.conf | 18 + regtest/regtest2.conf | 19 +- regtest/regtest3.conf | 20 +- regtest/regtest4.conf | 21 +- regtest/regtest5.conf | 18 +- regtest/regtest6.conf | 24 +- regtest/regtest7.conf | 24 +- regtest/regtest8.conf | 14 + regtest/regtest9.conf | 18 + regtest/regtest_dashboard.conf | 10 - requirements.txt | 34 +- service/compass-celeryd | 97 + service/compass-progress-updated | 95 + setup.py | 3 - test-requirements.txt | 2 +- tools/install_venv.py | 73 - tools/install_venv_common.py | 172 - tools/with_venv.sh | 7 - 480 files changed, 34364 insertions(+), 55937 deletions(-) create mode 100755 bin/chef/clean_clients.sh create mode 100755 bin/chef/clean_environments.sh create mode 100755 bin/chef/clean_nodes.sh create mode 100755 bin/clean_installation_logs.py create mode 100755 bin/client.sh create mode 100755 bin/cobbler/remove_systems.sh delete mode 100755 bin/compass create mode 100755 bin/compass_check.py create mode 100755 bin/compass_wsgi.py create mode 100755 bin/compassd create mode 100755 bin/delete_clusters.py delete mode 100755 bin/run_celery.sh create mode 100755 bin/switch_virtualenv.py.template delete mode 100644 compass/actions/clean_installing_progress.py delete mode 100644 compass/api/auth.py create mode 100644 compass/api/auth_handler.py delete mode 100644 compass/api/errors.py create mode 100644 compass/api/exception_handler.py delete mode 100644 compass/api/util.py create mode 100644 compass/api/utils.py rename compass/{tests/actions/update_progress => api/v1}/__init__.py (100%) create mode 100644 compass/api/v1/api.py rename compass/{tests/config_management/installers => apiclient/v1}/__init__.py (100%) create mode 100755 compass/apiclient/v1/example.py create mode 100644 compass/apiclient/v1/restful.py delete mode 100644 compass/config_management/installers/__init__.py delete mode 100644 compass/config_management/installers/installer.py delete mode 100644 compass/config_management/installers/os_installer.py delete mode 100644 compass/config_management/installers/package_installer.py delete mode 100644 compass/config_management/installers/plugins/chefhandler.py delete mode 100644 compass/config_management/installers/plugins/cobbler.py delete mode 100644 compass/config_management/providers/__init__.py delete mode 100644 compass/config_management/providers/config_provider.py delete mode 100644 compass/config_management/providers/plugins/db_config_provider.py delete mode 100644 compass/config_management/providers/plugins/file_config_provider.py delete mode 100644 compass/config_management/providers/plugins/mix_config_provider.py delete mode 100644 compass/config_management/utils/config_filter.py delete mode 100644 compass/config_management/utils/config_manager.py delete mode 100644 compass/config_management/utils/config_merger.py delete mode 100644 compass/config_management/utils/config_merger_callbacks.py delete mode 100644 compass/config_management/utils/config_reference.py delete mode 100644 compass/config_management/utils/config_translator.py delete mode 100644 compass/config_management/utils/config_translator_callbacks.py create mode 100644 compass/db/api/__init__.py create mode 100644 compass/db/api/adapter.py create mode 100644 compass/db/api/adapter_holder.py create mode 100644 compass/db/api/cluster.py create mode 100644 compass/db/api/database.py create mode 100644 compass/db/api/host.py create mode 100644 compass/db/api/installer.py create mode 100644 compass/db/api/machine.py create mode 100644 compass/db/api/metadata.py create mode 100644 compass/db/api/metadata_holder.py create mode 100644 compass/db/api/network.py create mode 100644 compass/db/api/permission.py create mode 100644 compass/db/api/switch.py create mode 100644 compass/db/api/user.py create mode 100644 compass/db/api/user_log.py create mode 100644 compass/db/api/utils.py create mode 100644 compass/db/callback.py create mode 100644 compass/db/config_validation/__init__.py create mode 100644 compass/db/config_validation/default_validator.py create mode 100644 compass/db/config_validation/extension/__init__.py create mode 100644 compass/db/config_validation/extension/openstack.py delete mode 100644 compass/db/database.py create mode 100644 compass/db/exception.py create mode 100644 compass/db/models.py rename compass/db/{ => v1}/model.py (97%) create mode 100644 compass/db/validator.py create mode 100644 compass/deployment/__init__.py create mode 100644 compass/deployment/deploy_manager.py create mode 100644 compass/deployment/installers/__init__.py create mode 100644 compass/deployment/installers/config_manager.py create mode 100644 compass/deployment/installers/installer.py create mode 100644 compass/deployment/installers/os_installers/__init__.py create mode 100644 compass/deployment/installers/os_installers/cobbler/__init__.py create mode 100644 compass/deployment/installers/os_installers/cobbler/cobbler.py create mode 100644 compass/deployment/installers/pk_installers/__init__.py create mode 100644 compass/deployment/installers/pk_installers/chef_installer/__init__.py create mode 100644 compass/deployment/installers/pk_installers/chef_installer/chef_installer.py create mode 100644 compass/deployment/utils/__init__.py create mode 100644 compass/deployment/utils/constants.py rename {bin => compass/hdsdiscovery/vendors/arista}/__init__.py (100%) rename compass/{config_management/utils/config_filter_callbacks.py => hdsdiscovery/vendors/arista/arista.py} (58%) rename compass/{config_management => hdsdiscovery/vendors/arista/plugins}/__init__.py (100%) create mode 100644 compass/hdsdiscovery/vendors/arista/plugins/mac.py delete mode 100644 compass/static/css/bootstrap.min.css delete mode 100644 compass/static/img/glyphicons-halflings-white.png delete mode 100644 compass/static/img/glyphicons-halflings.png delete mode 100644 compass/static/js/bootstrap.min.js delete mode 100644 compass/static/js/jquery-1.8.3.min.js delete mode 100644 compass/templates/forbidden.jinja delete mode 100644 compass/templates/index.jinja delete mode 100644 compass/templates/layout.jinja delete mode 100644 compass/templates/login.jinja delete mode 100644 compass/templates/macros.jinja delete mode 100644 compass/templates/restricted.jinja delete mode 100644 compass/tests/actions/deploy/data/global_config delete mode 100644 compass/tests/actions/deploy/data/global_config2 delete mode 100644 compass/tests/actions/deploy/data/test1 delete mode 100644 compass/tests/actions/deploy/data/test2 delete mode 100644 compass/tests/actions/deploy/data/test3 delete mode 100644 compass/tests/actions/deploy/data/test4 delete mode 100644 compass/tests/actions/deploy/data/test5 delete mode 100644 compass/tests/actions/deploy/data/test6 delete mode 100644 compass/tests/actions/deploy/data/test7 mode change 100755 => 100644 compass/tests/actions/deploy/test_deploy.py delete mode 100755 compass/tests/actions/test_poll_switch.py delete mode 100644 compass/tests/actions/update_progress/data/global_config delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_1/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_2/server1.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_2/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/install.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/chef-client.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/install.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/chef-client.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/install.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test1/test1 delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_1/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_1/server2.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server1.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server2.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server2.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/install.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/install.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/chef-client.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/install.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/chef-client.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/install.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/chef-client.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/install.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/anaconda.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/chef-client.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/install.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/sys.log.template delete mode 100644 compass/tests/actions/update_progress/data/test2/test2 delete mode 100644 compass/tests/actions/update_progress/test_update_progress.py create mode 100644 compass/tests/api/data/adapter/ceph.conf create mode 100644 compass/tests/api/data/adapter/chef_ceph.conf create mode 100644 compass/tests/api/data/adapter/chef_openstack.conf create mode 100644 compass/tests/api/data/adapter/general.conf create mode 100644 compass/tests/api/data/adapter/openstack.conf create mode 100644 compass/tests/api/data/adapter/os_only.conf create mode 100644 compass/tests/api/data/distributed_system/ceph.conf create mode 100644 compass/tests/api/data/distributed_system/general.conf create mode 100644 compass/tests/api/data/distributed_system/openstack.conf create mode 100644 compass/tests/api/data/flavor/openstack_chef.conf create mode 100644 compass/tests/api/data/os/centos.conf create mode 100644 compass/tests/api/data/os/centos6.5.conf create mode 100644 compass/tests/api/data/os/general.conf create mode 100644 compass/tests/api/data/os/ubuntu.conf create mode 100644 compass/tests/api/data/os/ubuntu12.04.conf create mode 100644 compass/tests/api/data/os_field/dns.conf create mode 100644 compass/tests/api/data/os_field/gateway.conf create mode 100644 compass/tests/api/data/os_field/general.conf create mode 100644 compass/tests/api/data/os_field/general_list.conf create mode 100644 compass/tests/api/data/os_field/ip.conf create mode 100644 compass/tests/api/data/os_field/netmask.conf create mode 100644 compass/tests/api/data/os_field/network.conf create mode 100644 compass/tests/api/data/os_field/password.conf create mode 100644 compass/tests/api/data/os_field/percentage.conf create mode 100644 compass/tests/api/data/os_field/size.conf create mode 100644 compass/tests/api/data/os_field/username.conf create mode 100644 compass/tests/api/data/os_installer/cobbler.conf create mode 100644 compass/tests/api/data/os_metadata/general.conf create mode 100644 compass/tests/api/data/package_field/dns.conf create mode 100644 compass/tests/api/data/package_field/gateway.conf create mode 100644 compass/tests/api/data/package_field/general.conf create mode 100644 compass/tests/api/data/package_field/ip.conf create mode 100644 compass/tests/api/data/package_field/netmask.conf create mode 100644 compass/tests/api/data/package_field/network.conf create mode 100644 compass/tests/api/data/package_field/password.conf create mode 100644 compass/tests/api/data/package_field/percentage.conf create mode 100644 compass/tests/api/data/package_field/roles.conf create mode 100644 compass/tests/api/data/package_field/size.conf create mode 100644 compass/tests/api/data/package_field/username.conf create mode 100644 compass/tests/api/data/package_installer/chef-icehouse.conf create mode 100644 compass/tests/api/data/package_metadata/openstack.conf create mode 100644 compass/tests/api/data/role/openstack_chef.conf delete mode 100644 compass/tests/api/expected_csv/adapter.csv delete mode 100644 compass/tests/api/expected_csv/cluster.csv delete mode 100644 compass/tests/api/expected_csv/cluster_host.csv delete mode 100644 compass/tests/api/expected_csv/machine.csv delete mode 100644 compass/tests/api/expected_csv/role.csv delete mode 100644 compass/tests/api/expected_csv/switch.csv delete mode 100644 compass/tests/api/expected_csv/switch_config.csv mode change 100755 => 100644 compass/tests/api/test_api.py delete mode 100644 compass/tests/api/test_auth.py delete mode 100755 compass/tests/apicommand/run_server.py delete mode 100755 compass/tests/apicommand/test_csvdeploy.py delete mode 100644 compass/tests/apicommand/test_files/adapter.csv delete mode 100644 compass/tests/apicommand/test_files/cluster.csv delete mode 100644 compass/tests/apicommand/test_files/cluster_host.csv delete mode 100644 compass/tests/apicommand/test_files/machine.csv delete mode 100644 compass/tests/apicommand/test_files/role.csv delete mode 100644 compass/tests/apicommand/test_files/switch.csv delete mode 100644 compass/tests/apicommand/test_files/switch_config.csv delete mode 100755 compass/tests/config_management/installers/test_os_installer.py delete mode 100755 compass/tests/config_management/installers/test_package_installer.py delete mode 100644 compass/tests/config_management/providers/__init__.py delete mode 100755 compass/tests/config_management/providers/test_config_provider.py delete mode 100644 compass/tests/config_management/utils/1 delete mode 100644 compass/tests/config_management/utils/__init__.py delete mode 100755 compass/tests/config_management/utils/test_config_filter.py delete mode 100755 compass/tests/config_management/utils/test_config_merger.py delete mode 100755 compass/tests/config_management/utils/test_config_merger_callbacks.py delete mode 100755 compass/tests/config_management/utils/test_config_reference.py delete mode 100755 compass/tests/config_management/utils/test_config_translator.py delete mode 100644 compass/tests/config_management/utils/test_config_translator_callbacks.py rename compass/{config_management/installers/plugins => tests/db}/__init__.py (100%) create mode 100644 compass/tests/db/api/__init__.py create mode 100644 compass/tests/db/api/base.py create mode 100644 compass/tests/db/api/data/adapter/ceph.conf create mode 100644 compass/tests/db/api/data/adapter/chef_ceph.conf create mode 100644 compass/tests/db/api/data/adapter/chef_openstack.conf create mode 100644 compass/tests/db/api/data/adapter/general.conf create mode 100644 compass/tests/db/api/data/adapter/openstack.conf create mode 100644 compass/tests/db/api/data/adapter/os_only.conf create mode 100644 compass/tests/db/api/data/distributed_system/ceph.conf create mode 100644 compass/tests/db/api/data/distributed_system/general.conf create mode 100644 compass/tests/db/api/data/distributed_system/openstack.conf create mode 100644 compass/tests/db/api/data/flavor/openstack_chef.conf create mode 100644 compass/tests/db/api/data/os/centos.conf create mode 100644 compass/tests/db/api/data/os/centos6.5.conf create mode 100644 compass/tests/db/api/data/os/general.conf create mode 100644 compass/tests/db/api/data/os/ubuntu.conf create mode 100644 compass/tests/db/api/data/os/ubuntu12.04.conf create mode 100644 compass/tests/db/api/data/os_field/dns.conf create mode 100644 compass/tests/db/api/data/os_field/gateway.conf create mode 100644 compass/tests/db/api/data/os_field/general.conf create mode 100644 compass/tests/db/api/data/os_field/general_list.conf create mode 100644 compass/tests/db/api/data/os_field/ip.conf create mode 100644 compass/tests/db/api/data/os_field/netmask.conf create mode 100644 compass/tests/db/api/data/os_field/network.conf create mode 100644 compass/tests/db/api/data/os_field/password.conf create mode 100644 compass/tests/db/api/data/os_field/percentage.conf create mode 100644 compass/tests/db/api/data/os_field/size.conf create mode 100644 compass/tests/db/api/data/os_field/username.conf create mode 100644 compass/tests/db/api/data/os_installer/cobbler.conf create mode 100644 compass/tests/db/api/data/os_metadata/general.conf create mode 100644 compass/tests/db/api/data/package_field/anytype.conf create mode 100644 compass/tests/db/api/data/package_field/dns.conf create mode 100644 compass/tests/db/api/data/package_field/gateway.conf create mode 100644 compass/tests/db/api/data/package_field/general.conf create mode 100644 compass/tests/db/api/data/package_field/ip.conf create mode 100644 compass/tests/db/api/data/package_field/netmask.conf create mode 100644 compass/tests/db/api/data/package_field/network.conf create mode 100644 compass/tests/db/api/data/package_field/password.conf create mode 100644 compass/tests/db/api/data/package_field/percentage.conf create mode 100644 compass/tests/db/api/data/package_field/roles.conf create mode 100644 compass/tests/db/api/data/package_field/size.conf create mode 100644 compass/tests/db/api/data/package_field/username.conf create mode 100644 compass/tests/db/api/data/package_installer/chef-icehouse.conf create mode 100644 compass/tests/db/api/data/package_metadata/openstack.conf create mode 100644 compass/tests/db/api/data/role/openstack_chef.conf create mode 100644 compass/tests/db/api/test_adapter_holder.py create mode 100644 compass/tests/db/api/test_cluster.py create mode 100644 compass/tests/db/api/test_host.py create mode 100644 compass/tests/db/api/test_machine.py create mode 100644 compass/tests/db/api/test_metadata_holder.py create mode 100644 compass/tests/db/api/test_network.py rename compass/tests/db/{test_database.py => api/test_permission.py} (51%) create mode 100644 compass/tests/db/api/test_switch.py create mode 100644 compass/tests/db/api/test_user.py create mode 100644 compass/tests/db/api/test_user_log.py create mode 100644 compass/tests/db/api/test_utils.py delete mode 100644 compass/tests/db/test_model.py create mode 100644 compass/tests/deployment/__init__.py create mode 100644 compass/tests/deployment/installers/__init__.py create mode 100644 compass/tests/deployment/installers/os_installers/__init__.py create mode 100644 compass/tests/deployment/installers/os_installers/cobbler/__init__.py create mode 100644 compass/tests/deployment/installers/os_installers/cobbler/test_cobbler.py create mode 100644 compass/tests/deployment/installers/pk_installers/__init__.py create mode 100644 compass/tests/deployment/installers/pk_installers/chef_installer/__init__.py create mode 100644 compass/tests/deployment/installers/pk_installers/chef_installer/test_chef.py create mode 100644 compass/tests/deployment/installers/test_config_manager.py create mode 100644 compass/tests/deployment/installers/test_installer.py create mode 100644 compass/tests/deployment/test_data/__init__.py create mode 100644 compass/tests/deployment/test_data/config_data.py create mode 100644 compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/db_passwords.tmpl create mode 100644 compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/secrets.tmpl create mode 100644 compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/service_passwords.tmpl create mode 100644 compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/user_passwords.tmpl create mode 100644 compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl create mode 100644 compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/nodes/os_compute_worker.tmpl create mode 100644 compass/tests/deployment/test_data/templates/cobbler/Ubuntu-12.04-x86_64/system.tmpl create mode 100644 compass/tests/deployment/test_deploy_manager.py delete mode 100644 compass/tests/hdsdiscovery/__init__.py delete mode 100755 compass/tests/hdsdiscovery/test_base.py delete mode 100755 compass/tests/hdsdiscovery/test_hdsdiscovery.py delete mode 100755 compass/tests/hdsdiscovery/test_utils.py delete mode 100644 compass/tests/log_analyzor/data/config delete mode 100755 compass/tests/log_analyzor/test_adapter_matcher.py delete mode 100755 compass/tests/log_analyzor/test_file_matcher.py delete mode 100755 compass/tests/log_analyzor/test_line_matcher.py rename compass/{config_management/providers/plugins/__init__.py => tests/utils/data/test_load_conf/test_load_conf1.conf} (96%) rename compass/{config_management/utils/__init__.py => tests/utils/data/test_load_confs/test_load_conf1.conf} (96%) rename compass/tests/{config_management/__init__.py => utils/data/test_load_confs/test_load_conf2.conf} (96%) rename compass/tests/{apicommand/__init__.py => utils/data/test_no_suffix/test_no_suffix} (96%) mode change 100755 => 100644 compass/tests/utils/test_util.py create mode 100644 compass/tests_serverside/__init__.py create mode 100644 compass/tests_serverside/deployment/__init__.py create mode 100644 compass/tests_serverside/deployment/installers/__init__.py create mode 100644 compass/tests_serverside/deployment/installers/pk_installers/__init__.py create mode 100644 compass/tests_serverside/deployment/installers/pk_installers/chef_installer/__init__.py create mode 100644 compass/tests_serverside/deployment/installers/pk_installers/chef_installer/test_chef_installer.py create mode 100644 conf/adapter/ceph.conf create mode 100644 conf/adapter/chef_ceph.conf create mode 100644 conf/adapter/chef_ceph_openstack.conf create mode 100644 conf/adapter/chef_openstack.conf create mode 100644 conf/adapter/general.conf create mode 100644 conf/adapter/openstack.conf create mode 100644 conf/adapter/os_only.conf delete mode 100755 conf/compassd create mode 100644 conf/distributed_system/ceph.conf create mode 100644 conf/distributed_system/general.conf create mode 100644 conf/distributed_system/openstack.conf create mode 100644 conf/distributed_system/openstack_ceph.conf create mode 100644 conf/flavor/ceph_firefly.conf create mode 100644 conf/flavor/chef_ceph_openstack.conf create mode 100644 conf/flavor/openstack_chef.conf delete mode 100644 conf/global_config create mode 100644 conf/mac_list/mac_list.conf create mode 100644 conf/os/centos.conf create mode 100644 conf/os/centos6.5.conf create mode 100644 conf/os/general.conf create mode 100644 conf/os/ubuntu.conf create mode 100644 conf/os/ubuntu12.04.conf create mode 100644 conf/os_field/dns.conf create mode 100644 conf/os_field/gateway.conf create mode 100644 conf/os_field/general.conf create mode 100644 conf/os_field/general_list.conf create mode 100644 conf/os_field/ip.conf create mode 100644 conf/os_field/netmask.conf create mode 100644 conf/os_field/network.conf create mode 100644 conf/os_field/password.conf create mode 100644 conf/os_field/percentage.conf create mode 100644 conf/os_field/size.conf create mode 100644 conf/os_field/username.conf create mode 100644 conf/os_installer/cobbler.conf create mode 100644 conf/os_metadata/general.conf create mode 100644 conf/package_field/anytype.conf create mode 100644 conf/package_field/dns.conf create mode 100644 conf/package_field/gateway.conf create mode 100644 conf/package_field/general.conf create mode 100644 conf/package_field/integer.conf create mode 100644 conf/package_field/ip.conf create mode 100644 conf/package_field/netmask.conf create mode 100644 conf/package_field/network.conf create mode 100644 conf/package_field/password.conf create mode 100644 conf/package_field/percentage.conf create mode 100644 conf/package_field/roles.conf create mode 100644 conf/package_field/size.conf create mode 100644 conf/package_field/username.conf create mode 100644 conf/package_installer/chef-icehouse.conf create mode 100644 conf/package_metadata/ceph.conf create mode 100644 conf/package_metadata/ceph_openstack.conf create mode 100644 conf/package_metadata/openstack.conf create mode 100644 conf/role/ceph.conf create mode 100644 conf/role/chef_ceph_openstack.conf create mode 100644 conf/role/openstack_chef.conf create mode 100644 conf/switch_list/switch_list.conf create mode 100644 conf/templates/chef_installer/ceph_firefly/environments/ceph_firefly.tmpl create mode 100644 conf/templates/chef_installer/ceph_openstack_icehouse/environments/ha_multinodes.tmpl create mode 100644 conf/templates/chef_installer/ceph_openstack_icehouse/environments/multinodes.tmpl create mode 100644 conf/templates/chef_installer/openstack_icehouse/databags/db_passwords.tmpl create mode 100644 conf/templates/chef_installer/openstack_icehouse/databags/secrets.tmpl create mode 100644 conf/templates/chef_installer/openstack_icehouse/databags/service_passwords.tmpl create mode 100644 conf/templates/chef_installer/openstack_icehouse/databags/user_passwords.tmpl create mode 100644 conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl create mode 100644 conf/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl create mode 100644 conf/templates/chef_installer/openstack_icehouse/nodes/os_compute_worker.tmpl create mode 100644 conf/templates/cobbler/CentOS-6.5-x86_64/system.tmpl create mode 100644 conf/templates/cobbler/Ubuntu-12.04-x86_64/system.tmpl create mode 100755 install/compass_web.sh create mode 100755 install/install_func.sh create mode 100755 install/setup_env.sh delete mode 100755 misc/apache/compass.wsgi delete mode 100644 misc/apache/ods-server create mode 100644 misc/apache/ods-server.conf create mode 100644 regtest/regtest10.conf create mode 100644 regtest/regtest8.conf create mode 100644 regtest/regtest9.conf delete mode 100644 regtest/regtest_dashboard.conf create mode 100755 service/compass-celeryd create mode 100755 service/compass-progress-updated delete mode 100644 tools/install_venv.py delete mode 100644 tools/install_venv_common.py delete mode 100755 tools/with_venv.sh diff --git a/README.md b/README.md index 3cead5d4..3d2bbb69 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,8 @@ Compass ======= - A Deoployment Automation System. See Wiki page at https://wiki.openstack.org/wiki/Compass. -Two other related github repos are: - - * compass-web: http://github.com/stackforge/compass-web. The frontend layer of the Compass. It is built with client side MVC model with JavaScript. - * compass-adapters: http://github.com/stackforge/compass-adapters. The add-on modules for Compass adapters. Currently, this hosts Cobbler related data file (kickstart, snippet, etc), and chef cookbooks for OpenStack and other software packages. - -Note: We are currently actively developing an improved version of Compass on dev/experimental branch. The target release date is end of August. - How to install Compass? ----------------------- 1. Run `git clone https://github.com/huawei-cloud/compass` diff --git a/bin/chef/addcookbooks.py b/bin/chef/addcookbooks.py index e2bc8dac..f23dac49 100755 --- a/bin/chef/addcookbooks.py +++ b/bin/chef/addcookbooks.py @@ -20,6 +20,14 @@ import os import os.path import sys + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + + from compass.utils import flags from compass.utils import logsetting diff --git a/bin/chef/adddatabags.py b/bin/chef/adddatabags.py index 168cc053..ba2d08cf 100755 --- a/bin/chef/adddatabags.py +++ b/bin/chef/adddatabags.py @@ -20,6 +20,13 @@ import os import os.path import sys + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + from compass.utils import flags from compass.utils import logsetting diff --git a/bin/chef/addroles.py b/bin/chef/addroles.py index f463f9d9..2745506d 100755 --- a/bin/chef/addroles.py +++ b/bin/chef/addroles.py @@ -20,6 +20,13 @@ import os import os.path import sys + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + from compass.utils import flags from compass.utils import logsetting @@ -37,7 +44,7 @@ def main(): roles_dir = flags.OPTIONS.roles_dir for item in os.listdir(roles_dir): - if item.endswith('.rb'): + if item.endswith('.rb') or item.endswith('.json'): rolelist.append(os.path.join(roles_dir, item)) else: logging.info('ignore %s in %s', item, roles_dir) diff --git a/bin/chef/clean_clients.sh b/bin/chef/clean_clients.sh new file mode 100755 index 00000000..7a26beaf --- /dev/null +++ b/bin/chef/clean_clients.sh @@ -0,0 +1,6 @@ +#!/bin/bash +echo "clean chef clients" +yes | knife client bulk delete '^(?!chef-).*' +if [[ "$?" != "0" ]]; then + echo "failed to clean all clients" +fi diff --git a/bin/chef/clean_environments.sh b/bin/chef/clean_environments.sh new file mode 100755 index 00000000..f9b5052f --- /dev/null +++ b/bin/chef/clean_environments.sh @@ -0,0 +1,13 @@ +#!/bin/bash +echo "clean chef environments" +environments=$(knife environment list) +for environment in $environments; do + if [[ "$environment" != "_default" ]]; then + yes | knife environment delete $environment + if [[ "$?" != "0" ]]; then + echo "failed to delete environment $environment" + else + echo "environment $environment is deleted" + fi + fi +done diff --git a/bin/chef/clean_nodes.sh b/bin/chef/clean_nodes.sh new file mode 100755 index 00000000..8224b82d --- /dev/null +++ b/bin/chef/clean_nodes.sh @@ -0,0 +1,6 @@ +#!/bin/bash +echo "clean chef nodes" +yes | knife node bulk delete '.*' +if [[ "$?" != "0" ]]; then + echo "failed to clean all nodes" +fi diff --git a/bin/clean_installation_logs.py b/bin/clean_installation_logs.py new file mode 100755 index 00000000..0ae20f14 --- /dev/null +++ b/bin/clean_installation_logs.py @@ -0,0 +1,50 @@ +#!/usr/bin/env python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""clean all installation logs.""" +import logging +import os +import os.path +import sys + + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import setting_wrapper as setting + + +def clean_installation_logs(): + installation_log_dirs = setting.INSTALLATION_LOGDIR + successful = True + for _, logdir in installation_log_dirs.items(): + cmd = 'rm -rf %s/*' % logdir + status = os.system(cmd) + logging.info('run cmd %s resturns %s', cmd, status) + if status: + successful = False + return successful + + +if __name__ == "__main__": + flags.init() + logsetting.init() + clean_installation_logs() diff --git a/bin/client.py b/bin/client.py index 60e06ccf..fa6a3c92 100755 --- a/bin/client.py +++ b/bin/client.py @@ -16,27 +16,46 @@ """binary to deploy a cluster by compass client api.""" import logging +import netaddr +import os import re import requests +import simplejson as json +import socket +import sys import time + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + from compass.apiclient.restful import Client from compass.utils import flags from compass.utils import logsetting +from compass.utils import util flags.add('compass_server', help='compass server url', default='http://127.0.0.1/api') +flags.add('compass_user_email', + help='compass user email', + default='admin@huawei.com') +flags.add('compass_user_password', + help='compass user password', + default='admin') flags.add('switch_ips', help='comma seperated switch ips', default='') flags.add('switch_credential', help='comma separated =', - default='version=v2c,community=public') + default='version=2c,community=public') flags.add('switch_max_retries', type='int', help='max retries of poll switch', - default=5) + default=10) flags.add('switch_retry_interval', type='int', help='interval to repoll switch', default=10) @@ -46,64 +65,166 @@ flags.add_bool('poll_switches', flags.add('machines', help='comma separated mac addresses of machines', default='') -flags.add('adapter_os_name', +flags.add('subnets', + help='comma seperated subnets', + default='') +flags.add('adapter_name', + help='adapter name', + default='') +flags.add('adapter_os_pattern', help='adapter os name', - default=r'(?i)centos.*') -flags.add('adapter_target_system', + default=r'^(?i)centos.*') +flags.add('adapter_target_system_pattern', help='adapter target system name', - default='openstack') + default='^openstack$') +flags.add('adapter_flavor_pattern', + help='adapter flavor name', + default='allinone') flags.add('cluster_name', help='cluster name', default='cluster1') -flags.add('credentials', +flags.add('language', + help='language', + default='EN') +flags.add('timezone', + help='timezone', + default='GMT') +flags.add('http_proxy', + help='http proxy', + default='') +flags.add('https_proxy', + help='https proxy', + default='') +flags.add('no_proxy', + help='no proxy', + default='') +flags.add('ntp_server', + help='ntp server', + default='') +flags.add('dns_servers', + help='dns servers', + default='') +flags.add('domain', + help='domain', + default='') +flags.add('search_path', + help='search path', + default='') +flags.add('local_repo_url', + help='local repo url', + default='') +flags.add('default_gateway', + help='default gateway', + default='') +flags.add('server_credential', help=( - 'comma separated credentials formatted as ' - ':=' + 'server credential formatted as ' + '=' ), - default=( - 'server:root=root,service:service=service,' - 'console:console=console' - )) -flags.add('networking', + default='root=root') +flags.add('os_config_json_file', + help='json formatted os config file', + default='') +flags.add('service_credentials', help=( - 'semicomma seperated network property and its value ' - '=' + 'comma seperated service credentials formatted as ' + ':=,...' + ), + default='') +flags.add('console_credentials', + help=( + 'comma seperated console credential formated as ' + ':=' + ), + default='') +flags.add('hostnames', + help='comma seperated hostname', + default='') +flags.add('host_networks', + help=( + 'semicomma seperated host name and its networks ' + ':=||,...' ), default='') flags.add('partitions', help=( 'comma seperated partitions ' - ':=' + '=' ), - default='tmp:percentage=10,var:percentage=20,home:percentage=40') + default='tmp:percentage=10%,var:percentage=30%,home:percentage=30%') +flags.add('network_mapping', + help=( + 'comma seperated network mapping ' + '=' + ), + default='') +flags.add('package_config_json_file', + help='json formatted os config file', + default='') flags.add('host_roles', help=( 'semicomma separated host roles ' - '=', + '=' ), default='') +flags.add('default_roles', + help=( + 'comma seperated default roles ' + '' + ), + default='') +flags.add('action_timeout', + help='action timeout in seconds', + default=60) flags.add('deployment_timeout', help='deployment timeout in minutes', default=60) flags.add('progress_update_check_interval', help='progress update status check interval in seconds', default=60) -flags.add('dashboard_role', - help='dashboard role name', - default='os-dashboard') +flags.add('dashboard_url', + help='dashboard url', + default='') flags.add('dashboard_link_pattern', help='dashboard link pattern', default=r'(?m)(http://\d+\.\d+\.\d+\.\d+:5000/v2\.0)') +def _load_config(config_filename): + if not config_filename: + return {} + with open(config_filename) as config_file: + content = config_file.read() + return json.loads(content) + + def _get_client(): """get apiclient object.""" return Client(flags.OPTIONS.compass_server) +def _login(client): + """get apiclient token.""" + status, resp = client.get_token( + flags.OPTIONS.compass_user_email, + flags.OPTIONS.compass_user_password + ) + logging.info( + 'login status: %s, resp: %s', + status, resp + ) + if status >= 400: + raise Exception( + 'failed to login %s with user %s', + flags.OPTIONS.compass_server, + flags.OPTIONS.compass_user_email + ) + return resp['token'] + + def _get_machines(client): """get machines connected to the switch.""" - status, resp = client.get_machines() + status, resp = client.list_machines() logging.info( 'get all machines status: %s, resp: %s', status, resp) if status >= 400: @@ -116,7 +237,7 @@ def _get_machines(client): ]) logging.info('machines to add: %s', list(machines_to_add)) machines = {} - for machine in resp['machines']: + for machine in resp: mac = machine['mac'] if mac in machines_to_add: machines[machine['id']] = mac @@ -134,14 +255,14 @@ def _get_machines(client): def _poll_switches(client): """get all switches.""" - status, resp = client.get_switches() + status, resp = client.list_switches() logging.info('get all switches status: %s resp: %s', status, resp) if status >= 400: msg = 'failed to get switches' raise Exception(msg) all_switches = {} - for switch in resp['switches']: + for switch in resp: all_switches[switch['ip']] = switch # add a switch. @@ -149,6 +270,10 @@ def _poll_switches(client): switch_ip for switch_ip in flags.OPTIONS.switch_ips.split(',') if switch_ip ] + if not switch_ips: + raise Exception( + 'there is no switches to poll') + switch_credential = dict([ credential.split('=', 1) for credential in flags.OPTIONS.switch_credential.split(',') @@ -163,12 +288,21 @@ def _poll_switches(client): msg = 'failed to add switch %s' % switch_ip raise Exception(msg) - all_switches[switch_ip] = resp['switch'] + all_switches[switch_ip] = resp else: logging.info('switch %s is already added', switch_ip) remain_retries = flags.OPTIONS.switch_max_retries while True: + for switch_ip, switch in all_switches.items(): + status, resp = client.poll_switch(switch['id']) + logging.info( + 'get switch %s status %s: %s', + switch_ip, status, resp) + if status >= 400: + msg = 'failed to update switch %s' % switch_ip + raise Exception(msg) + remain_retries -= 1 time.sleep(flags.OPTIONS.switch_retry_interval) for switch_ip, switch in all_switches.items(): switch_id = switch['id'] @@ -185,7 +319,7 @@ def _poll_switches(client): msg = 'failed to get switch %s' % switch_ip raise Exception(msg) - switch = resp['switch'] + switch = resp all_switches[switch_ip] = switch if switch['state'] == 'notsupported': @@ -200,393 +334,725 @@ def _poll_switches(client): except Exception: logging.error('failed to get all machines') - if remain_retries > 0: - for switch_ip, switch in all_switches.items(): - status, resp = client.update_switch( - switch_id, switch_ip, **switch_credential) - if status >= 400: - msg = 'failed to update switch %s' % switch_ip - raise Exception(msg) - - remain_retries -= 1 - else: + if remain_retries <= 0: msg = 'max retries reached' raise Exception(msg) def _get_adapter(client): """get adapter.""" - status, resp = client.get_adapters() - logging.info('get all adapters status: %s, resp: %s', status, resp) + status, resp = client.list_adapters() + logging.info( + 'get all adapters status: %s, resp: %s', + status, resp + ) if status >= 400: msg = 'failed to get adapters' raise Exception(msg) - os_name_pattern = flags.OPTIONS.adapter_os_name - os_name_re = re.compile(os_name_pattern) - target_system = flags.OPTIONS.adapter_target_system + adapter_name = flags.OPTIONS.adapter_name + os_pattern = flags.OPTIONS.adapter_os_pattern + if os_pattern: + os_re = re.compile(os_pattern) + else: + os_re = None + target_system_pattern = flags.OPTIONS.adapter_target_system_pattern + if target_system_pattern: + target_system_re = re.compile(target_system_pattern) + else: + target_system_re = None + flavor_pattern = flags.OPTIONS.adapter_flavor_pattern + if flavor_pattern: + flavor_re = re.compile(flavor_pattern) + else: + flavor_re = None adapter_id = None - for adapter in resp['adapters']: - if ( - os_name_re.match(adapter['os']) and - target_system == adapter['target_system'] - ): + os_id = None + distributed_system_id = None + flavor_id = None + adapter = None + for item in resp: + adapter_id = None + os_id = None + flavor_id = None + adapter = item + for supported_os in adapter['supported_oses']: + if not os_re or os_re.match(supported_os['name']): + os_id = supported_os['os_id'] + break + + if not os_id: + logging.info('no os found for adapter %s', adapter) + continue + + if 'flavors' in adapter: + for flavor in adapter['flavors']: + if not flavor_re or flavor_re.match(flavor['name']): + flavor_id = flavor['id'] + break + + if adapter_name and adapter['name'] == adapter_name: adapter_id = adapter['id'] + logging.info('adapter name %s matches: %s', adapter_name, adapter) + elif ( + 'distributed_system_name' in item and + adapter['distributed_system_name'] + ): + if ( + target_system_re and + target_system_re.match(adapter['distributed_system_name']) + ): + adapter_id = adapter['id'] + distributed_system_id = adapter['distributed_system_id'] + logging.info( + 'distributed system name pattern %s matches: %s', + target_system_pattern, adapter + ) + else: + if not target_system_re: + adapter_id = adapter['id'] + logging.info( + 'os only adapter matches no target_system_pattern' + ) + + if adapter_id: + logging.info('adadpter matches: %s', adapter) + break if not adapter_id: - msg = 'no adapter found for %s and %s' % ( - os_name_pattern, target_system) + msg = 'no adapter found' + raise Exception(msg) + + if not os_id: + msg = 'no os found for %s' % os_pattern + raise Exception(msg) + + if target_system_re and not distributed_system_id: + msg = 'no distributed system found for' % target_system_pattern + raise Exception(msg) + + if flavor_re and not flavor_id: + msg = 'no flavor found for %s' % flavor_pattern raise Exception(msg) logging.info('adpater for deploying a cluster: %s', adapter_id) - return adapter_id + return (adapter_id, os_id, distributed_system_id, flavor_id) -def _add_cluster(client, adapter_id, machines): +def _add_subnets(client): + status, resp = client.list_subnets() + logging.info('get all subnets status: %s resp: %s', status, resp) + if status >= 400: + msg = 'failed to get subnets' + raise Exception(msg) + + all_subnets = {} + for subnet in resp: + all_subnets[subnet['subnet']] = subnet + + subnets = [ + subnet for subnet in flags.OPTIONS.subnets.split(',') + if subnet + ] + subnet_mapping = {} + for subnet in subnets: + if subnet not in all_subnets: + status, resp = client.add_subnet(subnet) + logging.info('add subnet %s status %s response %s', + subnet, status, resp) + if status >= 400: + msg = 'failed to add subnet %s' % subnet + raise Exception(msg) + subnet_mapping[resp['subnet']] = resp['id'] + else: + subnet_mapping[subnet] = all_subnets[subnet]['id'] + if not subnet_mapping: + raise Exception( + 'there is not subnets found' + ) + return subnet_mapping + + +def _add_cluster(client, adapter_id, os_id, flavor_id, machines): """add a cluster.""" cluster_name = flags.OPTIONS.cluster_name + if not cluster_name: + raise Exception( + 'no cluster name set') status, resp = client.add_cluster( - cluster_name=cluster_name, adapter_id=adapter_id) + cluster_name, adapter_id, + os_id, flavor_id) logging.info('add cluster %s status: %s, resp: %s', cluster_name, status, resp) if status >= 400: - msg = 'failed to add cluster %s with adapter %s' % ( - cluster_name, adapter_id) + msg = 'failed to add cluster %s with adapter %s os %s flavor %s' % ( + cluster_name, adapter_id, os_id, flavor_id) raise Exception(msg) - cluster = resp['cluster'] + cluster = resp cluster_id = cluster['id'] + if 'flavor' in cluster: + flavor = cluster['flavor'] + else: + flavor = None + if flavor and 'roles' in flavor: + roles = flavor['roles'] + else: + roles = [] + role_mapping = {} + for role in roles: + if role.get('optional', False): + role_mapping[role['name']] = 0 + else: + role_mapping[role['name']] = 1 + logging.info('cluster %s role mapping: %s', cluster_id, role_mapping) + hostnames = [ + hostname for hostname in flags.OPTIONS.hostnames.split(',') + if hostname + ] + if len(machines) != len(hostnames): + msg = 'hostname %s length does not match machines mac %s length' % ( + hostnames, machines) + raise Exception(msg) + + machines_dict = [] + for machine_id, hostname in map(None, machines, hostnames): + machines_dict.append({ + 'machine_id': machine_id, + 'name': hostname + }) # add hosts to the cluster. - status, resp = client.add_hosts( - cluster_id=cluster_id, - machine_ids=machines.keys()) - logging.info('add hosts to cluster %s status: %s, resp: %s', - cluster_id, status, resp) + status, resp = client.add_hosts_to_cluster( + cluster_id, + {'machines': machines_dict}) + logging.info('add machines %s to cluster %s status: %s, resp: %s', + machines_dict, cluster_id, status, resp) if status >= 400: msg = 'failed to add machines %s to cluster %s' % ( machines, cluster_name) raise Exception(msg) - - host_ids = [] - for host in resp['cluster_hosts']: - host_ids.append(host['id']) - - logging.info('added hosts in cluster %s: %s', cluster_id, host_ids) - if len(host_ids) != len(machines): + host_mapping = {} + for host in resp['hosts']: + host_mapping[host['hostname']] = host['id'] + logging.info('added hosts in cluster %s: %s', cluster_id, host_mapping) + if len(host_mapping) != len(machines): msg = 'machines %s to add to the cluster %s while hosts %s' % ( - machines, cluster_name, host_ids) + machines, cluster_name, host_mapping) raise Exception(msg) - - return {cluster_id: host_ids} + return (cluster_id, host_mapping, role_mapping) -def _set_cluster_security(client, cluster_hosts): - """set cluster security.""" - credentials = [ - credential for credential in flags.OPTIONS.credentials.split(',') - if ':' in credential +def _set_cluster_os_config(client, cluster_id, host_ips): + """set cluster os config.""" + os_config = {} + language = flags.OPTIONS.language + timezone = flags.OPTIONS.timezone + http_proxy = flags.OPTIONS.http_proxy + https_proxy = flags.OPTIONS.https_proxy + if not https_proxy and http_proxy: + https_proxy = http_proxy + no_proxy = [ + no_proxy for no_proxy in flags.OPTIONS.no_proxy.split(',') + if no_proxy ] - logging.info('set cluster security: %s', credentials) - credential_mapping = {} - for credential in credentials: - credential_name, username_and_password = credential.split(':', 1) - if not credential_name: - raise Exception('there is no credential name in %s' % credential) - - if not username_and_password: - raise Exception('there is no username/password in %s' % credential) - - if '=' not in username_and_password: - raise Exception('there is no = in %s' % username_and_password) - - username, password = username_and_password.split('=', 1) - if not username or not password: - raise Exception( - 'there is no username or password in %s' % ( - username_and_password)) - - credential_mapping['%s_username' % credential_name] = username - credential_mapping['%s_password' % credential_name] = password - - for cluster_id, host_ids in cluster_hosts.items(): - status, resp = client.set_security( - cluster_id, **credential_mapping) - logging.info( - 'set security config to cluster %s status: %s, resp: %s', - cluster_id, status, resp) - if status >= 400: - msg = 'failed to set security %s for cluster %s' % ( - credential_mapping, cluster_id) - raise Exception(msg) - - -def _set_cluster_networking(client, cluster_hosts): - """set cluster networking.""" - networking_map = {} - networkings = [ - network for network in flags.OPTIONS.networking.split(';') - if '=' in network + compass_name = socket.gethostname() + compass_ip = socket.gethostbyname(compass_name) + if http_proxy: + for hostname, ips in host_ips.items(): + no_proxy.append(hostname) + no_proxy.extend(ips) + ntp_server = flags.OPTIONS.ntp_server + if not ntp_server: + ntp_server = compass_ip + dns_servers = [ + dns_server for dns_server in flags.OPTIONS.dns_servers.split(',') + if dns_server ] - logging.info('set cluster networking: %s', networkings) - for networking in networkings: - networking_name, networking_value = networking.split('=', 1) - if not networking_name: - raise Exception( - 'there is no networking name in %s' % networking) - - if networking_name.endswith('_promisc'): - networking_map[networking_name] = int(networking_value) - else: - networking_map[networking_name] = networking_value - - for cluster_id, host_ids in cluster_hosts.items(): - status, resp = client.set_networking( - cluster_id, **networking_map) - logging.info( - 'set networking config %s to cluster %s status: %s, resp: %s', - networking_map, cluster_id, status, resp) - if status >= 400: - msg = 'failed to set networking config %s to cluster %s' % ( - networking_map, cluster_id) - raise Exception(msg) - - -def _set_cluster_partition(client, cluster_hosts): - """set partiton of each host in cluster.""" + if not dns_servers: + dns_servers = [compass_ip] + domain = flags.OPTIONS.domain + if not domain: + raise Exception('domain is not defined') + search_path = [ + search_path for search_path in flags.OPTIONS.search_path.split(',') + if search_path + ] + if not search_path: + search_path = [domain] + default_gateway = flags.OPTIONS.default_gateway + if not default_gateway: + raise Exception('default gateway is not defined') + os_config['general'] = { + 'language': language, + 'timezone': timezone, + 'ntp_server': ntp_server, + 'dns_servers': dns_servers, + 'default_gateway': default_gateway + } + if http_proxy: + os_config['general']['http_proxy'] = http_proxy + if https_proxy: + os_config['general']['https_proxy'] = https_proxy + if no_proxy: + os_config['general']['no_proxy'] = no_proxy + if domain: + os_config['general']['domain'] = domain + if search_path: + os_config['general']['search_path'] = search_path + server_credential = flags.OPTIONS.server_credential + if '=' in server_credential: + server_username, server_password = server_credential.split('=', 1) + elif server_credential: + server_username = server_credential + server_password = server_username + else: + server_username = 'root' + server_password = 'root' + os_config['server_credentials'] = { + 'username': server_username, + 'password': server_password + } partitions = [ partition for partition in flags.OPTIONS.partitions.split(',') - if ':' in partition + if partition ] - logging.info('set cluster partition: %s', partitions) - partiton_mapping = {} + os_config['partition'] = {} for partition in partitions: - partition_name, partition_pair = partition.split(':', 1) + if '=' not in partition: + raise Exception( + 'there is no = in partition %s' % partition + ) + partition_name, partition_value = partition.split('=', 1) if not partition_name: raise Exception( 'there is no partition name in %s' % partition) - - if not partition_pair: + if not partition_value: raise Exception( - 'there is no partition pair in %s' % partition) + 'there is no partition value in %s' % partition) - if '=' not in partition_pair: - raise Exception( - 'there is no = in %s' % partition_pair) - - partition_type, partition_value = partition_pair.split('=', 1) - if partition_type == 'percentage': - partition_value = int(partition_value) - elif partition_type == 'mbytes': - partition_value = int(partition_value) + if partition_value.endswith('%'): + partition_type = 'percentage' + partition_value = int(partition_value[:-1]) else: - raise Exception( - 'unsupported partition type %s' % partition_type) - - partiton_mapping[ - '%s_%s' % (partition_name, partition_type) - ] = partition_value - - for cluster_id, host_ids in cluster_hosts.items(): - status, resp = client.set_partition( - cluster_id, **partiton_mapping) - logging.info( - 'set partition config %s to cluster %s status: %s, resp: %s', - partiton_mapping, cluster_id, status, resp) - if status >= 400: - msg = 'failed to set partition %s to cluster %s' % ( - partiton_mapping, cluster_id) - raise Exception(msg) - - -def _set_host_config(client, cluster_hosts): - host_configs = [] - for host in flags.OPTIONS.host_roles.split(';'): - if not host: - continue - - hostname, roles = host.split('=', 1) - if hostname: - roles = [role for role in roles.split(',') if role] - - host_configs.append({ - 'hostname': hostname, - 'roles': roles - }) - - total_hosts = 0 - for cluster_id, host_ids in cluster_hosts.items(): - total_hosts += len(host_ids) - - if total_hosts != len(host_configs): - msg = '%s host to assign but got %s host configs' % ( - total_hosts, len(host_configs)) + partition_type = 'size' + os_config['partition'][partition_name] = { + partition_type: partition_value + } + local_repo_url = flags.OPTIONS.local_repo_url + if local_repo_url: + os_config['general']['local_repo'] = local_repo_url + os_config_filename = flags.OPTIONS.os_config_json_file + if os_config_filename: + util.merge_dict( + os_config, _load_config(os_config_filename) + ) + status, resp = client.update_cluster_config( + cluster_id, os_config=os_config) + logging.info( + 'set os config %s to cluster %s status: %s, resp: %s', + os_config, cluster_id, status, resp) + if status >= 400: + msg = 'failed to set os config %s to cluster %s' % ( + os_config, cluster_id) raise Exception(msg) - for cluster_id, host_ids in cluster_hosts.items(): - for hostid in host_ids: - host_config = host_configs.pop(0) - status, resp = client.update_host_config( - hostid, **host_config) + +def _set_host_networking(client, host_mapping, subnet_mapping): + """set cluster hosts networking.""" + host_ips = {} + for host_network in flags.OPTIONS.host_networks.split(';'): + hostname, networks_str = host_network.split(':', 1) + if hostname not in host_mapping: + msg = 'hostname %s does not exist in host mapping %s' % ( + hostname, host_mapping + ) + raise Exception(msg) + host_id = host_mapping[hostname] + networks = networks_str.split(',') + for network in networks: + interface, network_properties_str = network.split('=', 1) + network_properties = network_properties_str.split('|') + ip_addr = network_properties[0] + if not ip_addr: + raise Exception( + 'ip is not set for host %s interface %s' % ( + hostname, interface + ) + ) + ip = netaddr.IPAddress(ip_addr) + subnet_id = None + for subnet_addr, subnetid in subnet_mapping.items(): + subnet = netaddr.IPNetwork(subnet_addr) + if ip in subnet: + subnet_id = subnetid + break + if not subnet_id: + msg = 'no subnet found for ip %s' % ip_addr + raise Exception(msg) + properties = dict([ + (network_property, True) + for network_property in network_properties[1:] + ]) logging.info( - 'set host %s config %s status: %s, resp: %s', - hostid, host_config, status, resp + 'add host %s interface %s ip %s network proprties %s', + hostname, interface, ip_addr, properties) + status, response = client.add_host_network( + host_id, interface, ip=ip_addr, subnet_id=subnet_id, + **properties + ) + logging.info( + 'add host %s interface %s ip %s network properties %s ' + 'status %s: %s', + hostname, interface, ip_addr, properties, + status, response ) if status >= 400: - msg = 'failed to set host %s config %s' % ( - hostid, host_config) + msg = 'failed to set host %s interface %s network' % ( + hostname, interface + ) raise Exception(msg) + host_ips.setdefault(hostname, []).append(ip_addr) + return host_ips -def _deploy_clusters(client, cluster_hosts): +def _set_cluster_package_config(client, cluster_id): + """set cluster package config.""" + package_config = { + } + service_credentials = [ + service_credential + for service_credential in flags.OPTIONS.service_credentials.split(',') + if service_credential + ] + logging.debug( + 'service credentials: %s', service_credentials + ) + for service_credential in service_credentials: + if ':' not in service_credential: + raise Exception( + 'there is no : in service credential %s' % service_credential + ) + service_name, service_pair = service_credential.split(':', 1) + if '=' not in service_pair: + raise Exception( + 'there is no = in service %s security' % service_name + ) + username, password = service_pair.split('=', 1) + package_config.setdefault( + 'security', {} + ).setdefault( + 'service_credentials', {} + )[service_name] = { + 'username': username, + 'password': password + } + console_credentials = [ + console_credential + for console_credential in flags.OPTIONS.console_credentials.split(',') + if console_credential + ] + logging.debug( + 'console credentials: %s', console_credentials + ) + for console_credential in console_credentials: + if ':' not in console_credential: + raise Exception( + 'there is no : in console credential %s' % console_credential + ) + console_name, console_pair = console_credential.split(':', 1) + if '=' not in console_pair: + raise Exception( + 'there is no = in console %s security' % console_name + ) + username, password = console_pair.split('=', 1) + package_config.setdefault( + 'security', {} + ).setdefault( + 'console_credentials', {} + )[console_name] = { + 'username': username, + 'password': password + } + network_mapping = dict([ + network_pair.split('=', 1) + for network_pair in flags.OPTIONS.network_mapping.split(',') + if '=' in network_pair + ]) + for network_type, network in network_mapping.items(): + package_config.setdefault( + 'network_mapping', {} + )[network_type] = network + package_config_filename = flags.OPTIONS.package_config_json_file + if package_config_filename: + util.merge_dict( + package_config, _load_config(package_config_filename) + ) + status, resp = client.update_cluster_config( + cluster_id, package_config=package_config) + logging.info( + 'set package config %s to cluster %s status: %s, resp: %s', + package_config, cluster_id, status, resp) + if status >= 400: + msg = 'failed to set package config %s to cluster %s' % ( + package_config, cluster_id) + raise Exception(msg) + + +def _set_host_roles(client, cluster_id, host_id, roles, role_mapping): + status, response = client.update_cluster_host( + cluster_id, host_id, roles=roles) + logging.info( + 'set cluster %s host %s roles %s status %s: %s', + cluster_id, host_id, roles, status, response + ) + if status >= 400: + raise Exception( + 'failed to set cluster %s host %s roles %s' % ( + cluster_id, host_id, roles + ) + ) + for role in roles: + if role in role_mapping and role_mapping[role] > 0: + role_mapping[role] -= 1 + + +def _set_hosts_roles(client, cluster_id, host_mapping, role_mapping): + host_roles = {} + for host_str in flags.OPTIONS.host_roles.split(';'): + if not host_str: + continue + hostname, roles_str = host_str.split('=', 1) + if hostname not in host_mapping: + raise Exception( + 'hostname %s not found in host mapping %s' % ( + hostname, host_mapping + ) + ) + host_id = host_mapping[hostname] + roles = [role for role in roles_str.split(',') if role] + _set_host_roles(client, cluster_id, host_id, roles, role_mapping) + host_roles[hostname] = roles + + # assign unassigned roles to unassigned hosts + unassigned_hostnames = [] + for hostname, _ in host_mapping.items(): + if hostname not in host_roles: + unassigned_hostnames.append(hostname) + unassigned_roles = [] + for role, count in role_mapping.items(): + if count > 0: + unassigned_roles.append(role) + if len(unassigned_hostnames) < len(unassigned_roles): + raise Exception( + 'there is no enough hosts %s to assign roles %s' % ( + unassigned_hostnames, unassigned_roles + ) + ) + for offset, role in enumerate(unassigned_roles): + hostname = unassigned_hostnames[offset] + host_id = host_mapping[hostname] + roles = [role] + _set_host_roles(client, cluster_id, host_id, roles, role_mapping) + host_roles[hostname] = roles + unassigned_hostnames = unassigned_hostnames[len(unassigned_roles):] + unassigned_roles = [] + + # assign default roles to unassigned hosts + default_roles = [ + role for role in flags.OPTIONS.default_roles.split(',') + if role + ] + if not default_roles and unassigned_hostnames: + raise Exception( + 'hosts %s do not have roles set' % unassigned_hostnames + ) + for hostname in unassigned_hostnames: + host_id = host_mapping[hostname] + roles = [default_roles[0]] + _set_host_roles(client, cluster_id, host_id, roles, role_mapping) + host_roles[hostname] = roles + default_roles = default_roles[1:] + default_roles.extend(roles) + + return host_roles + + +def _deploy_clusters(client, cluster_id, host_mapping): """deploy cluster.""" - for cluster_id, host_ids in cluster_hosts.items(): - status, resp = client.deploy_hosts(cluster_id) - logging.info( - 'deploy cluster %s status: %s, resp: %s', - cluster_id, status, resp) - if status >= 400: - msg = 'failed to deploy cluster %s' % cluster_id - raise Exception(msg) + host_ids = [host_id for _, host_id in host_mapping.items()] + status, response = client.review_cluster( + cluster_id, review={'hosts': host_ids} + ) + logging.info( + 'review cluster %s hosts %s, status %s: %s', + cluster_id, host_ids, status, response + ) + if status >= 400: + raise Exception( + 'review cluster %s fails' % cluster_id + ) + status, response = client.deploy_cluster( + cluster_id, deploy={'hosts': host_ids} + ) + logging.info( + 'deploy cluster %s hosts %s status %s: %s', + cluster_id, host_ids, status, response + ) + if status >= 400: + raise Exception( + 'deploy cluster %s fails' % cluster_id + ) -def _get_installing_progress(client, cluster_hosts): +def _get_installing_progress(client, cluster_id, host_mapping): """get intalling progress.""" - timeout = time.time() + 60 * float(flags.OPTIONS.deployment_timeout) - clusters_progress = {} - hosts_progress = {} + action_timeout = time.time() + 60 * float(flags.OPTIONS.action_timeout) + deployment_timeout = time.time() + 60 * float( + flags.OPTIONS.deployment_timeout) + cluster_installed = False + cluster_failed = False + hosts_installed = {} + hosts_failed = {} install_finished = False - failed_hosts = {} - failed_clusters = {} - while time.time() < timeout: - found_installing_clusters = False - found_installing_hosts = False - for cluster_id, host_ids in cluster_hosts.items(): - for hostid in host_ids: - if hostid in hosts_progress: - continue - - status, resp = client.get_host_installing_progress(hostid) - logging.info( - 'get host %s installing progress status: %s, resp: %s', - hostid, status, resp) - if status >= 400: - msg = 'failed to get host %s progress' % hostid - raise Exception(msg) - - progress = resp['progress'] - if ( - progress['state'] not in ['UNINITIALIZED', 'INSTALLING'] or - progress['percentage'] >= 1.0 - ): - hosts_progress[hostid] = progress - if progress['state'] in ['ERROR']: - failed_hosts[hostid] = progress - - else: - found_installing_hosts = True - - if cluster_id in clusters_progress: - continue - - status, resp = client.get_cluster_installing_progress(cluster_id) - logging.info( - 'get cluster %s installing progress status: %s, resp: %s', - cluster_id, status, resp) - if status >= 400: - msg = 'failed to get cluster %s intsalling progress' % ( - cluster_id) - raise Exception(msg) - - progress = resp['progress'] - if ( - progress['state'] not in ['UNINITIALIZED', 'INSTALLING'] or - progress['percentage'] >= 1.0 - ): - clusters_progress[cluster_id] = progress - if progress['state'] in ['ERROR']: - failed_clusters[cluster_id] = progress - + deployment_failed = False + current_time = time.time() + while current_time < deployment_timeout: + status, cluster_state = client.get_cluster_state(cluster_id) + logging.info( + 'get cluster %s state status %s: %s', + cluster_id, status, cluster_state + ) + if status >= 400: + raise Exception( + 'failed to acquire cluster %s state' % cluster_id + ) + if cluster_state['state'] in ['UNINITIALIZED', 'INITIALIZED']: + if current_time >= action_timeout: + deployment_failed = True + break else: - found_installing_clusters = True + continue + if cluster_state['state'] == 'SUCCESSFUL': + cluster_installed = True + if cluster_state['state'] == 'ERROR': + cluster_failed = True + for hostname, host_id in host_mapping.items(): + status, host_state = client.get_cluster_host_state( + cluster_id, host_id + ) + logging.info( + 'get cluster %s host %s state status %s: %s', + cluster_id, host_id, status, host_state + ) + if status >= 400: + raise Exception( + 'failed to acquire cluster %s host %s state' % ( + cluster_id, host_id + ) + ) + if host_state['state'] in ['UNINITIALIZED', 'INITIALIZED']: + raise Exception( + 'unintended status for host %s: %s' % ( + hostname, host_state + ) + ) + if host_state['state'] == 'SUCCESSFUL': + hosts_installed[host_id] = True + else: + hosts_installed[host_id] = False + if host_state['state'] == 'ERROR': + hosts_failed[host_id] = True + else: + hosts_failed[host_id] = False - if found_installing_clusters and found_installing_hosts: + cluster_finished = cluster_installed or cluster_failed + hosts_finished = {} + for _, host_id in host_mapping.items(): + hosts_finished[host_id] = ( + hosts_installed.get(host_id, False) or + hosts_failed.get(host_id, False) + ) + if cluster_finished: + if not all(hosts_finished.values()): + raise Exception( + 'some host are not finished: %s' % hosts_finished + ) + logging.info('all clusters/hosts are installed.') + install_finished = True + break + else: logging.info( 'there are some clusters/hosts in installing.' 'sleep %s seconds and retry', flags.OPTIONS.progress_update_check_interval) time.sleep(float(flags.OPTIONS.progress_update_check_interval)) - else: - install_finished = True - logging.info('all clusters/hosts are installed.') - break + current_time = time.time() + if deployment_failed: + raise Exception( + 'cluster %s deployment action fails: %s' % cluster_id + ) if not install_finished: - msg = 'installing %s is not all finished: hosts %s clusters %s' % ( - cluster_hosts, hosts_progress, clusters_progress) - raise Exception(msg) - - if failed_hosts: - msg = 'installing hosts failed: %s' % failed_hosts - raise Exception(msg) - - if failed_clusters: - msg = 'installing clusters failed: %s' % failed_clusters + raise Exception( + 'cluster %s installation not finished: ' + 'installed %s, failed: %s' % ( + cluster_id, hosts_installed, hosts_failed + ) + ) + if cluster_failed or any(hosts_failed.values()): + msg = 'cluster %s hosts %s is not all finished. failed hosts %s' % ( + cluster_id, host_mapping.values(), hosts_failed.keys() + ) raise Exception(msg) -def _check_dashboard_links(client, cluster_hosts): - dashboard_role = flags.OPTIONS.dashboard_role +def _check_dashboard_links(client, cluster_id): + dashboard_url = flags.OPTIONS.dashboard_url + if not dashboard_url: + logging.info('no dashboarde url set') + return dashboard_link_pattern = re.compile( flags.OPTIONS.dashboard_link_pattern) - for cluster_id, host_ids in cluster_hosts.items(): - status, resp = client.get_dashboard_links(cluster_id) + r = requests.get(dashboard_url, verify=False) + r.raise_for_status() + match = dashboard_link_pattern.search(r.text) + if match: logging.info( - 'get cluster %s dashboard links status: %s, resp: %s', - cluster_id, status, resp) - if status >= 400: - msg = 'failed to get cluster %s dashboard links' % cluster_id - raise Exception(msg) - - dashboardlinks = resp['dashboardlinks'] - if dashboard_role not in dashboardlinks: - msg = 'no dashboard role %s found in %s' % ( - dashboard_role, dashboardlinks) - raise Exception(msg) - - r = requests.get(dashboardlinks[dashboard_role], verify=False) - r.raise_for_status() - match = dashboard_link_pattern.search(r.text) - if match: - logging.info( - 'dashboard login page for cluster %s can be downloaded', - cluster_id) - else: - msg = ( - '%s dashboard login page failed to be downloaded\n' - 'the context is:\n%s\n' - ) % (dashboard_role, r.text) - raise Exception(msg) + 'dashboard login page for cluster %s can be downloaded', + cluster_id) + else: + msg = ( + '%s failed to be downloaded\n' + 'the context is:\n%s\n' + ) % (dashboard_url, r.text) + raise Exception(msg) def main(): flags.init() logsetting.init() client = _get_client() + _login(client) if flags.OPTIONS.poll_switches: machines = _poll_switches(client) else: machines = _get_machines(client) - - adapter_id = _get_adapter(client) - cluster_hosts = _add_cluster(client, adapter_id, machines) - _set_cluster_security(client, cluster_hosts) - _set_cluster_networking(client, cluster_hosts) - _set_cluster_partition(client, cluster_hosts) - _set_host_config(client, cluster_hosts) - _deploy_clusters(client, cluster_hosts) - _get_installing_progress(client, cluster_hosts) - _check_dashboard_links(client, cluster_hosts) + subnet_mapping = _add_subnets(client) + adapter_id, os_id, distributed_system_id, flavor_id = _get_adapter(client) + cluster_id, host_mapping, role_mapping = _add_cluster( + client, adapter_id, os_id, flavor_id, machines) + host_ips = _set_host_networking( + client, host_mapping, subnet_mapping + ) + _set_cluster_os_config(client, cluster_id, host_ips) + if distributed_system_id: + _set_cluster_package_config(client, cluster_id) + if role_mapping: + _set_hosts_roles(client, cluster_id, host_mapping, role_mapping) + _deploy_clusters(client, cluster_id, host_mapping) + _get_installing_progress(client, cluster_id, host_mapping) + _check_dashboard_links(client, cluster_id) if __name__ == "__main__": diff --git a/bin/client.sh b/bin/client.sh new file mode 100755 index 00000000..48c70e20 --- /dev/null +++ b/bin/client.sh @@ -0,0 +1,2 @@ +#!/bin/bash +/opt/compass/bin/client.py --switch_ips=172.29.8.40 --machines=00:0c:29:a7:ea:4b --adapter_name=os_only --adapter_flavor_pattern= --subnets=10.145.88.0/23,172.16.0.0/16 --cluster_name=cluster1 --domain=ods.com --default_gateway=10.145.88.1 --service_credentials= --console_credentials= --hostnames=host1 --host_networks="host1:eth0=10.145.89.201|is_mgmt,eth1=172.16.100.201|is_promiscuous" --partitions="/var=50%,/home=30%" --network_mapping= --host_roles= --dashboard_url= diff --git a/bin/cobbler/remove_systems.sh b/bin/cobbler/remove_systems.sh new file mode 100755 index 00000000..1973d430 --- /dev/null +++ b/bin/cobbler/remove_systems.sh @@ -0,0 +1,9 @@ +#!/bin/bash +systems=$(cobbler system list) +echo "remove systems: $systems" +for system in $systems; do + cobbler system remove --name=$system + if [[ "$?" != "0" ]]; then + echo "failed to remove system %s" + fi +done diff --git a/bin/compass b/bin/compass deleted file mode 100755 index fe14526a..00000000 --- a/bin/compass +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/env python - -import sys -import compass.actions.cli as cli - -sys.exit(cli.main()) diff --git a/bin/compass_check.py b/bin/compass_check.py new file mode 100755 index 00000000..5fc7e69f --- /dev/null +++ b/bin/compass_check.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""compass health check.""" +import os +import os.path +import sys + + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + +import compass.actions.cli as cli + +sys.exit(cli.main()) diff --git a/bin/compass_wsgi.py b/bin/compass_wsgi.py new file mode 100755 index 00000000..9e889e7b --- /dev/null +++ b/bin/compass_wsgi.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""compass wsgi module.""" +import os +import sys + + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import setting_wrapper as setting + + +flags.init() +flags.OPTIONS.logfile = setting.WEB_LOGFILE +logsetting.init() + + +from compass.api import api as compass_api + + +compass_api.init() +application = compass_api.app diff --git a/bin/compassd b/bin/compassd new file mode 100755 index 00000000..fc77bb9a --- /dev/null +++ b/bin/compassd @@ -0,0 +1,43 @@ +#!/bin/sh + +RETVAL_CELERY=0 +RETVAL_PROGRESS_UPDATE=0 +start() { + service compass-celeryd start + RETVAL_CELERY=$? + service compass-progress-updated start + RETVAL_PROGRESS_UPDATE=$? +} + +stop() { + service compass-celeryd stop + RETVAL_CELERY=$? + service compass-progress-updated stop + RETVAL_PROGRESS_UPDATE=$? +} + +restart() { + stop + start +} +case "$1" in + start|stop|restart) + $1 + ;; + status) + service compass-celeryd status + RETVAL_CELERY=$? + service compass-progress-updated status + RETVAL_PROGRESS_UPDATE=$? + ;; + *) + echo "Usage: $0 {start|stop|status|restart}" + exit 1 + ;; +esac +if [[ "$RETVAL_CELERY" != "0" ]]; then + exit $RETVAL_CELERY +fi +if [[ "$RETVAL_PROGRESS_UPDATE" != "0" ]]; then + exit $RETVAL_PROGRESS_UPDATE +fi diff --git a/bin/delete_clusters.py b/bin/delete_clusters.py new file mode 100755 index 00000000..faa846c5 --- /dev/null +++ b/bin/delete_clusters.py @@ -0,0 +1,73 @@ +#!/usr/bin/env python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Scripts to delete cluster and it hosts""" +import logging +import os +import os.path +import sys + + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + + +from compass.db.api import cluster as cluster_api +from compass.db.api import database +from compass.db.api import host as host_api +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import models +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import setting_wrapper as setting + + +flags.add('clusternames', + help='comma seperated cluster names', + default='') +flags.add_bool('delete_hosts', + help='if all hosts related to the cluster will be deleted', + default=False) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + database.init() + clusternames = [ + clustername + for clustername in flags.OPTIONS.clusternames.split(',') + if clustername + ] + logging.info('delete clusters %s', clusternames) + user = user_api.get_user_object(setting.COMPASS_ADMIN_EMAIL) + clusters = cluster_api.list_clusters( + user, name=clusternames + ) + if flags.OPTIONS.delete_hosts: + for cluster in clusters: + hosts = cluster_api.list_cluster_hosts( + user, cluster['id']) + for host in hosts: + logging.info('delete host %s', host['hostname']) + host_api.del_host(user, host['id']) + for cluster in clusters: + logging.info('delete cluster %s', cluster['name']) + cluster_api.del_cluster(user, cluster['id']) diff --git a/bin/manage_db.py b/bin/manage_db.py index 63edb7d6..108593ea 100755 --- a/bin/manage_db.py +++ b/bin/manage_db.py @@ -19,27 +19,21 @@ import os import os.path import sys + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + from flask.ext.script import Manager -from compass.actions import clean_deployment -from compass.actions import clean_installing_progress from compass.actions import deploy from compass.actions import reinstall -from compass.actions import search from compass.api import app -from compass.config_management.utils import config_manager -from compass.db import database -from compass.db.model import Adapter -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.db.model import ClusterState -from compass.db.model import HostState -from compass.db.model import LogProgressingHistory -from compass.db.model import Machine -from compass.db.model import Role -from compass.db.model import Switch -from compass.db.model import SwitchConfig -from compass.db.model import User +from compass.db.api import database +from compass.db.api import switch as switch_api +from compass.db.api import user as user_api from compass.tasks.client import celery from compass.utils import flags from compass.utils import logsetting @@ -84,17 +78,6 @@ app_manager = Manager(app, usage="Perform database operations") TABLE_MAPPING = { - 'role': Role, - 'adapter': Adapter, - 'switch': Switch, - 'switch_config': SwitchConfig, - 'machine': Machine, - 'hoststate': HostState, - 'clusterstate': ClusterState, - 'cluster': Cluster, - 'clusterhost': ClusterHost, - 'logprogressinghistory': LogProgressingHistory, - 'user': User } @@ -120,137 +103,27 @@ def checkdb(): @app_manager.command def createdb(): """Creates database from sqlalchemy models.""" + database.init() + try: + database.drop_db() + except Exception: + pass + + if setting.DATABASE_TYPE == 'file': + if os.path.exists(setting.DATABASE_FILE): + os.remove(setting.DATABASE_FILE) database.create_db() + if setting.DATABASE_TYPE == 'file': + os.chmod(setting.DATABASE_FILE, 0o777) @app_manager.command def dropdb(): """Drops database from sqlalchemy models.""" + database.init() database.drop_db() -@app_manager.command -def createtable(): - """Create database table.""" - if not flags.OPTIONS.table_name: - print 'flag --table_name is missing' - return - - table_name = flags.OPTIONS.table_name - if table_name not in TABLE_MAPPING: - print '--table_name should be in %s' % TABLE_MAPPING.keys() - return - - database.create_table(TABLE_MAPPING[table_name]) - - -@app_manager.command -def droptable(): - """Drop database table.""" - if not flags.OPTIONS.table_name: - print 'flag --table_name is missing' - return - - table_name = flags.OPTIONS.table_name - if table_name not in TABLE_MAPPING: - print '--table_name should be in %s' % TABLE_MAPPING.keys() - return - - database.drop_table(TABLE_MAPPING[table_name]) - - -@app_manager.command -def sync_from_installers(): - """set adapters in Adapter table from installers.""" - with database.session(): - manager = config_manager.ConfigManager() - manager.update_adapters_from_installers() - - -@app_manager.command -def sync_switch_configs(): - """Set switch configs in SwitchConfig table from setting. - - .. note:: - the switch config is stored in SWITCHES list in setting config. - for each entry in the SWITCHES, its type is dict and must contain - fields 'switch_ips' and 'filter_ports'. - The format of switch_ips is - .... - ip_blocks consists of ip_block separated by comma. - ip_block can be an integer and a range of integer like xx-xx. - The example of switch_ips is like: xxx.xxx.xxx-yyy,xxx-yyy.xxx,yyy - The format of filter_ports consists of list of - separated by comma. port_range can be an - integer or a rnage of integer like xx-xx. - The example of filter_ports is like: ae1-5,20-40. - """ - with database.session(): - manager = config_manager.ConfigManager() - manager.update_switch_filters() - - -@app_manager.command -def clean_clusters(): - """Delete clusters and hosts. - - .. note:: - The clusters and hosts are defined in --clusters. - the clusters flag is as clusterid:hostname1,hostname2,...;... - """ - cluster_hosts = util.get_clusters_from_str(flags.OPTIONS.clusters) - if flags.OPTIONS.async: - celery.send_task('compass.tasks.clean_deployment', (cluster_hosts,)) - else: - clean_deployment.clean_deployment(cluster_hosts) - - -@app_manager.command -def clean_installation_progress(): - """Clean clusters and hosts installation progress. - - .. note:: - The cluster and hosts is defined in --clusters. - The clusters flags is as clusterid:hostname1,hostname2,...;... - """ - cluster_hosts = util.get_clusters_from_str(flags.OPTIONS.clusters) - if flags.OPTIONS.async: - celery.send_task('compass.tasks.clean_installing_progress', - (cluster_hosts,)) - else: - clean_installing_progress.clean_installing_progress(cluster_hosts) - - -@app_manager.command -def reinstall_clusters(): - """Reinstall hosts in clusters. - - .. note:: - The hosts are defined in --clusters. - The clusters flag is as clusterid:hostname1,hostname2,...;... - """ - cluster_hosts = util.get_clusters_from_str(flags.OPTIONS.clusters) - if flags.OPTIONS.async: - celery.send_task('compass.tasks.reinstall', (cluster_hosts,)) - else: - reinstall.reinstall(cluster_hosts) - - -@app_manager.command -def deploy_clusters(): - """Deploy hosts in clusters. - - .. note:: - The hosts are defined in --clusters. - The clusters flag is as clusterid:hostname1,hostname2,...;... - """ - cluster_hosts = util.get_clusters_from_str(flags.OPTIONS.clusters) - if flags.OPTIONS.async: - celery.send_task('compass.tasks.deploy', (cluster_hosts,)) - else: - deploy.deploy(cluster_hosts) - - @app_manager.command def set_switch_machines(): """Set switches and machines. @@ -266,53 +139,57 @@ def set_switch_machines(): if not flags.OPTIONS.switch_machines_file: print 'flag --switch_machines_file is missing' return - + database.init() switches, switch_machines = util.get_switch_machines_from_file( flags.OPTIONS.switch_machines_file) - with database.session(): - manager = config_manager.ConfigManager() - manager.update_switch_and_machines(switches, switch_machines) + user = user_api.get_user_object( + setting.COMPASS_ADMIN_EMAIL + ) + switch_mapping = {} + for switch in switches: + added_switch = switch_api.add_switch( + user, False, **switch + ) + switch_mapping[switch['ip']] = added_switch['id'] + for switch_ip, machines in switch_machines.items(): + if switch_ip not in switch_mapping: + print 'switch ip %s not found' % switch_ip + sys.exit(1) + switch_id = switch_mapping[switch_ip] + for machine in machines: + switch_api.add_switch_machine( + user, switch_id, False, **machine + ) @app_manager.command -def search_cluster_hosts(): - """Search cluster hosts by properties. +def reinstall_clusters(): + """Reinstall hosts in clusters. .. note:: - --search_cluster_properties defines what properties are used to search. - the format of search_cluster_properties is as - =;... If no search properties are set, - It will returns properties of all hosts. - --print_cluster_properties defines what properties to print. - the format of print_cluster_properties is as - ;... - --search_host_properties defines what properties are used to search. - the format of search_host_properties is as - =;... If no search properties are set, - It will returns properties of all hosts. - --print_host_properties defines what properties to print. - the format of print_host_properties is as - ;... - + The hosts are defined in --clusters. + The clusters flag is as clusterid:hostname1,hostname2,...;... """ - cluster_properties = util.get_properties_from_str( - flags.OPTIONS.search_cluster_properties) - cluster_properties_name = util.get_properties_name_from_str( - flags.OPTIONS.print_cluster_properties) - host_properties = util.get_properties_from_str( - flags.OPTIONS.search_host_properties) - host_properties_name = util.get_properties_name_from_str( - flags.OPTIONS.print_host_properties) - cluster_hosts = util.get_clusters_from_str(flags.OPTIONS.clusters) - cluster_properties, cluster_host_properties = search.search( - cluster_hosts, cluster_properties, - cluster_properties_name, host_properties, - host_properties_name) - print 'clusters properties:' - util.print_properties(cluster_properties) - for clusterid, host_properties in cluster_host_properties.items(): - print 'hosts properties under cluster %s' % clusterid - util.print_properties(host_properties) + cluster_hosts = flags.OPTIONS.clusters + if flags.OPTIONS.async: + celery.send_task('compass.tasks.reinstall', (cluster_hosts,)) + else: + reinstall.reinstall(cluster_hosts) + + +@app_manager.command +def deploy_clusters(): + """Deploy hosts in clusters. + + .. note:: + The hosts are defined in --clusters. + The clusters flag is as clusterid:hostname1,hostname2,...;... + """ + cluster_hosts = flags.OPTIONS.clusters + if flags.OPTIONS.async: + celery.send_task('compass.tasks.deploy', (cluster_hosts,)) + else: + deploy.deploy(cluster_hosts) if __name__ == "__main__": diff --git a/bin/poll_switch.py b/bin/poll_switch.py index 57263ea9..ab051e19 100755 --- a/bin/poll_switch.py +++ b/bin/poll_switch.py @@ -18,12 +18,23 @@ import functools import lockfile import logging +import os +import sys + + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv from multiprocessing import Pool from compass.actions import poll_switch from compass.actions import util -from compass.db import database +from compass.db.api import database +from compass.db.api import switch as switch_api +from compass.db.api import user as user_api from compass.tasks.client import celery from compass.utils import daemonize from compass.utils import flags @@ -37,47 +48,58 @@ flags.add('switch_ips', flags.add_bool('async', help='ryn in async mode', default=True) -flags.add('thread_pool_size', +flags.add('thread_pool_size', type='int', help='thread pool size when run in noasync mode', - default='4') -flags.add('run_interval', + default=4) +flags.add('run_interval', type='int', help='run interval in seconds', default=setting.POLLSWITCH_INTERVAL) def pollswitches(switch_ips): """poll switch.""" - poll_switch_ips = [] - with database.session(): - poll_switch_ips = util.update_switch_ips(switch_ips) + user = user_api.get_user_object(setting.COMPASS_ADMIN_EMAIL) + poll_switches = [] + all_switches = dict([ + (switch['ip'], switch['credentials']) + for switch in switch_api.list_switches(user) + ]) + if switch_ips: + poll_switches = dict([ + (switch_ip, all_switches[switch_ip]) + for switch_ip in switch_ips + if switch_ip in all_switches + ]) + else: + poll_switches = all_switches if flags.OPTIONS.async: - for poll_switch_ip in poll_switch_ips: + for switch_ip, switch_credentials in poll_switches.items(): celery.send_task( 'compass.tasks.pollswitch', - (poll_switch_ip,) + (user.email, switch_ip, switch_credentials) ) else: try: - pool = Pool(processes=int(flags.OPTIONS.thread_pool_size)) - for poll_switch_ip in poll_switch_ips: + pool = Pool(processes=flags.OPTIONS.thread_pool_size) + for switch_ip, switch_credentials in poll_switches.items(): pool.apply_async( poll_switch.poll_switch, - (poll_switch_ip,) + (user.email, switch_ip, switch_credentials) ) - pool.close() pool.join() except Exception as error: logging.error('failed to poll switches %s', - poll_switch_ips) + poll_switches) logging.exception(error) if __name__ == '__main__': flags.init() logsetting.init() + database.init() logging.info('run poll_switch') daemonize.daemonize( functools.partial( diff --git a/bin/progress_update.py b/bin/progress_update.py index d189e385..7a968882 100755 --- a/bin/progress_update.py +++ b/bin/progress_update.py @@ -18,8 +18,18 @@ import functools import lockfile import logging +import os +import sys + + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv from compass.actions import update_progress +from compass.db.api import database from compass.tasks.client import celery from compass.utils import daemonize from compass.utils import flags @@ -28,40 +38,33 @@ from compass.utils import setting_wrapper as setting from compass.utils import util -flags.add('clusters', - help=( - 'clusters to clean, the format is as ' - 'clusterid:hostname1,hostname2,...;...'), - default='') flags.add_bool('async', help='run in async mode', default=True) -flags.add('run_interval', +flags.add('run_interval', type='int', help='run interval in seconds', default=setting.PROGRESS_UPDATE_INTERVAL) -def progress_update(cluster_hosts): +def progress_update(): """entry function.""" if flags.OPTIONS.async: - celery.send_task('compass.tasks.update_progress', (cluster_hosts,)) + celery.send_task('compass.tasks.update_progress', ()) else: try: - update_progress.update_progress(cluster_hosts) + update_progress.update_progress() except Exception as error: - logging.error('failed to update progress for cluster_hosts: %s', - cluster_hosts) + logging.error('failed to update progress') logging.exception(error) if __name__ == '__main__': flags.init() logsetting.init() + database.init() logging.info('run progress update') daemonize.daemonize( - functools.partial( - progress_update, - util.get_clusters_from_str(flags.OPTIONS.clusters)), + progress_update, flags.OPTIONS.run_interval, pidfile=lockfile.FileLock('/var/run/progress_update.pid'), stderr=open('/tmp/progress_update_err.log', 'w+'), diff --git a/bin/refresh.sh b/bin/refresh.sh index 07a0a078..b2c5ac84 100755 --- a/bin/refresh.sh +++ b/bin/refresh.sh @@ -1,16 +1,17 @@ #!/bin/bash -/opt/compass/bin/manage_db.py checkdb -if [[ "$?" == "0" ]]; then -/opt/compass/bin/manage_db.py clean_clusters -fi -/opt/compass/bin/manage_db.py dropdb &> /dev/null +set -e +service mysqld restart /opt/compass/bin/manage_db.py createdb -/opt/compass/bin/manage_db.py sync_switch_configs -/opt/compass/bin/manage_db.py sync_from_installers +echo "You may run '/opt/compass/bin/clean_nodes.sh' to clean nodes on chef server" +echo "You may run '/opt/compass/bin/clean_clients.sh' to clean clients on chef server" +echo "you may run '/opt/compass/bin/clean_environments.sh' to clean environments on chef server" +echo "you may run '/opt/compass/bin/remove_systems.sh' to clean systems on cobbler" +/opt/compass/bin/clean_installation_logs.py service httpd restart service rsyslog restart service redis restart +sleep 10 redis-cli flushall -service mysqld restart -service compassd restart +service compass-celeryd restart +service compass-progress-updated restart diff --git a/bin/run_celery.sh b/bin/run_celery.sh deleted file mode 100755 index 9d91439a..00000000 --- a/bin/run_celery.sh +++ /dev/null @@ -1 +0,0 @@ -CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper celeryd diff --git a/bin/switch_virtualenv.py.template b/bin/switch_virtualenv.py.template new file mode 100755 index 00000000..c2429998 --- /dev/null +++ b/bin/switch_virtualenv.py.template @@ -0,0 +1,30 @@ +#!/usr/bin/env python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""utility switch to virtual env.""" +import os +import os.path +import site +import sys + + +virtual_env = '$PythonHome' +activate_this = '%s/bin/activate_this.py' % virtual_env +execfile(activate_this, dict(__file__=activate_this)) +site.addsitedir('%s/lib/python2.6/site-packages' % virtual_env) +if virtual_env not in sys.path: + sys.path.append(virtual_env) +os.environ['PYTHON_EGG_CACHE'] = '/tmp/.egg' diff --git a/compass/actions/clean_deployment.py b/compass/actions/clean_deployment.py index 1f14914a..7b1be985 100644 --- a/compass/actions/clean_deployment.py +++ b/compass/actions/clean_deployment.py @@ -20,7 +20,7 @@ import logging from compass.actions import util from compass.config_management.utils.config_manager import ConfigManager -from compass.db import database +from compass.db.api import database def clean_deployment(cluster_hosts): diff --git a/compass/actions/clean_installing_progress.py b/compass/actions/clean_installing_progress.py deleted file mode 100644 index 145ef5aa..00000000 --- a/compass/actions/clean_installing_progress.py +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module to clean installing progress of a given cluster - - .. moduleauthor:: Xiaodong Wang -""" -import logging - -from compass.actions import util -from compass.config_management.utils.config_manager import ConfigManager -from compass.db import database - - -def clean_installing_progress(cluster_hosts): - """Clean installing progress of clusters. - - :param cluster_hosts: clusters and hosts in each cluster to clean. - :type cluster_hosts: dict of int or str to list of int or str - - .. note:: - The function should be called out of database session. - """ - with util.lock('serialized_action') as lock: - if not lock: - raise Exception( - 'failed to acquire lock to clean installation progress') - - logging.info( - 'clean installing progress of cluster_hosts: %s', - cluster_hosts) - with database.session(): - cluster_hosts, os_versions, target_systems = ( - util.update_cluster_hosts(cluster_hosts)) - manager = ConfigManager() - manager.clean_cluster_and_hosts_installing_progress( - cluster_hosts, os_versions, target_systems) - manager.sync() diff --git a/compass/actions/cli.py b/compass/actions/cli.py index 44aba46b..c9058ed0 100644 --- a/compass/actions/cli.py +++ b/compass/actions/cli.py @@ -13,10 +13,16 @@ # limitations under the License. """Compass Command Line Interface""" +import logging import subprocess import sys from compass.actions.health_check import check +from compass.db.api import database + +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import setting_wrapper as setting from compass.utils.util import pretty_print @@ -165,10 +171,9 @@ class BootCLI(object): def main(): """Compass cli entry point.""" + flags.init() + logsetting.init() + database.init() cli = BootCLI() output = cli.run(sys.argv) return sys.exit(output) - - -if __name__ == "__main__": - main() diff --git a/compass/actions/deploy.py b/compass/actions/deploy.py index f1fcab23..26c3c086 100644 --- a/compass/actions/deploy.py +++ b/compass/actions/deploy.py @@ -13,17 +13,19 @@ # limitations under the License. """Module to deploy a given cluster - - .. moduleauthor:: Xiaodong Wang """ -import logging from compass.actions import util -from compass.config_management.utils.config_manager import ConfigManager -from compass.db import database +from compass.db.api import adapter_holder as adapter_db +from compass.db.api import cluster as cluster_db +from compass.db.api import machine as machine_db +from compass.db.api import user as user_db +from compass.deployment.deploy_manager import DeployManager +from compass.deployment.utils import constants as const +import logging -def deploy(cluster_hosts): +def deploy(cluster_id, hosts_id_list, username=None): """Deploy clusters. :param cluster_hosts: clusters and hosts in each cluster to deploy. @@ -32,15 +34,275 @@ def deploy(cluster_hosts): .. note:: The function should be called out of database session. """ + with util.lock('serialized_action', timeout=1000) as lock: + if not lock: + raise Exception('failed to acquire lock to deploy') + + user = user_db.get_user_object(username) + + cluster_info = ActionHelper.get_cluster_info(cluster_id, user) + adapter_id = cluster_info[const.ADAPTER_ID] + + adapter_info = ActionHelper.get_adapter_info(adapter_id, cluster_id, + user) + hosts_info = ActionHelper.get_hosts_info(cluster_id, hosts_id_list, + user) + + deploy_manager = DeployManager(adapter_info, cluster_info, hosts_info) + #deploy_manager.prepare_for_deploy() + logging.debug('Created deploy manager with %s %s %s' + % (adapter_info, cluster_info, hosts_info)) + + deployed_config = deploy_manager.deploy() + ActionHelper.save_deployed_config(deployed_config, user) + ActionHelper.update_state(cluster_id, hosts_id_list, user) + + +def redeploy(cluster_id, hosts_id_list, username=None): + """Deploy clusters. + + :param cluster_hosts: clusters and hosts in each cluster to deploy. + :type cluster_hosts: dict of int or str to list of int or str + """ with util.lock('serialized_action') as lock: if not lock: raise Exception('failed to acquire lock to deploy') - logging.debug('deploy cluster_hosts: %s', cluster_hosts) - with database.session(): - cluster_hosts, os_versions, target_systems = ( - util.update_cluster_hosts(cluster_hosts)) - manager = ConfigManager() - manager.install_cluster_and_hosts( - cluster_hosts, os_versions, target_systems) - manager.sync() + user = user_db.get_user_object(username) + cluster_info = ActionHelper.get_cluster_info(cluster_id, user) + adapter_id = cluster_info[const.ADAPTER_ID] + + adapter_info = ActionHelper.get_adapter_info(adapter_id, + cluster_id, + user) + hosts_info = ActionHelper.get_hosts_info(cluster_id, + hosts_id_list, + user) + + deploy_manager = DeployManager(adapter_info, cluster_info, hosts_info) + # deploy_manager.prepare_for_deploy() + deploy_manager.redeploy() + ActionHelper.update_state(cluster_id, hosts_id_list, user) + + +class ServerPowerMgmt(object): + """Power management for bare-metal machines by IPMI command.""" + @staticmethod + def poweron(machine_id, user): + """Power on the specified machine.""" + pass + + @staticmethod + def poweroff(machine_id, user): + pass + + @staticmethod + def reset(machine_id, user): + pass + + +class HostPowerMgmt(object): + """Power management for hosts installed OS by OS installer. OS installer + will poweron/poweroff/reset host. + """ + @staticmethod + def poweron(host_id, user): + """Power on the specified host.""" + pass + + @staticmethod + def poweroff(host_id, user): + pass + + @staticmethod + def reset(host_id, user): + pass + + +class ActionHelper(object): + + @staticmethod + def get_adapter_info(adapter_id, cluster_id, user): + """Get adapter information. Return a dictionary as below, + { + "id": 1, + "name": "xxx", + "flavors": [ + { + "flavor_name": "xxx", + "roles": ['xxx', 'yyy', ...], + "template": "xxx.tmpl" + }, + ... + ], + "metadata": { + "os_config": { + ... + }, + "package_config": { + ... + } + }, + "os_installer": { + "name": "cobbler", + "settings": {....} + }, + "pk_installer": { + "name": "chef", + "settings": {....} + }, + ... + } + To view a complete output, please refer to backend doc. + """ + adapter_info = adapter_db.get_adapter(user, adapter_id) + metadata = cluster_db.get_cluster_metadata(user, cluster_id) + adapter_info.update({const.METADATA: metadata}) + + for flavor_info in adapter_info[const.FLAVORS]: + roles = flavor_info[const.ROLES] + flavor_info[const.ROLES] = ActionHelper._get_role_names(roles) + + return adapter_info + + @staticmethod + def _get_role_names(roles): + return [role[const.NAME] for role in roles] + + @staticmethod + def get_cluster_info(cluster_id, user): + """Get cluster information.Return a dictionary as below, + { + "id": 1, + "adapter_id": 1, + "os_version": "CentOS-6.5-x86_64", + "name": "cluster_01", + "flavor": { + "flavor_name": "zzz", + "template": "xx.tmpl", + "roles": [...] + } + "os_config": {..}, + "package_config": {...}, + "deployed_os_config": {}, + "deployed_package_config": {}, + "owner": "xxx" + } + """ + cluster_info = cluster_db.get_cluster(user, cluster_id) + + # convert roles retrieved from db into a list of role names + roles_info = cluster_info.setdefault( + const.FLAVOR, {}).setdefault(const.ROLES, []) + cluster_info[const.FLAVOR][const.ROLES] = \ + ActionHelper._get_role_names(roles_info) + + # get cluster config info + cluster_config = cluster_db.get_cluster_config(user, cluster_id) + cluster_info.update(cluster_config) + + deploy_config = cluster_db.get_cluster_deployed_config(user, + cluster_id) + cluster_info.update(deploy_config) + + return cluster_info + + @staticmethod + def get_hosts_info(cluster_id, hosts_id_list, user): + """Get hosts information. Return a dictionary as below, + { + "hosts": { + 1($host_id): { + "reinstall_os": True, + "mac": "xxx", + "name": "xxx", + "roles": [xxx, yyy] + }, + "networks": { + "eth0": { + "ip": "192.168.1.1", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "192.168.1.0/24" + }, + "eth1": {...} + }, + "os_config": {}, + "package_config": {}, + "deployed_os_config": {}, + "deployed_package_config": {} + }, + 2: {...}, + .... + } + } + """ + hosts_info = {} + for host_id in hosts_id_list: + info = cluster_db.get_cluster_host(user, cluster_id, host_id) + logging.debug("checking on info %r %r" % (host_id, info)) + + info[const.ROLES] = ActionHelper._get_role_names(info[const.ROLES]) + + # TODO(grace): Is following line necessary?? + info.setdefault(const.ROLES, []) + + config = cluster_db.get_cluster_host_config(user, + cluster_id, + host_id) + info.update(config) + + networks = info[const.NETWORKS] + networks_dict = {} + # Convert networks from list to dictionary format + for entry in networks: + nic_info = {} + nic_info = { + entry[const.NIC]: { + const.IP_ADDR: entry[const.IP_ADDR], + const.NETMASK: entry[const.NETMASK], + const.MGMT_NIC_FLAG: entry[const.MGMT_NIC_FLAG], + const.PROMISCUOUS_FLAG: entry[const.PROMISCUOUS_FLAG], + const.SUBNET: entry[const.SUBNET] + } + } + networks_dict.update(nic_info) + + info[const.NETWORKS] = networks_dict + + hosts_info[host_id] = info + + return hosts_info + + @staticmethod + def save_deployed_config(deployed_config, user): + cluster_config = deployed_config[const.CLUSTER] + cluster_id = cluster_config[const.ID] + del cluster_config[const.ID] + + cluster_db.update_cluster_deployed_config(user, cluster_id, + **cluster_config) + + hosts_id_list = deployed_config[const.HOSTS].keys() + for host_id in hosts_id_list: + config = deployed_config[const.HOSTS][host_id] + cluster_db.update_cluster_host_deployed_config(user, + cluster_id, + host_id, + **config) + + @staticmethod + def update_state(cluster_id, host_id_list, user): + # update all clusterhosts state + for host_id in host_id_list: + cluster_db.update_cluster_host_state(user, cluster_id, host_id, + state='INSTALLING') + + # update cluster state + cluster_db.update_cluster_state(user, cluster_id, state='INSTALLING') + + @staticmethod + def get_machine_IPMI(machine_id, user): + machine_info = machine_db.get_machine(user, machine_id) + return machine_info[const.IPMI_CREDS] diff --git a/compass/actions/health_check/base.py b/compass/actions/health_check/base.py index a64fcd84..141369c0 100644 --- a/compass/actions/health_check/base.py +++ b/compass/actions/health_check/base.py @@ -14,6 +14,9 @@ """Base class for Compass Health Check.""" from compass.actions.health_check import utils as health_check_utils +from compass.db.api import database +from compass.db.api import utils +from compass.db import models from compass.utils import setting_wrapper as setting @@ -25,6 +28,31 @@ class BaseCheck(object): self.code = 1 self.messages = [] self.dist, self.version, self.release = health_check_utils.get_dist() + self.os_installer = self._get_os_installer() + self.package_installer = self._get_package_installer() + + def _get_os_installer(self): + with database.session() as session: + installer = utils.get_db_object( + session, models.OSInstaller + ) + os_installer = {} + os_installer['name'] = health_check_utils.strip_name( + installer.name) + os_installer.update(installer.settings) + return os_installer + + def _get_package_installer(self): + package_installer = {} + with database.session() as session: + installer = session.query( + models.PackageInstaller + ).first() + package_installer = {} + package_installer['name'] = health_check_utils.strip_name( + installer.name) + package_installer.update(installer.settings) + return package_installer def _set_status(self, code, message): """set status.""" diff --git a/compass/actions/health_check/check.py b/compass/actions/health_check/check.py index e50b83a5..c1adbc6b 100644 --- a/compass/actions/health_check/check.py +++ b/compass/actions/health_check/check.py @@ -36,12 +36,12 @@ class BootCheck(base.BaseCheck): status['celery'] = self._check_celery() status['dhcp'] = self._check_dhcp() status['dns'] = self._check_dns() -# status['hds'] = self._check_hds() + status['hds'] = self._check_hds() status['os_installer'] = self._check_os_installer() status['package_installer'] = self._check_package_installer() status['squid'] = self._check_squid() status['tftp'] = self._check_tftp() -# status['other'] = self._check_misc() + status['other'] = self._check_misc() return status diff --git a/compass/actions/health_check/check_apache.py b/compass/actions/health_check/check_apache.py index 524d56a0..294d6f92 100644 --- a/compass/actions/health_check/check_apache.py +++ b/compass/actions/health_check/check_apache.py @@ -79,11 +79,7 @@ class ApacheCheck(base.BaseCheck): % self.NAME) try: html = urllib2.urlopen('http://localhost') - content = html.geturl() - if "http://localhost/ods/ods.html" != content: - self._set_status( - 0, - "[%s]Error: Compass web is not redirected by Apache.") + html.geturl() except Exception: self._set_status( 0, diff --git a/compass/actions/health_check/check_celery.py b/compass/actions/health_check/check_celery.py index 5e8ef318..2d8d27c1 100644 --- a/compass/actions/health_check/check_celery.py +++ b/compass/actions/health_check/check_celery.py @@ -80,7 +80,7 @@ class CeleryCheck(base.BaseCheck): """Checks if Celery backend is running and configured properly.""" print "Checking Celery Backend......", - if 'celeryd' not in commands.getoutput('ps -ef'): + if 'celery worker' not in commands.getoutput('ps -ef'): self._set_status(0, "[%s]Error: celery is not running" % self.NAME) return True @@ -94,7 +94,11 @@ class CeleryCheck(base.BaseCheck): try: insp = inspect() celery_stats = inspect.stats(insp) - print celery_stats, + if not celery_stats: + self._set_status( + 0, + "[%s]Error: No running Celery workers were found." + % self.NAME) except IOError as error: self._set_status( 0, diff --git a/compass/actions/health_check/check_dhcp.py b/compass/actions/health_check/check_dhcp.py index d9a3f875..e3bae1ee 100644 --- a/compass/actions/health_check/check_dhcp.py +++ b/compass/actions/health_check/check_dhcp.py @@ -29,8 +29,7 @@ class DhcpCheck(base.BaseCheck): def run(self): """do health check.""" - installer = self.config.OS_INSTALLER - method_name = "self.check_" + installer + "_dhcp()" + method_name = "self.check_" + self.os_installer['name'] + "_dhcp()" return eval(method_name) def check_cobbler_dhcp(self): @@ -38,10 +37,11 @@ class DhcpCheck(base.BaseCheck): try: remote = xmlrpclib.Server( - self.config.COBBLER_INSTALLER_URL, + self.os_installer['cobbler_url'], allow_none=True) + credentials = self.os_installer['credentials'] remote.login( - *self.config.COBBLER_INSTALLER_TOKEN) + credentials['username'], credentials['password']) except Exception: self._set_status( 0, diff --git a/compass/actions/health_check/check_dns.py b/compass/actions/health_check/check_dns.py index 98313acf..843d7e29 100644 --- a/compass/actions/health_check/check_dns.py +++ b/compass/actions/health_check/check_dns.py @@ -28,18 +28,18 @@ class DnsCheck(base.BaseCheck): def run(self): """do health check.""" - installer = self.config.OS_INSTALLER - method_name = "self.check_" + installer + "_dns()" + method_name = "self.check_" + self.os_installer['name'] + "_dns()" return eval(method_name) def check_cobbler_dns(self): """Checks if Cobbler has taken over DNS service.""" try: remote = xmlrpclib.Server( - self.config.COBBLER_INSTALLER_URL, + self.os_installer['cobbler_url'], allow_none=True) + credentials = self.os_installer['credentials'] remote.login( - *self.config.COBBLER_INSTALLER_TOKEN) + credentials['username'], credentials['password']) except Exception: self._set_status(0, "[%s]Error: Cannot login to Cobbler " diff --git a/compass/actions/health_check/check_hds.py b/compass/actions/health_check/check_hds.py index 2af0be7f..afc7bf5d 100644 --- a/compass/actions/health_check/check_hds.py +++ b/compass/actions/health_check/check_hds.py @@ -13,6 +13,8 @@ # limitations under the License. """Health Check module for Hardware Discovery.""" +import logging + from compass.actions.health_check import base from compass.actions.health_check import utils as health_check_utils @@ -31,10 +33,13 @@ class HdsCheck(base.BaseCheck): try: pkg_module = __import__(pkg_type) except Exception: - self.messages.append("[%s]Error: No module named %s, " - "please install it first." - % (self.NAME, pkg_module)) + self._set_status( + 0, "[%s]Error: No module named %s please install it first." + % (self.NAME, pkg_type) + ) + return (self.code, self.messages) + logging.info('import %s: %s', pkg_type, pkg_module) method_name = 'self.check_' + pkg_type + '_snmp(pkg_module)' eval(method_name) print "[Done]" diff --git a/compass/actions/health_check/check_misc.py b/compass/actions/health_check/check_misc.py index 3cbd1566..b8beb1b5 100644 --- a/compass/actions/health_check/check_misc.py +++ b/compass/actions/health_check/check_misc.py @@ -13,6 +13,8 @@ # limitations under the License. """Miscellaneous Health Check for Compass.""" +import logging + from compass.actions.health_check import base from compass.actions.health_check import utils as health_check_utils @@ -23,16 +25,16 @@ class MiscCheck(base.BaseCheck): MISC_MAPPING = { "yum": "rsyslog ntp iproute openssh-clients python git wget " - "python-setuptools python-netaddr python-flask " - "python-flask-sqlalchemy python-amqplib amqp " - "python-paramiko python-mock mod_wsgi httpd squid " + "python-setuptools " + "amqp mod_wsgi httpd squid " "dhcp bind rsync yum-utils xinetd tftp-server gcc " - "net-snmp-utils net-snmp python-daemon".split(" "), - "pip": "flask-script flask-restful celery six discover " - "unittest2 chef".replace("-", "_").split(" "), + "net-snmp-utils net-snmp".split(" "), + "pip": "netaddr flask flask_script flask_restful amqplib " + "flask_sqlalchemy paramiko mock celery six discover daemon " + "unittest2 chef".split(" "), "disable": "iptables ip6tables".split(" "), "enable": "httpd squid xinetd dhcpd named sshd rsyslog cobblerd " - "ntpd compassd".split(" "), + "ntpd compass-celeryd compass-progress-updated".split(" "), } def run(self): @@ -70,8 +72,10 @@ class MiscCheck(base.BaseCheck): self._set_status( 0, "[%s]Error: No module named %s, " - "please install it first." % (self.NAME, pkg_module)) + "please install it first." % (self.NAME, pkg_type)) + return True + logging.info('import %s: %s', pkg_type, pkg_module) method_name = 'self.check_' + pkg_type + '_dependencies(pkg_module)' eval(method_name) diff --git a/compass/actions/health_check/check_os_installer.py b/compass/actions/health_check/check_os_installer.py index b9fe1f41..6ef98180 100644 --- a/compass/actions/health_check/check_os_installer.py +++ b/compass/actions/health_check/check_os_installer.py @@ -26,18 +26,18 @@ class OsInstallerCheck(base.BaseCheck): def run(self): """do health check.""" - installer = self.config.OS_INSTALLER - method_name = 'self.' + installer + '_check()' + method_name = 'self.' + self.os_installer['name'] + '_check()' return eval(method_name) def cobbler_check(self): """Runs cobbler check from xmlrpc client.""" try: remote = xmlrpclib.Server( - self.config.COBBLER_INSTALLER_URL, + self.os_installer['cobbler_url'], allow_none=True) + credentials = self.os_installer['credentials'] token = remote.login( - *self.config.COBBLER_INSTALLER_TOKEN) + credentials['username'], credentials['password']) except Exception: self.code = 0 self.messages.append( diff --git a/compass/actions/health_check/check_package_installer.py b/compass/actions/health_check/check_package_installer.py index e4d6e546..c711e891 100644 --- a/compass/actions/health_check/check_package_installer.py +++ b/compass/actions/health_check/check_package_installer.py @@ -13,10 +13,9 @@ # limitations under the License. """Health Check module for Package Installer.""" - +import logging import os import requests -import subprocess from compass.actions.health_check import base from compass.actions.health_check import setting as health_check_setting @@ -29,19 +28,41 @@ class PackageInstallerCheck(base.BaseCheck): def run(self): """do health check.""" - installer = self.config.PACKAGE_INSTALLER - method_name = "self." + installer + "_check()" + method_name = "self." + self.package_installer['name'] + "_check()" return eval(method_name) def chef_check(self): - """Checks chef setting, cookbooks, databags and roles.""" - for data_type in ['Cookbook', 'Role', 'Databag']: - self.check_chef_data(data_type) - if self.code != 1: - return (self.code, self.messages) + """Checks chef setting, cookbooks and roles.""" + chef_data_map = { + 'CookBook': health_check_setting.COOKBOOKS, + 'Role': health_check_setting.ROLES, + } + total_missing = [] + for data_type in chef_data_map.keys(): + total_missing.append(self.check_chef_data(data_type, + chef_data_map[data_type])) print "[Done]" + missing = False + for item in total_missing: + if item[1] != []: + missing = True + break + + if missing is True: + messages = [] + for item in total_missing: + messages.append("[%s]:%s" + % (item[0], + ', '.join(missed for missed in item[1]))) + self._set_status( + 0, + "[%s]Error: Missing modules on chef server: " + "%s." % ( + self.NAME, + ' ;'.join(message for message in messages))) + self.check_chef_config_dir() print "[Done]" if self.code == 1: @@ -52,7 +73,7 @@ class PackageInstallerCheck(base.BaseCheck): return (self.code, self.messages) - def check_chef_data(self, data_type): + def check_chef_data(self, data_type, github_url): """Checks if chef cookbooks/roles/databags are correct. :param data_type : chef data type @@ -69,52 +90,39 @@ class PackageInstallerCheck(base.BaseCheck): self._set_status( 0, "[%s]Error: pychef is not installed." % self.NAME) - return + + return self.get_status() api = chef.autoconfigure() + + github = set([ + item['name'] + for item in requests.get(github_url).json() + ]) if data_type == 'CookBook': - local = set([ - name for name in os.listdir('/var/chef/cookbooks') - if name - ]) - try: - server = set(api['/cookbooks'].keys()) - except Exception: - self._set_status( - 0, - "[%s]Error: pychef fails to get cookbooks" % self.NAME) - return + local = set(os.listdir('/var/chef/cookbooks')) elif data_type == 'Role': local = set([ - name[:-3] for name in os.listdir('/var/chef/roles') - if name.endswith('.rb') + name for name, item in chef.Role.list(api=api).iteritems() + ]) + github = set([ + item['name'].replace(".rb", "").replace(".json", "") + for item in requests.get(github_url).json() ]) - try: - server = set(api['/roles'].keys()) - except Exception: - self._set_status( - 0, - "[%s]Error: pychef fails to get roles" % self.NAME) - return else: local = set([ - name for name in os.listdir('/var/chef/databags') - if name + item for item in eval( + 'chef.' + data_type + '.list(api=api)' + ) ]) - try: - server = set(api['/data'].keys()) - except Exception: - self._set_status( - 0, - "[%s]Error: pychef fails to get databags" % self.NAME) - return + logging.info('github %s: %s', data_type, github) + logging.info('local %s: %s', data_type, local) + diff = github - local - diff = server - local - - if len(diff) > 0: - self._set_status( - 0, - "[%s]Error: %s diff: %s" % (self.NAME, diff)) + if len(diff) <= 0: + return (data_type, []) + else: + return (data_type, list(diff)) def check_chef_config_dir(self): """Validates chef configuration directories.""" @@ -123,9 +131,9 @@ class PackageInstallerCheck(base.BaseCheck): message = health_check_utils.check_path(self.NAME, '/etc/chef-server/') if not message == "": self._set_status(0, message) - return message = health_check_utils.check_path(self.NAME, '/opt/chef-server/') if not message == "": self._set_status(0, message) - return + + return None diff --git a/compass/actions/health_check/check_tftp.py b/compass/actions/health_check/check_tftp.py index f254edfd..7ca6405d 100644 --- a/compass/actions/health_check/check_tftp.py +++ b/compass/actions/health_check/check_tftp.py @@ -27,8 +27,7 @@ class TftpCheck(base.BaseCheck): def run(self): """do health check.""" - installer = self.config.OS_INSTALLER - method_name = "self.check_" + installer + "_tftp()" + method_name = "self.check_" + self.os_installer['name'] + "_tftp()" return eval(method_name) def check_cobbler_tftp(self): @@ -40,10 +39,11 @@ class TftpCheck(base.BaseCheck): try: remote = xmlrpclib.Server( - self.config.COBBLER_INSTALLER_URL, + self.os_installer['cobbler_url'], allow_none=True) + credentials = self.os_installer['credentials'] remote.login( - *self.config.COBBLER_INSTALLER_TOKEN) + credentials['username'], credentials['password']) except Exception: self._set_status( 0, diff --git a/compass/actions/health_check/setting.py b/compass/actions/health_check/setting.py index f3af93ab..a3e16ce2 100644 --- a/compass/actions/health_check/setting.py +++ b/compass/actions/health_check/setting.py @@ -13,3 +13,11 @@ # limitations under the License. """Health Check Settings.""" + +# Chef data on github +COOKBOOKS = ( + "https://api.github.com/repos/stackforge" + "/compass-adapters/contents/chef/cookbooks?ref=dev/experimental") +ROLES = ( + "https://api.github.com/repos/stackforge" + "/compass-adapters/contents/chef/roles?ref=dev/experimental") diff --git a/compass/actions/health_check/utils.py b/compass/actions/health_check/utils.py index 18cfa86a..369c5b61 100644 --- a/compass/actions/health_check/utils.py +++ b/compass/actions/health_check/utils.py @@ -16,6 +16,7 @@ import commands import os import platform +import re def validate_setting(module, setting, param): @@ -91,3 +92,23 @@ def check_chkconfig(service_name): break return chk_on + + +def strip_name(name): + """Reformats names.""" + if not any([s in name for s in "(,),-,_".split(',')]): + return name + + paren_regex = re.compile("(.*?)\s*\(") + dash_regex = re.compile("(.*?)\s*\-") + under_dash_regex = re.compile("(.*?)\s*\_") + + r1 = paren_regex.match(name) + r2 = dash_regex.match(name) + r3 = under_dash_regex.match(name) + shortest = 'AVeryLongStringForDefualt' + for r in [r1, r2, r3]: + if r and len(r.group(1)) < len(shortest): + shortest = r.group(1) + + return shortest diff --git a/compass/actions/poll_switch.py b/compass/actions/poll_switch.py index 1d66d121..cc3ef46b 100644 --- a/compass/actions/poll_switch.py +++ b/compass/actions/poll_switch.py @@ -14,16 +14,91 @@ """Module to provider function to poll switch.""" import logging +import netaddr -from compass.db import database -from compass.db.model import Machine -from compass.db.model import Switch -from compass.db.model import SwitchConfig +from compass.actions import util +from compass.db.api import database +from compass.db.api import switch as switch_api +from compass.db.api import user as user_api from compass.hdsdiscovery.hdmanager import HDManager -def poll_switch(ip_addr, req_obj='mac', oper="SCAN"): - """Query switch and return expected result +def _poll_switch(ip_addr, credentials, req_obj='mac', oper="SCAN"): + under_monitoring = 'under_monitoring' + unreachable = 'unreachable' + polling_error = 'error' + hdmanager = HDManager() + vendor, state, err_msg = hdmanager.get_vendor(ip_addr, credentials) + if not vendor: + logging.info("*****error_msg: %s****", err_msg) + logging.error('no vendor found or match switch %s', ip_addr) + return ( + { + 'vendor': vendor, 'state': state, 'err_msg': err_msg + }, { + } + ) + + logging.debug( + 'hdmanager learn switch from %s', ip_addr + ) + results = [] + try: + results = hdmanager.learn( + ip_addr, credentials, vendor, req_obj, oper + ) + except Exception as error: + logging.exception(error) + state = unreachable + err_msg = ( + 'SNMP walk for querying MAC addresses timedout' + ) + return ( + { + 'vendor': vendor, 'state': state, 'err_msg': err_msg + }, { + } + ) + + logging.info("pollswitch %s result: %s", ip_addr, results) + if not results: + logging.error( + 'no result learned from %s', ip_addr + ) + state = polling_error + err_msg = 'No result learned from SNMP walk' + return ( + {'vendor': vendor, 'state': state, 'err_msg': err_msg}, + {} + ) + + logging.info('poll switch result: %s' % str(results)) + machine_dicts = {} + for machine in results: + mac = machine['mac'] + port = machine['port'] + vlan = int(machine['vlan']) + if vlan: + vlans = [vlan] + else: + vlans = [] + if mac not in machine_dicts: + machine_dicts[mac] = {'mac': mac, 'port': port, 'vlans': vlans} + else: + machine_dicts[mac]['port'] = port + machine_dicts[mac]['vlans'].extend(vlans) + + logging.debug('update switch %s state to under monitoring', ip_addr) + state = under_monitoring + return ( + {'vendor': vendor, 'state': state, 'err_msg': err_msg}, + machine_dicts.values() + ) + + +def poll_switch(poller_email, ip_addr, credentials, + req_obj='mac', oper="SCAN"): + """Query switch and update switch machines. .. note:: When polling switch succeeds, for each mac it got from polling switch, @@ -31,6 +106,8 @@ def poll_switch(ip_addr, req_obj='mac', oper="SCAN"): :param ip_addr: switch ip address. :type ip_addr: str + :param credentials: switch crednetials. + :type credentials: dict :param req_obj: the object requested to query from switch. :type req_obj: str :param oper: the operation to query the switch. @@ -38,92 +115,28 @@ def poll_switch(ip_addr, req_obj='mac', oper="SCAN"): .. note:: The function should be called out of database session scope. - """ - under_monitoring = 'under_monitoring' - unreachable = 'unreachable' + poller = user_api.get_user_object(poller_email) + ip_int = long(netaddr.IPAddress(ip_addr)) + with util.lock('poll switch %s' % ip_addr, timeout=120) as lock: + if not lock: + raise Exception( + 'failed to acquire lock to poll switch %s' % ip_addr + ) - if not ip_addr: - logging.error('No switch IP address is provided!') - return - - with database.session() as session: - #Retrieve vendor info from switch table - switch = session.query(Switch).filter_by(ip=ip_addr).first() - logging.info("pollswitch: %s", switch) - if not switch: + logging.debug('poll switch: %s', ip_addr) + switch_dict, machine_dicts = _poll_switch( + ip_addr, credentials, req_obj=req_obj, oper=oper + ) + switches = switch_api.list_switches(poller, ip_int=ip_int) + if not switches: logging.error('no switch found for %s', ip_addr) return - credential = switch.credential - logging.info("pollswitch: credential %r", credential) - vendor = switch.vendor - prev_state = switch.state - hdmanager = HDManager() - - vendor, vstate, err_msg = hdmanager.get_vendor(ip_addr, credential) - if not vendor: - switch.state = vstate - switch.err_msg = err_msg - logging.info("*****error_msg: %s****", switch.err_msg) - logging.error('no vendor found or match switch %s', switch) - return - - switch.vendor = vendor - - # Start to poll switch's mac address..... - logging.debug('hdmanager learn switch from %s %s %s %s %s', - ip_addr, credential, vendor, req_obj, oper) - results = [] - - try: - results = hdmanager.learn( - ip_addr, credential, vendor, req_obj, oper) - except Exception as error: - logging.exception(error) - switch.state = unreachable - switch.err_msg = "SNMP walk for querying MAC addresses timedout" - return - - logging.info("pollswitch %s result: %s", switch, results) - if not results: - logging.error('no result learned from %s %s %s %s %s', - ip_addr, credential, vendor, req_obj, oper) - return - - switch_id = switch.id - filter_ports = session.query( - SwitchConfig.filter_port - ).filter( - SwitchConfig.ip == Switch.ip - ).filter( - Switch.id == switch_id - ).all() - logging.info("***********filter posts are %s********", filter_ports) - if filter_ports: - #Get all ports from tuples into list - filter_ports = [i[0] for i in filter_ports] - - for entry in results: - mac = entry['mac'] - port = entry['port'] - vlan = entry['vlan'] - if port in filter_ports: - continue - - machine = session.query(Machine).filter_by( - mac=mac, switch_id=switch_id).first() - if not machine: - machine = Machine( - mac=mac, port=port, vlan=vlan, switch_id=switch_id) - session.add(machine) - else: - machine.port = port - machine.vlan = vlan - - logging.debug('update switch %s state to under monitoring', switch) - if prev_state != under_monitoring: - #Update error message in db - switch.err_msg = "" - - switch.state = under_monitoring + for switch in switches: + for machine_dict in machine_dicts: + print 'add machine: %s' % machine_dict + switch_api.add_switch_machine( + poller, switch['id'], False, **machine_dict + ) + switch_api.update_switch(poller, switch['id'], **switch_dict) diff --git a/compass/actions/reinstall.py b/compass/actions/reinstall.py index d19f4075..62d1bcb4 100644 --- a/compass/actions/reinstall.py +++ b/compass/actions/reinstall.py @@ -19,8 +19,7 @@ import logging from compass.actions import util -from compass.config_management.utils.config_manager import ConfigManager -from compass.db import database +from compass.db.api import database def reinstall(cluster_hosts): @@ -36,12 +35,4 @@ def reinstall(cluster_hosts): if not lock: raise Exception( 'failed to acquire lock to reinstall') - logging.debug('reinstall cluster_hosts: %s', cluster_hosts) - with database.session(): - cluster_hosts, os_versions, target_systems = ( - util.update_cluster_hosts(cluster_hosts)) - manager = ConfigManager() - manager.reinstall_cluster_and_hosts( - cluster_hosts, os_versions, target_systems) - manager.sync() diff --git a/compass/actions/search.py b/compass/actions/search.py index f130d98e..73ce1d9a 100644 --- a/compass/actions/search.py +++ b/compass/actions/search.py @@ -20,7 +20,7 @@ import logging from compass.actions import util from compass.config_management.utils.config_manager import ConfigManager -from compass.db import database +from compass.db.api import database def search(cluster_hosts, cluster_propreties_match, diff --git a/compass/actions/update_progress.py b/compass/actions/update_progress.py index 05ef0857..cb7aa577 100644 --- a/compass/actions/update_progress.py +++ b/compass/actions/update_progress.py @@ -19,42 +19,15 @@ import logging from compass.actions import util -from compass.db import database +from compass.db.api import adapter_holder as adapter_api +from compass.db.api import cluster as cluster_api +from compass.db.api import host as host_api +from compass.db.api import user as user_api from compass.log_analyzor import progress_calculator from compass.utils import setting_wrapper as setting -def _cluster_filter(cluster): - """filter cluster.""" - if not cluster.state: - logging.error('there is no state for cluster %s', - cluster.id) - return False - - if cluster.state.state != 'INSTALLING': - logging.error('the cluster %s state %s is not installing', - cluster.id, cluster.state.state) - return False - - return True - - -def _host_filter(host): - """filter host.""" - if not host.state: - logging.error('there is no state for host %s', - host.id) - return False - - if host.state.state != 'INSTALLING': - logging.error('the host %s state %s is not installing', - host.id, host.state.state) - return False - - return True - - -def update_progress(cluster_hosts): +def update_progress(): """Update status and installing progress of the given cluster. :param cluster_hosts: clusters and hosts in each cluster to update. @@ -72,24 +45,250 @@ def update_progress(cluster_hosts): After the progress got updated, these information will be stored back to the log_progressing_history for next time run. """ - with util.lock('log_progressing', blocking=False) as lock: + with util.lock('log_progressing', timeout=60, blocking=False) as lock: if not lock: logging.error( - 'failed to acquire lock to calculate installation progress') + 'failed to acquire lock to calculate installation progress' + ) return - logging.info('update installing progress of cluster_hosts: %s', - cluster_hosts) - os_versions = {} - target_systems = {} - with database.session(): - cluster_hosts, os_versions, target_systems = ( - util.update_cluster_hosts( - cluster_hosts, _cluster_filter, _host_filter)) + logging.info('update installing progress') - progress_calculator.update_progress( - setting.OS_INSTALLER, - os_versions, - setting.PACKAGE_INSTALLER, - target_systems, - cluster_hosts) + user = user_api.get_user_object(setting.COMPASS_ADMIN_EMAIL) + hosts = host_api.list_hosts(user) + host_mapping = {} + for host in hosts: + if 'id' not in host: + logging.error('id is not in host %s', host) + continue + host_id = host['id'] + if 'os_name' not in host: + logging.error('os_name is not in host %s', host) + continue + if 'os_installer' not in host: + logging.error('os_installer is not in host %s', host) + continue + host_dirname = setting.HOST_INSTALLATION_LOGDIR_NAME + if host_dirname not in host: + logging.error( + '%s is not in host %s', host_dirname, host + ) + continue + host_state = host_api.get_host_state(user, host_id) + if 'state' not in host_state: + logging.error('state is not in host state %s', host_state) + continue + if host_state['state'] == 'INSTALLING': + host_log_histories = host_api.get_host_log_histories( + user, host_id + ) + host_log_history_mapping = {} + for host_log_history in host_log_histories: + if 'filename' not in host_log_history: + logging.error( + 'filename is not in host log history %s', + host_log_history + ) + continue + host_log_history_mapping[ + host_log_history['filename'] + ] = host_log_history + host_mapping[host_id] = ( + host, host_state, host_log_history_mapping + ) + else: + logging.info( + 'ignore host state %s since it is not in installing', + host_state + ) + adapters = adapter_api.list_adapters(user) + adapter_mapping = {} + for adapter in adapters: + if 'id' not in adapter: + logging.error( + 'id not in adapter %s', adapter + ) + continue + if 'package_installer' not in adapter: + logging.info( + 'package_installer not in adapter %s', adapter + ) + continue + adapter_id = adapter['id'] + adapter_mapping[adapter_id] = adapter + clusters = cluster_api.list_clusters(user) + cluster_mapping = {} + for cluster in clusters: + if 'id' not in cluster: + logging.error('id not in cluster %s', cluster) + continue + cluster_id = cluster['id'] + if 'adapter_id' not in cluster: + logging.error( + 'adapter_id not in cluster %s', + cluster + ) + continue + cluster_state = cluster_api.get_cluster_state(user, cluster_id) + if 'state' not in cluster_state: + logging.error('state not in cluster state %s', cluster_state) + continue + cluster_mapping[cluster_id] = (cluster, cluster_state) + clusterhosts = cluster_api.list_clusterhosts(user) + clusterhost_mapping = {} + for clusterhost in clusterhosts: + if 'clusterhost_id' not in clusterhost: + logging.error( + 'clusterhost_id not in clusterhost %s', + clusterhost + ) + continue + clusterhost_id = clusterhost['clusterhost_id'] + if 'distributed_system_name' not in clusterhost: + logging.error( + 'distributed_system_name is not in clusterhost %s', + clusterhost + ) + continue + clusterhost_dirname = setting.CLUSTERHOST_INATALLATION_LOGDIR_NAME + if clusterhost_dirname not in clusterhost: + logging.error( + '%s is not in clusterhost %s', + clusterhost_dirname, clusterhost + ) + continue + if 'cluster_id' not in clusterhost: + logging.error( + 'cluster_id not in clusterhost %s', + clusterhost + ) + continue + cluster_id = clusterhost['cluster_id'] + if cluster_id not in cluster_mapping: + logging.info( + 'ignore clusterhost %s ' + 'since the cluster_id ' + 'is not in cluster_mapping %s', + clusterhost, cluster_mapping + ) + continue + cluster, _ = cluster_mapping[cluster_id] + adapter_id = cluster['adapter_id'] + if adapter_id not in adapter_mapping: + logging.info( + 'ignore clusterhost %s ' + 'since the adapter_id %s ' + 'is not in adaper_mapping %s', + clusterhost, adapter_id, adapter_mapping + ) + continue + adapter = adapter_mapping[adapter_id] + if 'package_installer' not in adapter: + logging.info( + 'ignore clusterhost %s ' + 'since the package_installer is not define ' + 'in adapter %s', + clusterhost, adapter + ) + continue + package_installer = adapter['package_installer'] + clusterhost['package_installer'] = package_installer + clusterhost_state = cluster_api.get_clusterhost_self_state( + user, clusterhost_id + ) + if 'state' not in clusterhost_state: + logging.error( + 'state not in clusterhost_state %s', + clusterhost_state + ) + continue + if clusterhost_state['state'] == 'INSTALLING': + clusterhost_log_histories = ( + cluster_api.get_clusterhost_log_histories( + user, clusterhost_id + ) + ) + clusterhost_log_history_mapping = {} + for clusterhost_log_history in clusterhost_log_histories: + if 'filename' not in clusterhost_log_history: + logging.error( + 'filename not in clusterhost_log_history %s', + clusterhost_log_history + ) + continue + clusterhost_log_history_mapping[ + clusterhost_log_history['filename'] + ] = clusterhost_log_history + clusterhost_mapping[clusterhost_id] = ( + clusterhost, clusterhost_state, + clusterhost_log_history_mapping + ) + else: + logging.info( + 'ignore clusterhost state %s ' + 'since it is not in installing', + clusterhost_state + ) + + progress_calculator.update_host_progress( + host_mapping) + for host_id, (host, host_state, host_log_history_mapping) in ( + host_mapping.items() + ): + host_api.update_host_state( + user, host_id, + percentage=host_state.get('percentage', 0), + message=host_state.get('message', ''), + severity=host_state.get('severity', 'INFO') + ) + for filename, host_log_history in ( + host_log_history_mapping.items() + ): + host_api.add_host_log_history( + user, host_id, filename=filename, + position=host_log_history.get('position', 0), + percentage=host_log_history.get('percentage', 0), + partial_line=host_log_history.get('partial_line', ''), + message=host_log_history.get('message', ''), + severity=host_log_history.get('severity', 'INFO'), + line_matcher_name=host_log_history.get( + 'line_matcher_name', 'start' + ) + ) + progress_calculator.update_clusterhost_progress( + clusterhost_mapping) + for ( + clusterhost_id, + (clusterhost, clusterhost_state, clusterhost_log_history_mapping) + ) in ( + clusterhost_mapping.items() + ): + cluster_api.update_clusterhost_state( + user, clusterhost_id, + percentage=clusterhost_state.get('percentage', 0), + message=clusterhost_state.get('message', ''), + severity=clusterhost_state.get('severity', 'INFO') + ) + for filename, clusterhost_log_history in ( + clusterhost_log_history_mapping.items() + ): + cluster_api.add_clusterhost_log_history( + user, clusterhost_id, filename=filename, + position=clusterhost_log_history.get('position', 0), + percentage=clusterhost_log_history.get('percentage', 0), + partial_line=clusterhost_log_history.get( + 'partial_line', ''), + message=clusterhost_log_history.get('message', ''), + severity=clusterhost_log_history.get('severity', 'INFO'), + line_matcher_name=( + clusterhost_log_history.get( + 'line_matcher_name', 'start' + ) + ) + ) + progress_calculator.update_cluster_progress( + cluster_mapping) + for cluster_id, (cluster, cluster_state) in cluster_mapping.items(): + cluster_api.update_cluster_state( + user, cluster_id + ) diff --git a/compass/actions/util.py b/compass/actions/util.py index 0d093822..de68423e 100644 --- a/compass/actions/util.py +++ b/compass/actions/util.py @@ -21,18 +21,19 @@ import redis from contextlib import contextmanager -from compass.db import database -from compass.db.model import Cluster -from compass.db.model import Switch +from compass.db.api import database +from compass.db import models @contextmanager def lock(lock_name, blocking=True, timeout=10): redis_instance = redis.Redis() instance_lock = redis_instance.lock(lock_name, timeout=timeout) + owned = False try: locked = instance_lock.acquire(blocking=blocking) if locked: + owned = True logging.debug('acquired lock %s', lock_name) yield instance_lock else: @@ -46,82 +47,9 @@ def lock(lock_name, blocking=True, timeout=10): yield None finally: - instance_lock.acquired_until = 0 - instance_lock.release() - logging.debug('released lock %s', lock_name) - - -def update_switch_ips(switch_ips): - """get updated switch ips.""" - session = database.current_session() - switches = session.query(Switch).all() - if switch_ips: - return [ - switch.ip for switch in switches - if switch.ip in switch_ips - ] - else: - return [switch.ip for switch in switches] - - -def update_cluster_hosts(cluster_hosts, - cluster_filter=None, host_filter=None): - """get updated clusters and hosts per cluster from cluster hosts.""" - session = database.current_session() - os_versions = {} - target_systems = {} - updated_cluster_hosts = {} - clusters = session.query(Cluster).all() - for cluster in clusters: - if cluster_hosts and ( - cluster.id not in cluster_hosts and - str(cluster.id) not in cluster_hosts and - cluster.name not in cluster_hosts - ): - logging.debug('ignore cluster %s sinc it is not in %s', - cluster.id, cluster_hosts) - continue - - adapter = cluster.adapter - if not cluster.adapter: - logging.error('there is no adapter for cluster %s', - cluster.id) - continue - - if cluster_filter and not cluster_filter(cluster): - logging.debug('filter cluster %s', cluster.id) - continue - - updated_cluster_hosts[cluster.id] = [] - os_versions[cluster.id] = adapter.os - target_systems[cluster.id] = adapter.target_system - - if cluster.id in cluster_hosts: - hosts = cluster_hosts[cluster.id] - elif str(cluster.id) in cluster_hosts: - hosts = cluster_hosts[str(cluster.id)] - elif cluster.name in cluster_hosts: - hosts = cluster_hosts[cluster.name] + if owned: + instance_lock.acquired_until = 0 + instance_lock.release() + logging.debug('released lock %s', lock_name) else: - hosts = [] - - if not hosts: - hosts = [host.id for host in cluster.hosts] - - for host in cluster.hosts: - if ( - host.id not in hosts and - str(host.id) not in hosts and - host.hostname not in hosts - ): - logging.debug('ignore host %s which is not in %s', - host.id, hosts) - continue - - if host_filter and not host_filter(host): - logging.debug('filter host %s', host.id) - continue - - updated_cluster_hosts[cluster.id].append(host.id) - - return (updated_cluster_hosts, os_versions, target_systems) + logging.debug('nothing to release %s', lock_name) diff --git a/compass/api/__init__.py b/compass/api/__init__.py index 019ef671..784fe231 100644 --- a/compass/api/__init__.py +++ b/compass/api/__init__.py @@ -4,7 +4,7 @@ # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # -# http://www.apache.org/licenses/LICENSE-2.0 +# http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, @@ -12,36 +12,31 @@ # See the License for the specific language governing permissions and # limitations under the License. -__all__ = ['Flask', 'SQLAlchemy', 'compass_api'] import datetime -import jinja2 -import os - -from compass.db.model import SECRET_KEY - +from flask import Blueprint from flask.ext.login import LoginManager from flask import Flask +# from compass.api.v1.api import v1_app +from compass.utils import setting_wrapper as setting +from compass.utils import util + + app = Flask(__name__) app.debug = True +# blueprint = Blueprint('v2_app', __name__) +# app.register_blueprint(v1_app, url_prefix='/v1.0') +# app.register_blueprint(blueprint, url_prefix='/api') -app.secret_key = SECRET_KEY -app.config['AUTH_HEADER_NAME'] = 'X-Auth-Token' -app.config['REMEMBER_COOKIE_DURATION'] = datetime.timedelta(minutes=30) -templates_dir = "/".join((os.path.dirname( - os.path.dirname(os.path.realpath(__file__))), - 'templates/')) - -template_loader = jinja2.ChoiceLoader([ - app.jinja_loader, - jinja2.FileSystemLoader(templates_dir), -]) - -app.jinja_loader = template_loader +app.config['SECRET_KEY'] = 'abcd' +app.config['AUTH_HEADER_NAME'] = setting.USER_AUTH_HEADER_NAME +app.config['REMEMBER_COOKIE_DURATION'] = ( + datetime.timedelta( + seconds=util.parse_time_interval(setting.USER_TOKEN_DURATION) + ) +) login_manager = LoginManager() login_manager.login_view = 'login' login_manager.init_app(app) - -from compass.api import api as compass_api diff --git a/compass/api/api.py b/compass/api/api.py index 9f930eb6..f24f886e 100644 --- a/compass/api/api.py +++ b/compass/api/api.py @@ -1,10 +1,11 @@ +#!/usr/bin/python # Copyright 2014 Huawei Technologies Co. Ltd # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # -# http://www.apache.org/licenses/LICENSE-2.0 +# http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, @@ -13,1592 +14,2367 @@ # limitations under the License. """Define all the RestfulAPI entry points.""" + +import datetime +import functools import logging import netaddr -import re +import requests import simplejson as json -import sys - -from flask import flash -from flask import redirect -from flask import render_template -from flask import request -from flask import session as app_session -from flask import url_for - -from flask.ext.restful import Resource -from sqlalchemy.sql import and_ -from sqlalchemy.sql import or_ - -from compass.api import app -from compass.api import auth -from compass.api import errors -from compass.api import login_manager -from compass.api import util -from compass.db import database -from compass.db.model import Adapter -from compass.db.model import Cluster as ModelCluster -from compass.db.model import ClusterHost as ModelClusterHost -from compass.db.model import ClusterState -from compass.db.model import HostState -from compass.db.model import Machine as ModelMachine -from compass.db.model import Role -from compass.db.model import Switch as ModelSwitch -from compass.db.model import SwitchConfig -from compass.db.model import User as ModelUser -from compass.tasks.client import celery from flask.ext.login import current_user from flask.ext.login import login_required from flask.ext.login import login_user from flask.ext.login import logout_user +from flask import request -from flask.ext.wtf import Form -from wtforms.fields import BooleanField -from wtforms.fields import PasswordField -from wtforms.fields import TextField -from wtforms.validators import DataRequired +from compass.api import app +from compass.api import auth_handler +from compass.api import exception_handler +from compass.api import utils +from compass.db.api import adapter_holder as adapter_api +from compass.db.api import cluster as cluster_api +from compass.db.api import database +from compass.db.api import host as host_api +from compass.db.api import machine as machine_api +from compass.db.api import metadata_holder as metadata_api +from compass.db.api import network as network_api +from compass.db.api import permission as permission_api +from compass.db.api import switch as switch_api +from compass.db.api import user as user_api +from compass.db.api import user_log as user_log_api +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import setting_wrapper as setting +from compass.utils import util -@login_manager.header_loader -def load_user_from_token(token): - """Return a user object from token.""" - duration = app.config['REMEMBER_COOKIE_DURATION'] - max_age = 0 - if sys.version_info > (2, 6): - max_age = duration.total_seconds() +def log_user_action(func): + @functools.wraps(func) + def decorated_api(*args, **kwargs): + user_log_api.log_user_action(current_user.id, request.path) + return func(*args, **kwargs) + return decorated_api + + +def _clean_data(data, keys): + for key in keys: + if key in data: + del data[key] + + +def _replace_data(data, key_mapping): + for key, replaced_key in key_mapping.items(): + if key in data: + data[replaced_key] = data[key] + del data[key] + + +def _get_data(data, key): + if key in data: + if isinstance(data[key], list): + if data[key]: + if len(data[key]) == 1: + return data[key][0] + else: + raise exception_handler.BadRequest( + '%s declared multi times %s in request' % ( + key, data[key] + ) + ) + else: + return None + else: + return data[key] else: - max_age = (duration.microseconds + ( - duration.seconds + duration.days * 24 * 3600) * 1e6) / 1e6 - - user_id = auth.get_user_info_from_token(token, max_age) - if not user_id: - logging.info("No user can be found from the token!") return None - user = User.query.filter_by(id=user_id) - return user + +def _get_data_list(data, key): + if key in data: + if isinstance(data[key], list): + return data[key] + else: + return [data[key]] + else: + return [] -@login_manager.user_loader -def load_user(user_id): - """Load user from user ID.""" - return ModelUser.query.get(user_id) +def _get_request_data(): + if request.data: + try: + return json.loads(request.data) + except Exception: + raise exception_handler.BadRequest( + 'request data is not json formatted: %s' % request.data + ) + else: + return {} -@app.route('/restricted') -def restricted(): - return render_template('restricted.jinja') +def _get_request_data_as_list(): + if request.data: + try: + return json.loads(request.data) + except Exception: + raise exception_handler.BadRequest( + 'request data is not json formatted: %s' % request.data + ) + else: + return [] -@app.errorhandler(403) -def forbidden_403(exception): - """Unathenticated user page.""" - return render_template('forbidden.jinja'), 403 +def _bool_converter(value): + if not value: + return True + if value in ['False', 'false', '0']: + return False + return True -@app.route('/logout') +def _int_converter(value): + try: + return int(value) + except Exception: + raise exception_handler.BadRequest( + '%r type is not int' % value + ) + + +def _get_request_args(**kwargs): + args = dict(request.args) + logging.debug('origin request args: %s', args) + for key, value in args.items(): + if key in kwargs: + converter = kwargs[key] + if isinstance(value, list): + args[key] = [converter(item) for item in value] + else: + args[key] = converter(value) + logging.debug('request args: %s', args) + return args + + +def _group_data_action(data, **data_callbacks): + if not data: + raise exception_handler.BadRequest( + 'no action to take' + ) + unsupported_keys = list(set(data) - set(data_callbacks)) + if unsupported_keys: + raise exception_handler.BadMethod( + 'unsupported actions: %s' % unsupported_keys + ) + callback_datas = {} + for data_key, data_value in data.items(): + callback = data_callbacks[data_key] + callback_datas.setdefault(id(callback), {})[data_key] = data_value + if len(callback_datas) > 1: + raise exception_handler.BadRequest( + 'multi actions are not supported' + ) + callback_ids = {} + for data_key, data_callback in data_callbacks.items(): + callback_ids[id(data_callback)] = data_callback + for callback_id, callback_data in callback_datas.items(): + return callback_ids[callback_id](**callback_data) + + +def _wrap_response(func, response_code): + def wrapped_func(*args, **kwargs): + return utils.make_json_response( + response_code, + func(*args, **kwargs) + ) + return wrapped_func + + +def _reformat_host_networks(networks): + network_mapping = {} + for network in networks: + if 'interface' in network: + network_mapping[network['interface']] = network + return network_mapping + + +def _reformat_host(host): + if isinstance(host, list): + return [_reformat_host(item) for item in host] + if 'networks' in host: + host['networks'] = _reformat_host_networks(host['networks']) + return host + + +def _login(use_cookie): + """User login helper function.""" + data = _get_request_data() + if 'email' not in data or 'password' not in data: + raise exception_handler.BadRequest( + 'missing email or password in data' + ) + if 'expire_timestamp' not in data: + expire_timestamp = ( + datetime.datetime.now() + app.config['REMEMBER_COOKIE_DURATION'] + ) + else: + expire_timestamp = util.parse_datetime( + data['expire_timestamp'], exception_handler.BadRequest + ) + + data['expire_timestamp'] = expire_timestamp + user = auth_handler.authenticate_user(**data) + if not login_user(user, remember=data.get('remember', False)): + raise exception_handler.UserDisabled('failed to login: %s' % user) + + user_log_api.log_user_action(user.id, request.path) + response_data = user_api.record_user_token( + user, user.token, user.expire_timestamp + ) + return utils.make_json_response(200, response_data) + + +@app.route('/users/token', methods=['POST']) +def get_token(): + """Get token from email and password after user authentication.""" + return _login(False) + + +@app.route("/users/login", methods=['POST']) +def login(): + """User login.""" + return _login(True) + + +@app.route('/users/logout', methods=['POST']) @login_required def logout(): """User logout.""" + user_log_api.log_user_action(current_user.id, request.path) + response_data = user_api.clean_user_token( + current_user, current_user.token + ) logout_user() - flash('You have logged out!') - return redirect(url_for('index')) + return utils.make_json_response(200, response_data) -@app.route('/') -def index(): - """Index page.""" - return render_template('index.jinja') - - -@app.route('/token', methods=['POST']) -def get_token(): - """Get token from email and passowrd after user authentication.""" - data = json.loads(request.data) - email = data['email'] - password = data['password'] - - user = auth.authenticate_user(email, password) - if not user: - error_msg = "User cannot be found or email and password do not match!" - return errors.handle_invalid_user_info( - errors.ObjectDoesNotExist(error_msg) - ) - - token = user.get_auth_token() - login_user(user) - - return util.make_json_response( - 200, {"status": "OK", "token": token} +@app.route("/users", methods=['GET']) +@log_user_action +@login_required +def list_users(): + """list users.""" + data = _get_request_args( + is_admin=_bool_converter, + active=_bool_converter + ) + return utils.make_json_response( + 200, user_api.list_users(current_user, **data) ) -class LoginForm(Form): - """Define login form.""" - email = TextField('Email', validators=[DataRequired()]) - password = PasswordField('Password', validators=[DataRequired()]) - remember = BooleanField('Remember me', default=False) - - -@app.route("/login", methods=['GET', 'POST']) -def login(): - """User login.""" - if current_user.is_authenticated(): - return redirect(url_for('index')) - else: - form = LoginForm() - if form.validate_on_submit(): - email = form.email.data - password = form.password.data - - user = auth.authenticate_user(email, password) - if not user: - flash('Wrong username or password!', 'error') - return render_template('login.jinja', form=form) - - if login_user(user, remember=form.remember.data): - # Enable session expiration if user didnot choose to be - # remembered. - app_session.permanent = not form.remember.data - flash('Logged in successfully!', 'success') - return redirect(request.args.get('next') or url_for('index')) - else: - flash('This username is disabled!', 'error') - - return render_template('login.jinja', form=form) - - -class SwitchList(Resource): - """Query details of switches and poll swithes.""" - - ENDPOINT = "/switches" - - SWITCHIP = 'switchIp' - SWITCHIPNETWORK = 'switchIpNetwork' - LIMIT = 'limit' - - def get(self): - """List details of all switches filtered by some conditions. - - .. note:: - switchIp and swtichIpNetwork cannot be combined to use. - - :param switchIp: switch IP address - :param switchIpNetwork: switch IP network - :param limit: the number of records excepted to return - """ - qkeys = request.args.keys() - logging.info('SwitchList query strings : %s', qkeys) - switch_list = [] - - with database.session() as session: - switches = [] - switch_ips = request.args.getlist(self.SWITCHIP) - switch_ip_network = request.args.get(self.SWITCHIPNETWORK, - type=str) - limit = request.args.get(self.LIMIT, 0, type=int) - - if switch_ips and switch_ip_network: - error_msg = ("switchIp and switchIpNetwork cannot be " - "specified at the same time!") - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg)) - - if limit < 0: - error_msg = "limit cannot be less than 1!" - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg)) - - if switch_ips: - for ip_addr in switch_ips: - ip_addr = str(ip_addr) - if not util.is_valid_ip(ip_addr): - error_msg = 'SwitchIp format is incorrect!' - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg)) - - switch = session.query(ModelSwitch).filter_by(ip=ip_addr)\ - .first() - if switch: - switches.append(switch) - logging.info('[SwitchList][get] ip %s', ip_addr) - - if limit: - switches = switches[:limit] - - elif switch_ip_network: - # query all switches which belong to the same network - if not util.is_valid_ipnetowrk(switch_ip_network): - error_msg = 'SwitchIpNetwork format is incorrect!' - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg)) - - def get_queried_ip_prefix(network, prefix): - """Get Ip prefex as pattern used to query switches. - - .. note:: - Switches' Ip addresses need to match this pattern. - """ - count = int(prefix / 8) - if count == 0: - count = 1 - return network.rsplit('.', count)[0] + '.' - - ip_network = netaddr.IPNetwork(switch_ip_network) - ip_filter = get_queried_ip_prefix(str(ip_network.network), - ip_network.prefixlen) - - logging.info('ip_filter is %s', ip_filter) - result_set = [] - if limit: - result_set = session.query(ModelSwitch).filter( - ModelSwitch.ip.startswith(ip_filter) - ).limit(limit).all() - else: - result_set = session.query(ModelSwitch).filter( - ModelSwitch.ip.startswith(ip_filter) - ).all() - - for switch in result_set: - ip_addr = str(switch.ip) - if netaddr.IPAddress(ip_addr) in ip_network: - switches.append(switch) - logging.info('[SwitchList][get] ip %s', ip_addr) - - if not switch_ips and not switch_ip_network: - if limit: - switches = session.query(ModelSwitch).limit(limit).all() - else: - switches = session.query(ModelSwitch).all() - - for switch in switches: - switch_res = {} - switch_res['id'] = switch.id - switch_res['ip'] = switch.ip - switch_res['state'] = switch.state - if switch.state != 'under_monitoring': - switch_res['err_msg'] = switch.err_msg - switch_res['link'] = { - 'rel': 'self', - 'href': '/'.join((self.ENDPOINT, str(switch.id)))} - switch_list.append(switch_res) - logging.info('get switch list: %s', switch_list) - - return util.make_json_response( - 200, {"status": 'OK', - "switches": switch_list}) - - def post(self): - """Insert switch IP and the credential to db. - - .. note:: - Invoke a task to poll switch at the same time. - - :param ip: switch IP address - :param credential: a dict for accessing the switch - """ - ip_addr = None - credential = None - logging.debug('post switch request from curl is %s', request.data) - json_data = json.loads(request.data) - ip_addr = json_data['switch']['ip'] - credential = json_data['switch']['credential'] - - logging.info('post switch ip_addr=%s credential=%s(%s)', - ip_addr, credential, type(credential)) - - if not util.is_valid_ip(ip_addr): - error_msg = "Invalid IP address format!" - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg) - ) - - new_switch = {} - with database.session() as session: - switch = session.query(ModelSwitch).filter_by(ip=ip_addr).first() - logging.info('switch for ip %s: %s', ip_addr, switch) - - if switch: - error_msg = "IP address '%s' already exists" % ip_addr - value = {'failedSwitch': switch.id} - return errors.handle_duplicate_object( - errors.ObjectDuplicateError(error_msg), value - ) - - switch = ModelSwitch(ip=ip_addr) - switch.credential = credential - session.add(switch) - session.flush() - new_switch['id'] = switch.id - new_switch['ip'] = switch.ip - new_switch['state'] = switch.state - link = {'rel': 'self', - 'href': '/'.join((self.ENDPOINT, str(switch.id)))} - new_switch['link'] = link - - celery.send_task("compass.tasks.pollswitch", (ip_addr,)) - logging.info('new switch added: %s', new_switch) - return util.make_json_response( - 202, - { - "status": "accepted", - "switch": new_switch - } - ) - - -class Switch(Resource): - """Get and update a single switch information.""" - ENDPOINT = "/switches" - - def get(self, switch_id): - """Lists details of the specified switch. - - :param switch_id: switch ID in db - """ - switch_res = {} - with database.session() as session: - switch = session.query(ModelSwitch).filter_by(id=switch_id).first() - logging.info('switch for id %s: %s', switch_id, switch) - - if not switch: - error_msg = "Cannot find the switch with id=%s" % switch_id - logging.debug("[/switches/{id}]error_msg: %s", error_msg) - - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg) - ) - - switch_res['id'] = switch.id - switch_res['ip'] = switch.ip - switch_res['state'] = switch.state - if switch.state != 'under_monitoring': - switch_res['err_msg'] = switch.err_msg - switch_res['link'] = { - 'rel': 'self', - 'href': '/'.join((self.ENDPOINT, str(switch.id)))} - - logging.info('switch info for %s: %s', switch_id, switch_res) - return util.make_json_response( - 200, {"status": "OK", - "switch": switch_res}) - - def put(self, switch_id): - """Update an existing switch information. - - :param switch_id: the unqiue identifier of the switch - """ - switch = None - credential = None - logging.debug('PUT a switch request from curl is %s', request.data) - - ip_addr = None - switch_res = {} - - with database.session() as session: - switch = session.query(ModelSwitch).filter_by(id=switch_id).first() - logging.info('PUT switch id is %s: %s', switch_id, switch) - - if not switch: - # No switch is found. - error_msg = 'Cannot update a non-existing switch!' - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - json_data = json.loads(request.data) - credential = json_data['switch']['credential'] - - logging.info('PUT switch id=%s credential=%s(%s)', - switch_id, credential, type(credential)) - - switch.credential = credential - switch.state = "repolling" - switch.err_msg = "" - - ip_addr = switch.ip - switch_res['id'] = switch.id - switch_res['ip'] = switch.ip - switch_res['state'] = switch.state - link = {'rel': 'self', - 'href': '/'.join((self.ENDPOINT, str(switch.id)))} - switch_res['link'] = link - - celery.send_task("compass.tasks.pollswitch", (ip_addr,)) - return util.make_json_response( - 202, {"status": "accepted", - "switch": switch_res}) - - def delete(self, switch_id): - """No implementation. - - :param switch_id: the unique identifier of the switch. - """ - err_msg = "The delete API for switch has not been implemented!" - return errors.handle_not_allowed_method( - errors.MethodNotAllowed(err_msg)) - - -class MachineList(Resource): - """Query machines by filters.""" - ENDPOINT = "/machines" - - SWITCHID = 'switchId' - MAC = 'mac' - VLANID = 'vladId' - PORT = 'port' - LIMIT = 'limit' - - def get(self): - """Lists details of machines. - - .. note:: - The machines are filtered by some conditions as - the following. According to SwitchConfig, machines - with some ports will be filtered. - - :param switchId: the unique identifier of the switch - :param mac: the MAC address - :param vladId: the vlan ID - :param port: the port number - :param limit: the number of records expected to return - """ - switch_id = request.args.get(self.SWITCHID, type=int) - mac = request.args.get(self.MAC, None, type=str) - vlan = request.args.get(self.VLANID, type=int) - port = request.args.get(self.PORT, None) - limit = request.args.get(self.LIMIT, 0, type=int) - - with database.session() as session: - machines = [] - filter_clause = [] - if switch_id: - filter_clause.append('switch_id=%d' % switch_id) - - if mac: - filter_clause.append('mac=%s' % mac) - - if vlan: - filter_clause.append('vlan=%d' % vlan) - - if port: - filter_clause.append('port=%s' % port) - - if limit < 0: - error_msg = 'Limit cannot be less than 0!' - return errors.UserInvalidUsage( - errors.UserInvalidUsage(error_msg) - ) - # TODO(grace): support query filtered port - if filter_clause: - machines = session.query(ModelMachine)\ - .filter(and_(*filter_clause)).all() - else: - machines = session.query(ModelMachine).all() - - filter_list = session.query(ModelSwitch.id, - SwitchConfig.filter_port)\ - .filter(ModelSwitch.ip == SwitchConfig.ip)\ - .all() - ports_by_id = {} - for entry in filter_list: - s_id = entry[0] - f_port = entry[1] - ports_by_id.setdefault(s_id, []).append(f_port) - - machines_result = [] - for machine in machines: - if limit and len(machines_result) == limit: - break - - if machine.switch_id in ports_by_id: - if machine.port in ports_by_id[machine.switch_id]: - continue - - machine_res = {} - machine_res['switch_ip'] = ( - None if not machine.switch else machine.switch.ip) - machine_res['id'] = machine.id - machine_res['mac'] = machine.mac - machine_res['port'] = machine.port - machine_res['vlan'] = machine.vlan - machine_res['link'] = { - 'rel': 'self', - 'href': '/'.join((self.ENDPOINT, str(machine.id)))} - machines_result.append(machine_res) - - logging.info('machines for %s: %s', switch_id, machines_result) - return util.make_json_response( - 200, {"status": "OK", - "machines": machines_result}) - - -class Machine(Resource): - """List details of the machine with specific machine id.""" - ENDPOINT = '/machines' - - def get(self, machine_id): - """Lists details of the specified machine. - - :param machine_id: the unique identifier of the machine - """ - machine_res = {} - with database.session() as session: - machine = session.query(ModelMachine)\ - .filter_by(id=machine_id)\ - .first() - logging.info('machine for id %s: %s', machine_id, machine) - - if not machine: - error_msg = "Cannot find the machine with id=%s" % machine_id - logging.debug("[/api/machines/{id}]error_msg: %s", error_msg) - - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - machine_res['id'] = machine.id - machine_res['mac'] = machine.mac - machine_res['port'] = machine.port - machine_res['vlan'] = machine.vlan - if machine.switch: - machine_res['switch_ip'] = machine.switch.ip - else: - machine_res['switch_ip'] = None - machine_res['link'] = { - 'rel': 'self', - 'href': '/'.join((self.ENDPOINT, str(machine.id)))} - - logging.info('machine info for %s: %s', machine_id, machine_res) - return util.make_json_response( - 200, {"status": "OK", - "machine": machine_res}) - - -class Cluster(Resource): - """Creates cluster and lists cluster details. - - .. note:: - Update and list the cluster's configuration information. - """ - ENDPOINT = '/clusters' - SECURITY = 'security' - NETWORKING = 'networking' - PARTITION = 'partition' - - def get(self, cluster_id, resource=None): - """Lists details of the resource specified cluster. - - :param cluster_id: the unique identifier of the cluster - :param resource: the resource name(security, networking, partition) - """ - cluster_resp = {} - resp = {} - with database.session() as session: - cluster = session.query( - ModelCluster).filter_by(id=cluster_id).first() - logging.debug('cluster is %s', cluster) - if not cluster: - error_msg = 'Cannot found the cluster with id=%s' % cluster_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg) - ) - - if resource: - # List resource details - if resource == self.SECURITY: - cluster_resp = cluster.security - elif resource == self.NETWORKING: - cluster_resp = cluster.networking - elif resource == self.PARTITION: - cluster_resp = cluster.partition - else: - error_msg = "Invalid resource name '%s'!" % resource - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg) - ) - resp = {"status": "OK", - resource: cluster_resp} - - else: - cluster_resp['clusterName'] = cluster.name - cluster_resp['link'] = { - 'rel': 'self', - 'href': '/'.join((self.ENDPOINT, str(cluster.id))) - } - cluster_resp['id'] = cluster.id - resp = {"status": "OK", - "cluster": cluster_resp} - - logging.info('get cluster result is %s', cluster_resp) - return util.make_json_response(200, resp) - - def post(self): - """Create a new cluster. - - :param name: the name of the cluster - :param adapter_id: the unique identifier of the adapter - """ - request_data = None - request_data = json.loads(request.data) - cluster_name = request_data['cluster']['name'] - adapter_id = request_data['cluster']['adapter_id'] - cluster_resp = {} - cluster = None - - with database.session() as session: - cluster = session.query(ModelCluster).filter_by(name=cluster_name)\ - .first() - if cluster: - error_msg = "Cluster name '%s' already exists!" % cluster.name - return errors.handle_duplicate_object( - errors.ObjectDuplicateError(error_msg)) - - adapter = session.query(Adapter).filter_by(id=adapter_id).first() - if not adapter: - error_msg = "No adapter id=%s can be found!" % adapter_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - # Create a new cluster in database - cluster = ModelCluster(name=cluster_name, adapter_id=adapter_id) - session.add(cluster) - session.flush() - cluster_resp['id'] = cluster.id - cluster_resp['name'] = cluster.name - cluster_resp['adapter_id'] = cluster.adapter_id - cluster_resp['link'] = { - 'rel': 'self', - 'href': '/'.join((self.ENDPOINT, str(cluster.id))) - } - - return util.make_json_response( - 200, - { - "status": "OK", - "cluster": cluster_resp - } - ) - - def put(self, cluster_id, resource): - """Update the resource information of the specified cluster. - - :param cluster_id: the unique identifier of the cluster - :param resource: resource name(security, networking, partition) - """ - resources = { - self.SECURITY: {'validator': 'is_valid_security_config', - 'column': 'security_config'}, - self.NETWORKING: {'validator': 'is_valid_networking_config', - 'column': 'networking_config'}, - self.PARTITION: {'validator': 'is_valid_partition_config', - 'column': 'partition_config'}, - } - request_data = json.loads(request.data) - with database.session() as session: - cluster = session.query( - ModelCluster).filter_by(id=cluster_id).first() - - if not cluster: - error_msg = 'You are trying to update a non-existing cluster!' - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg) - ) - - if resource not in request_data: - error_msg = "Invalid resource name '%s'" % resource - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg) - ) - - value = request_data[resource] - - if resource not in resources.keys(): - error_msg = "Invalid resource name '%s'" % resource - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg) - ) - - validate_func = resources[resource]['validator'] - module = globals()['util'] - is_valid, msg = getattr(module, validate_func)(value) - - if is_valid: - column = resources[resource]['column'] - session.query(ModelCluster).filter_by(id=cluster_id).update( - {column: json.dumps(value)} - ) - else: - return errors.handle_mssing_input( - errors.InputMissingError(msg) - ) - - return util.make_json_response( - 200, {"status": "OK"} - ) - - -@app.route("/clusters", methods=['GET']) -def list_clusters(): - """Lists the details of all clusters.""" - endpoint = '/clusters' - state = request.args.get('state', None, type=str) - results = [] - with database.session() as session: - clusters = [] - if not state: - # Get all clusters - clusters = session.query(ModelCluster).all() - - elif state == 'undeployed': - clusters_state = session.query(ClusterState.id).all() - cluster_ids = [t[0] for t in clusters_state] - # The cluster has not been deployed yet - clusters = session.query(ModelCluster)\ - .filter(~ModelCluster.id.in_(cluster_ids))\ - .all() - elif state == 'installing': - # The deployment of this cluster is in progress. - clusters = session.query( - ModelCluster - ).filter( - ModelCluster.id == ClusterState.id, - or_( - ClusterState.state == 'INSTALLING', - ClusterState.state == 'UNINITIALIZED' - ) - ).all() - elif state == 'failed': - # The deployment of this cluster is failed. - clusters = session.query( - ModelCluster - ).filter( - ModelCluster.id == ClusterState.id, - ClusterState.state == 'ERROR' - ).all() - elif state == 'successful': - clusters = session.query( - ModelCluster - ).filter( - ModelCluster.id == ClusterState.id, - ClusterState.state == 'READY' - ).all() - - if clusters: - for cluster in clusters: - cluster_res = {} - cluster_res['clusterName'] = cluster.name - cluster_res['id'] = cluster.id - cluster_res['link'] = { - "href": "/".join((endpoint, str(cluster.id))), - "rel": "self"} - results.append(cluster_res) - - return util.make_json_response( - 200, { - "status": "OK", - "clusters": results - } +@app.route("/users", methods=['POST']) +@log_user_action +@login_required +def add_user(): + """add user.""" + data = _get_request_data() + user_dict = user_api.add_user(current_user, **data) + return utils.make_json_response( + 200, user_dict ) -@app.route("/clusters//action", methods=['POST']) -def execute_cluster_action(cluster_id): - """Execute the specified action to the cluster. +@app.route("/users/", methods=['GET']) +@log_user_action +@login_required +def show_user(user_id): + """Get user.""" + data = _get_request_args() + return utils.make_json_response( + 200, user_api.get_user(current_user, user_id, **data) + ) - :param cluster_id: the unique identifier of the cluster - :param addHosts: the action of adding excepted hosts to the cluster - :param removeHosts: the action of removing expected hosts from the cluster - :param replaceAllHosts: the action of removing all existing hosts in - cluster and add new hosts - :param deploy: the action of starting to deploy - """ - def _add_hosts(cluster_id, hosts): - """Add cluster host(s) to the cluster by cluster_id.""" - cluseter_hosts = [] - available_machines = [] - failed_machines = [] - with database.session() as session: - failed_machines = [] - for host in hosts: - # Check if machine exists - machine = session.query( - ModelMachine).filter_by(id=host).first() - if not machine: - error_msg = "Machine id=%s does not exist!" % host - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg) - ) +@app.route("/current-user", methods=['GET']) +@log_user_action +@login_required +def show_current_user(): + """Get user.""" + data = _get_request_args() + return utils.make_json_response( + 200, user_api.get_current_user(current_user, **data) + ) - clusterhost = session.query( - ModelClusterHost).filter_by(machine_id=host).first() - if clusterhost: - # Machine is already used - failed_machines.append(clusterhost.machine_id) - continue - # Add the available machine to available_machines list - available_machines.append(machine) +@app.route("/users/", methods=['PUT']) +@log_user_action +@login_required +def update_user(user_id): + """Update user.""" + data = _get_request_data() + return utils.make_json_response( + 200, + user_api.update_user( + current_user, + user_id, + **data + ) + ) - if failed_machines: - value = { - 'failedMachines': failed_machines - } - error_msg = "Conflict!" - return errors.handle_duplicate_object( - errors.ObjectDuplicateError(error_msg), value + +@app.route("/users/", methods=['DELETE']) +@log_user_action +@login_required +def delete_user(user_id): + """Delete user.""" + data = _get_request_data() + return utils.make_json_response( + 200, + user_api.del_user( + current_user, user_id, **data + ) + ) + + +@app.route("/users//permissions", methods=['GET']) +@log_user_action +@login_required +def list_user_permissions(user_id): + """Get user permissions.""" + data = _get_request_args() + return utils.make_json_response( + 200, user_api.get_permissions(current_user, user_id, **data) + ) + + +@app.route("/users//action", methods=['POST']) +@log_user_action +@login_required +def take_user_action(user_id): + """Take user action.""" + data = _get_request_data() + update_permissions_func = _wrap_response( + functools.partial( + user_api.update_permissions, current_user, user_id + ), + 200 + ) + + def disable_user(disable_user=None): + return user_api.update_user( + current_user, user_id, active=False + ) + + disable_user_func = _wrap_response( + disable_user, + 200 + ) + + def enable_user(enable_user=None): + return user_api.update_user( + current_user, user_id, active=True + ) + + enable_user_func = _wrap_response( + enable_user, + 200 + ) + return _group_data_action( + data, + add_permissions=update_permissions_func, + remove_permissions=update_permissions_func, + set_permissions=update_permissions_func, + enable_user=enable_user_func, + disable_user=disable_user_func + ) + + +@app.route( + '/users//permissions/', + methods=['GET'] +) +@log_user_action +@login_required +def show_user_permission(user_id, permission_id): + """Get a specific user permission.""" + data = _get_request_args() + return utils.make_json_response( + 200, + user_api.get_permission( + current_user, user_id, permission_id, + **data + ) + ) + + +@app.route("/users//permissions", methods=['POST']) +@log_user_action +@login_required +def add_user_permission(user_id): + """Add permission to a specific user.""" + data = _get_request_data() + return utils.make_json_response( + 200, + user_api.add_permission( + current_user, user_id, + **data + ) + ) + + +@app.route( + '/users//permissions/', + methods=['DELETE'] +) +@log_user_action +@login_required +def delete_user_permission(user_id, permission_id): + """Delete a specific user permission.""" + data = _get_request_data() + return utils.make_json_response( + 200, + user_api.del_permission( + current_user, user_id, permission_id, + **data + ) + ) + + +@app.route("/permissions", methods=['GET']) +@log_user_action +@login_required +def list_permissions(): + """List permissions.""" + data = _get_request_args() + return utils.make_json_response( + 200, + permission_api.list_permissions(current_user, **data) + ) + + +@app.route("/permissions/", methods=['GET']) +@log_user_action +@login_required +def show_permission(permission_id): + """Get permission.""" + data = _get_request_args() + return utils.make_json_response( + 200, + permission_api.get_permission(current_user, permission_id, **data) + ) + + +def _filter_timestamp(data): + timestamp_filter = {} + start = _get_data(data, 'timestamp_start') + if start is not None: + timestamp_filter['ge'] = util.parse_datetime( + start, exception_handler.BadRequest + ) + end = _get_data(data, 'timestamp_end') + if end is not None: + timestamp_filter['le'] = util.parse_datetime( + end, exception_handler.BadRequest) + range = _get_data_list(data, 'timestamp_range') + if range: + timestamp_filter['between'] = [] + for value in range: + timestamp_filter['between'].append( + util.parse_datetime_range( + value, exception_handler.BadRequest ) - - for machine, host in zip(available_machines, hosts): - host = ModelClusterHost(cluster_id=cluster_id, - machine_id=machine.id) - session.add(host) - session.flush() - cluster_res = {} - cluster_res['id'] = host.id - cluster_res['machine_id'] = machine.id - cluseter_hosts.append(cluster_res) - - logging.info('cluster_hosts result is %s', cluseter_hosts) - return util.make_json_response( - 200, { - "status": "OK", - "cluster_hosts": cluseter_hosts - } - ) - - def _remove_hosts(cluster_id, hosts): - """Remove existing cluster host from the cluster.""" - - removed_hosts = [] - with database.session() as session: - failed_hosts = [] - for host_id in hosts: - host = session.query( - ModelClusterHost - ).filter_by( - id=host_id, cluster_id=cluster_id - ).first() - - if not host: - failed_hosts.append(host_id) - continue - - host_res = { - "id": host_id, - "machine_id": host.machine_id - } - removed_hosts.append(host_res) - - if failed_hosts: - error_msg = 'Hosts do not exist! Or not in this cluster' - value = { - "failedHosts": failed_hosts - } - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg), value - ) - - filter_clause = [] - for host_id in hosts: - filter_clause.append('id=%s' % host_id) - - # Delete the requested hosts from database - session.query(ModelClusterHost).filter( - or_(*filter_clause) - ).delete(synchronize_session='fetch') - - return util.make_json_response( - 200, { - "status": "OK", - "cluster_hosts": removed_hosts - } - ) - - def _replace_all_hosts(cluster_id, hosts): - """Remove all existing hosts from the cluster and add new ones.""" - - with database.session() as session: - # Delete all existing hosts of the cluster - session.query(ModelClusterHost).filter_by( - cluster_id=cluster_id).delete() - - return _add_hosts(cluster_id, hosts) - - def _deploy(cluster_id, hosts): - """Deploy the cluster.""" - - deploy_hosts_info = [] - deploy_cluster_info = {} - with database.session() as session: - if not hosts: - # Deploy all hosts in the cluster - cluster_hosts = session.query( - ModelClusterHost).filter_by(cluster_id=cluster_id).all() - - if not cluster_hosts: - # No host belongs to this cluster - error_msg = ( - 'Cannot find any host in cluster id=%s' % cluster_id) - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - for host in cluster_hosts: - if not host.mutable: - # The host is not allowed to modified - error_msg = ( - 'The host id=%s is not allowed to be ' - 'modified now!' - ) % host.id - return errors.UserInvalidUsage( - errors.UserInvalidUsage(error_msg)) - - hosts.append(host.id) - - deploy_cluster_info["cluster_id"] = int(cluster_id) - deploy_cluster_info["url"] = '/clusters/%s/progress' % cluster_id - - for host_id in hosts: - host_info = {} - progress_url = '/cluster_hosts/%s/progress' % host_id - host_info["host_id"] = host_id - host_info["url"] = progress_url - deploy_hosts_info.append(host_info) - - # Lock cluster hosts and its cluster - session.query(ModelClusterHost).filter_by( - cluster_id=cluster_id).update({'mutable': False}) - session.query(ModelCluster).filter_by( - id=cluster_id).update({'mutable': False}) - - # Clean up cluster_state and host_state table - session.query(ClusterState).filter_by(id=cluster_id).delete() - for host_id in hosts: - session.query(HostState).filter_by(id=host_id).delete() - - celery.send_task("compass.tasks.deploy", ({cluster_id: hosts},)) - return util.make_json_response( - 202, { - "status": "accepted", - "deployment": { - "cluster": deploy_cluster_info, - "hosts": deploy_hosts_info - } - } - ) - - request_data = None - with database.session() as session: - cluster = session.query(ModelCluster).filter_by(id=cluster_id).first() - if not cluster: - error_msg = 'Cluster id=%s does not exist!' - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg) ) + data['timestamp'] = timestamp_filter + _clean_data( + data, + [ + 'timestamp_start', 'timestamp_end', + 'timestamp_range' + ] + ) - if not cluster.mutable: - # The cluster cannot be deploy again - error_msg = ("The cluster id=%s is not allowed to " - "modified or deployed!" % cluster_id) - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg)) - request_data = json.loads(request.data) - action = request_data.keys()[0] - value = request_data.get(action) - - if 'addHosts' in request_data: - return _add_hosts(cluster_id, value) - - elif 'removeHosts' in request_data: - return _remove_hosts(cluster_id, value) - - elif 'deploy' in request_data: - return _deploy(cluster_id, value) - - elif 'replaceAllHosts' in request_data: - return _replace_all_hosts(cluster_id, value) - else: - return errors.handle_invalid_usage( - errors.UserInvalidUsage('%s action is not support!' % action) +@app.route("/users/logs", methods=['GET']) +@log_user_action +@login_required +def list_all_user_actions(): + """List all users actions.""" + data = _get_request_args() + _filter_timestamp(data) + return utils.make_json_response( + 200, + user_log_api.list_actions( + current_user, **data ) + ) -class ClusterHostConfig(Resource): - """Lists and update/delete cluster host configurations.""" - - def get(self, host_id): - """Lists configuration details of the specified cluster host. - - :param host_id: the unique identifier of the host - """ - config_res = {} - with database.session() as session: - host = session.query( - ModelClusterHost).filter_by(id=host_id).first() - if not host: - # The host does not exist. - error_msg = "The host id=%s does not exist!" % host_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - config_res = host.config - - logging.debug("The config of host id=%s is %s", host_id, config_res) - return util.make_json_response( - 200, {"status": "OK", - "config": config_res}) - - def put(self, host_id): - """Update configuration of the specified cluster host. - - :param host_id: the unique identifier of the host - """ - with database.session() as session: - host = session.query( - ModelClusterHost).filter_by(id=host_id).first() - if not host: - error_msg = "The host id=%s does not exist!" % host_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - logging.debug("cluster config put request.data %s", request.data) - request_data = json.loads(request.data) - if not request_data: - error_msg = "request data is %s" % request_data - return errors.handle_mssing_input( - errors.InputMissingError(error_msg)) - - if not host.mutable: - error_msg = "The host 'id=%s' is not mutable!" % host_id - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg)) - - #Valid if keywords in request_data are all correct - if 'hostname' in request_data: - hostname = request_data['hostname'] - cluster_id = host.cluster_id - test_host = session.query(ModelClusterHost)\ - .filter_by(cluster_id=cluster_id, - hostname=hostname).first() - if test_host and test_host.id != int(host_id): - error_msg = ("Hostname '%s' has been used for other host " - "in the cluster, cluster ID is %s! %s %s" - % (hostname, cluster_id, - test_host.id, host_id)) - - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg)) - - session.query(ModelClusterHost).filter_by(id=host_id)\ - .update({"hostname": request_data['hostname']}) - del request_data['hostname'] - - try: - util.valid_host_config(request_data) - except errors.UserInvalidUsage as exc: - return errors.handle_invalid_usage(exc) - - host.config = request_data - - return util.make_json_response( - 200, {"status": "OK"}) - - def delete(self, host_id, subkey): - """Delete one attribute of the specified cluster host. - - :param host_id: the unique identifier of the host - :param subkey: the attribute name in configuration - """ - available_delete_keys = ['roles'] - with database.session() as session: - host = session.query( - ModelClusterHost).filter_by(id=host_id).first() - if not host: - error_msg = "The host id=%s does not exist!" % host_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - if subkey not in available_delete_keys: - error_msg = "subkey %s is not supported!" % subkey - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg)) - - if not host.mutable: - error_msg = "The host 'id=%s' is not mutable!" % host_id - return errors.handle_invalid_usage( - errors.UserInvalidUsage(error_msg)) - - config = json.loads(host.config_data) - # Set the subkey's value to "" - util.update_dict_value(subkey, config) - host.config = config - - return util.make_json_response( - 200, {"status": "OK"}) +@app.route("/users//logs", methods=['GET']) +@log_user_action +@login_required +def list_user_actions(user_id): + """List user actions.""" + data = _get_request_args() + _filter_timestamp(data) + return utils.make_json_response( + 200, + user_log_api.list_user_actions( + current_user, user_id, **data + ) + ) -class ClusterHost(Resource): - """List details of the cluster host by host id.""" - ENDPOINT = '/clusterhosts' - - def get(self, host_id): - """Lists details of the specified cluster host. - - :param host_id: the unique identifier of the host - """ - host_res = {} - with database.session() as session: - host = session.query( - ModelClusterHost).filter_by(id=host_id).first() - if not host: - error_msg = "The host id=%s does not exist!" % host_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - host_res['hostname'] = host.hostname - host_res['mutable'] = host.mutable - host_res['id'] = host.id - host_res['switch_ip'] = host.machine.switch.ip - host_res['link'] = { - "href": '/'.join((self.ENDPOINT, str(host.id))), - "rel": "self" - } - return util.make_json_response( - 200, {"status": "OK", - "cluster_host": host_res}) +@app.route("/users/logs", methods=['DELETE']) +@log_user_action +@login_required +def delete_all_user_actions(): + """Delete all user actions.""" + data = _get_request_data() + return utils.make_json_response( + 200, + user_log_api.del_actions( + current_user, **data + ) + ) -@app.route("/clusterhosts", methods=['GET']) -def list_clusterhosts(): - """Lists details of all cluster hosts. - - .. note:: - the cluster hosts are optionally filtered by some conditions. - - :param hostname: the name of the host - :param clstername: the name of the cluster - """ - endpoint = '/clusterhosts' - key_hostname = 'hostname' - key_clustername = 'clustername' - - hosts_list = [] - hostname = request.args.get(key_hostname, None, type=str) - clustername = request.args.get(key_clustername, None, type=str) - with database.session() as session: - hosts = None - if hostname and clustername: - hosts = session.query( - ModelClusterHost - ).join(ModelCluster).filter( - ModelClusterHost.hostname == hostname, - ModelCluster.name == clustername - ).all() - - elif hostname: - hosts = session.query( - ModelClusterHost).filter_by(hostname=hostname).all() - elif clustername: - cluster = session.query( - ModelCluster).filter_by(name=clustername).first() - if cluster: - hosts = cluster.hosts - - else: - hosts = session.query(ModelClusterHost).all() - - if hosts: - for host in hosts: - host_res = {} - host_res['hostname'] = host.hostname - host_res['mutable'] = host.mutable - host_res['id'] = host.id - host_res['switch_ip'] = host.machine.switch.ip - host_res['link'] = { - "href": '/'.join((endpoint, str(host.id))), - "rel": "self"} - hosts_list.append(host_res) - - return util.make_json_response( - 200, {"status": "OK", - "cluster_hosts": hosts_list}) +@app.route("/users//logs", methods=['DELETE']) +@log_user_action +@login_required +def delete_user_actions(user_id): + """Delete user actions.""" + data = _get_request_data() + return utils.make_json_response( + 200, + user_log_api.del_user_actions( + current_user, user_id, **data + ) + ) -@app.route("/adapters/", methods=['GET']) -def list_adapter(adapter_id): - """Lists details of the specified adapter. - - :param adapter_id: the unique identifier of the adapter - """ - endpoint = '/adapters' - adapter_res = {} - with database.session() as session: - adapter = session.query(Adapter).filter_by(id=adapter_id).first() - - if not adapter: - error_msg = "Adapter id=%s does not exist!" % adapter_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - adapter_res['name'] = adapter.name - adapter_res['os'] = adapter.os - adapter_res['id'] = adapter.id - adapter_res['target_system'] = adapter.target_system, - adapter_res['link'] = { - "href": "/".join((endpoint, str(adapter.id))), - "rel": "self"} - - return util.make_json_response( - 200, {"status": "OK", - "adapter": adapter_res}) - - -@app.route("/adapters//roles", methods=['GET']) -def list_adapter_roles(adapter_id): - """Lists details of all roles of the specified adapter - - :param adapter_id: the unique identifier of the adapter - """ - roles_list = [] - with database.session() as session: - adapter_q = session.query( - Adapter).filter_by(id=adapter_id).first() - if not adapter_q: - error_msg = "Adapter id=%s does not exist!" % adapter_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg) +def _filter_ip(data): + ip_filter = {} + switch_ips = _get_data_list(data, 'switchIp') + if switch_ips: + ip_filter['eq'] = [] + for switch_ip in switch_ips: + ip_filter['eq'].append(long(netaddr.IPAddress(switch_ip))) + switch_start = _get_data(data, 'switchIpStart') + if switch_start is not None: + ip_filter['ge'] = long(netaddr.IPAddress(switch_start)) + switch_end = _get_data(data, 'switchIpEnd') + if switch_end is not None: + ip_filter['lt'] = long(netaddr.IPAddress(switch_end)) + switch_nets = _get_data_list(data, 'switchIpNetwork') + if switch_nets: + ip_filter['between'] = [] + for switch_net in switch_nets: + network = netaddr.IPNetwork(switch_net) + ip_filter['between'].append((network.first, network.last)) + switch_ranges = _get_data_list(data, 'switchIpRange') + if switch_ranges: + ip_filter.setdefault('between', []) + for switch_range in switch_ranges: + ip_start, ip_end = switch_range.split(',') + ip_filter['between'].append( + long(netaddr.IPAddress(ip_start)), + long(netaddr.IPAddress(ip_end)) ) + if ip_filter: + data['ip_int'] = ip_filter + _clean_data( + data, + [ + 'switchIp', 'switchIpStart', 'switchIpEnd', + 'switchIpNetwork', 'switchIpRange' + ] + ) - roles = session.query( - Role, Adapter - ).filter( - Adapter.id == adapter_id, - Adapter.target_system == Role.target_system - ).all() - for role, _ in roles: - role_res = {} - role_res['name'] = role.name - role_res['description'] = role.description - roles_list.append(role_res) +@app.route("/switches", methods=['GET']) +@log_user_action +@login_required +def list_switches(): + """List switches.""" + data = _get_request_args() + _filter_ip(data) + return utils.make_json_response( + 200, + switch_api.list_switches( + current_user, **data + ) + ) - return util.make_json_response( - 200, { - "status": "OK", - "roles": roles_list - } + +@app.route("/switches/", methods=['GET']) +@log_user_action +@login_required +def show_switch(switch_id): + """Get switch.""" + data = _get_request_args() + return utils.make_json_response( + 200, switch_api.get_switch(current_user, switch_id, **data) + ) + + +@app.route("/switches", methods=['POST']) +@log_user_action +@login_required +def add_switch(): + """add switch.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.add_switch(current_user, **data) + ) + + +@app.route("/switches/", methods=['PUT']) +@log_user_action +@login_required +def update_switch(switch_id): + """update switch.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.update_switch(current_user, switch_id, **data) + ) + + +@app.route("/switches/", methods=['PATCH']) +@log_user_action +@login_required +def patch_switch(switch_id): + """patch switch.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.patch_switch(current_user, switch_id, **data) + ) + + +@app.route("/switches/", methods=['DELETE']) +@log_user_action +@login_required +def delete_switch(switch_id): + """delete switch.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.del_switch(current_user, switch_id, **data) + ) + + +@app.route("/switch-filters", methods=['GET']) +@log_user_action +@login_required +def list_switch_filters(): + """List switch filters.""" + data = _get_request_args() + _filter_ip(data) + return utils.make_json_response( + 200, + switch_api.list_switch_filters( + current_user, **data + ) + ) + + +@app.route("/switch-filters/", methods=['GET']) +@log_user_action +@login_required +def show_switch_filters(switch_id): + """Get switch filters.""" + data = _get_request_args() + return utils.make_json_response( + 200, switch_api.get_switch_filters(current_user, switch_id, **data) + ) + + +@app.route("/switch-filters/", methods=['PUT']) +@log_user_action +@login_required +def update_switch_filters(switch_id): + """update switch filters.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.update_switch_filters(current_user, switch_id, **data) + ) + + +@app.route("/switch-filters/", methods=['PATCH']) +@log_user_action +@login_required +def patch_switch_filters(switch_id): + """patch switch filters.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.patch_switch_filter(current_user, switch_id, **data) + ) + + +def _filter_port(data): + port_filter = {} + ports = _get_data_list(data, 'port') + if ports: + port_filter['eq'] = ports + port_start = _get_data(data, 'portStart') + if port_start is not None: + port_filter['resp_ge'] = int(port_start) + port_end = _get_data(data, 'portEnd') + if port_end is not None: + port_filter['resp_lt'] = int(port_end) + port_ranges = _get_data_list(data, 'portRange') + if port_ranges: + port_filter['resp_range'] = [] + for port_range in port_ranges: + port_start, port_end = port_range.split(',') + port_filter['resp_range'].append( + (int(port_start), int(port_end)) + ) + port_prefix = _get_data(data, 'portPrefix') + if port_prefix: + port_filter['startswith'] = port_prefix + port_suffix = _get_data(data, 'portSuffix') + if port_suffix: + port_filter['endswith'] = port_suffix + if port_filter: + data['port'] = port_filter + _clean_data( + data, + [ + 'portStart', 'portEnd', 'portRange', + 'portPrefix', 'portSuffix' + ] + ) + + +def _filter_general(data, key): + general_filter = {} + general = _get_data_list(data, key) + if general: + general_filter['resp_in'] = general + data[key] = general_filter + + +def _filter_tag(data): + tag_filter = {} + tags = _get_data_list(data, 'tag') + if tags: + tag_filter['resp_in'] = [] + for tag in tags: + tag_filter['resp_in'].append( + util.parse_request_arg_dict(tag) + ) + data['tag'] = tag_filter + + +def _filter_location(data): + location_filter = {} + locations = _get_data_list(data, 'location') + if locations: + location_filter['resp_in'] = [] + for location in locations: + location_filter['resp_in'].append( + util.parse_request_arg_dict(location) + ) + data['location'] = location_filter + + +@app.route("/switches//machines", methods=['GET']) +@log_user_action +@login_required +def list_switch_machines(switch_id): + """Get switch machines.""" + data = _get_request_args(vlans=_int_converter) + _filter_port(data) + _filter_general(data, 'vlans') + _filter_tag(data) + _filter_location(data) + return utils.make_json_response( + 200, + switch_api.list_switch_machines( + current_user, switch_id, **data + ) + ) + + +@app.route("/switches//machines-hosts", methods=['GET']) +@log_user_action +@login_required +def list_switch_machines_hosts(switch_id): + """Get switch machines or hosts.""" + data = _get_request_args(vlans=_int_converter, os_id=_int_converter) + _filter_port(data) + _filter_general(data, 'vlans') + _filter_tag(data) + _filter_location(data) + _filter_general(data, 'os_name') + _filter_general(data, 'os_id') + return utils.make_json_response( + 200, + switch_api.list_switch_machines_hosts( + current_user, switch_id, **data + ) + ) + + +@app.route("/switches//machines", methods=['POST']) +@log_user_action +@login_required +def add_switch_machine(switch_id): + """add switch machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.add_switch_machine(current_user, switch_id, **data) + ) + + +@app.route( + '/switches//machines/', + methods=['GET'] +) +@log_user_action +@login_required +def show_switch_machine(switch_id, machine_id): + """get switch machine.""" + data = _get_request_args() + return utils.make_json_response( + 200, + switch_api.get_switch_machine( + current_user, switch_id, machine_id, **data + ) + ) + + +@app.route( + '/switches//machines/', + methods=['PUT'] +) +@log_user_action +@login_required +def update_switch_machine(switch_id, machine_id): + """update switch machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.update_switch_machine( + current_user, switch_id, machine_id, **data + ) + ) + + +@app.route( + '/switches//machines/', + methods=['PATCH'] +) +@log_user_action +@login_required +def patch_switch_machine(switch_id, machine_id): + """patch switch machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.patch_switch_machine( + current_user, switch_id, machine_id, **data + ) + ) + + +@app.route( + '/switches//machines/', + methods=['DELETE'] +) +@log_user_action +@login_required +def delete_switch_machine(switch_id, machine_id): + """Delete switch machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.del_switch_machine( + current_user, switch_id, machine_id, **data + ) + ) + + +@app.route("/switches//action", methods=['POST']) +@log_user_action +@login_required +def take_switch_action(switch_id): + """update switch.""" + data = _get_request_data() + poll_switch_machines_func = _wrap_response( + functools.partial( + switch_api.poll_switch_machines, current_user, switch_id + ), + 202 + ) + update_switch_machines_func = _wrap_response( + functools.partial( + switch_api.update_switch_machines, current_user, switch_id + ), + 200 + ) + return _group_data_action( + data, + find_machines=poll_switch_machines_func, + add_machines=update_switch_machines_func, + remove_machines=update_switch_machines_func, + set_machines=update_switch_machines_func + ) + + +@app.route("/machines//action", methods=['POST']) +@log_user_action +@login_required +def take_machine_action(machine_id): + """update machine.""" + data = _get_request_data() + tag_func = _wrap_response( + functools.partial( + machine_api.update_machine, current_user, machine_id + ), + 200 + ) + poweron_func = _wrap_response( + functools.partial( + machine_api.poweron_machine, current_user, machine_id + ), + 202 + ) + poweroff_func = _wrap_response( + functools.partial( + machine_api.poweroff_machine, current_user, machine_id + ), + 202 + ) + reset_func = _wrap_response( + functools.partial( + machine_api.reset_machine, current_user, machine_id + ), + 202 + ) + return _group_data_action( + data, + tag=tag_func, + poweron=poweron_func, + poweroff=poweroff_func, + reset=reset_func + ) + + +@app.route("/switch-machines", methods=['GET']) +@log_user_action +@login_required +def list_switchmachines(): + """List switch machines.""" + data = _get_request_args(vlans=_int_converter) + _filter_ip(data) + _filter_port(data) + _filter_general(data, 'vlans') + _filter_tag(data) + _filter_location(data) + return utils.make_json_response( + 200, + switch_api.list_switchmachines( + current_user, **data + ) + ) + + +@app.route("/switches-machines-hosts", methods=['GET']) +@log_user_action +@login_required +def list_switchmachines_hosts(): + """List switch machines or hosts.""" + data = _get_request_args(vlans=_int_converter, os_id=_int_converter) + _filter_ip(data) + _filter_port(data) + _filter_general(data, 'vlans') + _filter_tag(data) + _filter_location(data) + _filter_general(data, 'os_name') + _filter_general(data, 'os_id') + return utils.make_json_response( + 200, + switch_api.list_switchmachines_hosts( + current_user, **data + ) + ) + + +@app.route( + '/switch-machines/', + methods=['GET'] +) +@log_user_action +@login_required +def show_switchmachine(switch_machine_id): + """get switch machine.""" + data = _get_request_args() + return utils.make_json_response( + 200, + switch_api.get_switchmachine( + current_user, switch_machine_id, **data + ) + ) + + +@app.route( + '/switch-machines/', + methods=['PUT'] +) +@log_user_action +@login_required +def update_switchmachine(switch_machine_id): + """update switch machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.update_switchmachine( + current_user, switch_machine_id, **data + ) + ) + + +@app.route('/switch-machines/', methods=['PATCH']) +@log_user_action +@login_required +def patch_switchmachine(switch_machine_id): + """patch switch machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.patch_switchmachine( + current_user, switch_machine_id, **data + ) + ) + + +@app.route("/switch-machines/", methods=['DELETE']) +@log_user_action +@login_required +def delete_switchmachine(switch_machine_id): + """Delete switch machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + switch_api.del_switchmachine( + current_user, switch_machine_id, **data + ) + ) + + +@app.route("/machines", methods=['GET']) +@log_user_action +@login_required +def list_machines(): + """List machines.""" + data = _get_request_args() + _filter_tag(data) + _filter_location(data) + return utils.make_json_response( + 200, + machine_api.list_machines( + current_user, **data + ) + ) + + +@app.route("/machines/", methods=['GET']) +@log_user_action +@login_required +def show_machine(machine_id): + """Get machine.""" + data = _get_request_args() + return utils.make_json_response( + 200, + machine_api.get_machine( + current_user, machine_id, **data + ) + ) + + +@app.route("/machines/", methods=['PUT']) +@log_user_action +@login_required +def update_machine(machine_id): + """update machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + machine_api.update_machine( + current_user, machine_id, **data + ) + ) + + +@app.route("/machines/", methods=['PATCH']) +@log_user_action +@login_required +def patch_machine(machine_id): + """patch machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + machine_api.patch_machine( + current_user, machine_id, **data + ) + ) + + +@app.route("/machines/", methods=['DELETE']) +@log_user_action +@login_required +def delete_machine(machine_id): + """Delete machine.""" + data = _get_request_data() + return utils.make_json_response( + 200, + machine_api.del_machine( + current_user, machine_id, **data + ) + ) + + +@app.route("/subnets", methods=['GET']) +@log_user_action +@login_required +def list_subnets(): + """List subnets.""" + data = _get_request_args() + return utils.make_json_response( + 200, + network_api.list_subnets( + current_user, **data + ) + ) + + +@app.route("/subnets/", methods=['GET']) +@log_user_action +@login_required +def show_subnet(subnet_id): + """Get subnet.""" + data = _get_request_args() + return utils.make_json_response( + 200, + network_api.get_subnet( + current_user, subnet_id, **data + ) + ) + + +@app.route("/subnets", methods=['POST']) +@log_user_action +@login_required +def add_subnet(): + """add subnet.""" + data = _get_request_data() + return utils.make_json_response( + 200, + network_api.add_subnet(current_user, **data) + ) + + +@app.route("/subnets/", methods=['PUT']) +@log_user_action +@login_required +def update_subnet(subnet_id): + """update subnet.""" + data = _get_request_data() + return utils.make_json_response( + 200, + network_api.update_subnet( + current_user, subnet_id, **data + ) + ) + + +@app.route("/subnets/", methods=['DELETE']) +@log_user_action +@login_required +def delete_subnet(subnet_id): + """Delete subnet.""" + data = _get_request_data() + return utils.make_json_response( + 200, + network_api.del_subnet( + current_user, subnet_id, **data + ) ) @app.route("/adapters", methods=['GET']) -def list_adapters(): - """Lists details of the adapters, optionally filtered by adapter name. - - :param name: the name of the adapter - """ - endpoint = '/adapters' - name = request.args.get('name', type=str) - adapter_list = [] - adapter_res = {} - with database.session() as session: - adapters = [] - if name: - adapters = session.query(Adapter).filter_by(name=name).all() - else: - adapters = session.query(Adapter).all() - - for adapter in adapters: - adapter_res = {} - adapter_res['name'] = adapter.name - adapter_res['os'] = adapter.os - adapter_res['target_system'] = adapter.target_system - adapter_res['id'] = adapter.id - adapter_res['link'] = { - "href": "/".join((endpoint, str(adapter.id))), - "rel": "self"} - adapter_list.append(adapter_res) - - return util.make_json_response( - 200, {"status": "OK", - "adapters": adapter_list}) - - -class HostInstallingProgress(Resource): - """Get host installing progress information.""" - - def get(self, host_id): - """Lists progress details of a specific cluster host. - - :param host_id: the unique identifier of the host - """ - progress_result = {} - with database.session() as session: - host = session.query(ModelClusterHost).filter_by(id=host_id)\ - .first() - if not host: - error_msg = "The host id=%s does not exist!" % host_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - if not host.state: - progress_result = { - 'id': host_id, - 'state': 'UNINITIALIZED', - 'percentage': 0, - 'message': "Waiting..............", - 'severity': "INFO", - } - else: - progress_result['id'] = host_id - progress_result['state'] = host.state.state - progress_result['percentage'] = host.state.progress - progress_result['message'] = host.state.message - progress_result['severity'] = host.state.severity - - logging.info('progress result for %s: %s', host_id, progress_result) - return util.make_json_response( - 200, {"status": "OK", - "progress": progress_result}) - - -class ClusterInstallingProgress(Resource): - """Get cluster installing progress information.""" - - def get(self, cluster_id): - """Lists progress details of a specific cluster. - - :param cluster_id: the unique identifier of the cluster - """ - progress_result = {} - with database.session() as session: - cluster = session.query(ModelCluster).filter_by(id=cluster_id)\ - .first() - if not cluster: - error_msg = "The cluster id=%s does not exist!" % cluster_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg)) - - if not cluster.state: - progress_result = { - 'id': cluster_id, - 'state': 'UNINITIALIZED', - 'percentage': 0, - 'message': "Waiting..............", - 'severity': "INFO" - } - else: - progress_result['id'] = cluster_id - progress_result['state'] = cluster.state.state - progress_result['percentage'] = cluster.state.progress - progress_result['message'] = cluster.state.message - progress_result['severity'] = cluster.state.severity - - logging.info('progress result for cluster %s: %s', - cluster_id, progress_result) - return util.make_json_response( - 200, {"status": "OK", - "progress": progress_result}) - - -class DashboardLinks(Resource): - """Lists dashboard links.""" - ENDPOINT = "/dashboardlinks/" - - def get(self): - """Return a list of dashboard links. - """ - cluster_id = request.args.get('cluster_id', None) - logging.info('get cluster links with cluster_id=%s', cluster_id) - links = {} - with database.session() as session: - hosts = session.query( - ModelClusterHost - ).filter_by(cluster_id=cluster_id).all() - if not hosts: - error_msg = "Cannot find hosts in cluster id=%s" % cluster_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg) - ) - - for host in hosts: - config = host.config - if ( - 'has_dashboard_roles' in config and - config['has_dashboard_roles'] - ): - ip_addr = config.get( - 'networking', {} - ).get( - 'interfaces', {} - ).get( - 'management', {} - ).get( - 'ip', '' - ) - roles = config.get('roles', []) - for role in roles: - links[role] = 'http://%s' % ip_addr - - return util.make_json_response( - 200, { - "status": "OK", - "dashboardlinks": links - } - ) - - -class User(Resource): - ENDPOINT = '/users' - - @login_required - def get(self, user_id): - """Get user's information for specified ID.""" - resp = {} - with database.session() as session: - user = session.query(ModelUser).filter_by(id=user_id).first() - - if not user: - error_msg = "Cannot find the User which id is %s" % user_id - return errors.handle_not_exist( - errors.ObjectDoesNotExist(error_msg) - ) - resp['id'] = user_id - resp['email'] = user.email - resp['link'] = { - "href": "/".join((self.ENDPOINT, str(user_id))), - "rel": "self" - } - - return util.make_json_response( - 200, {"status": "OK", - "user": resp} - ) - - -TABLES = { - 'switch_config': { - 'name': SwitchConfig, - 'columns': ['id', 'ip', 'filter_port'] - }, - 'switch': { - 'name': ModelSwitch, - 'columns': ['id', 'ip', 'credential_data'] - }, - 'machine': { - 'name': ModelMachine, - 'columns': ['id', 'mac', 'port', 'vlan', 'switch_id'] - }, - 'cluster': { - 'name': ModelCluster, - 'columns': [ - 'id', 'name', 'security_config', - 'networking_config', 'partition_config', - 'adapter_id', 'state' - ] - }, - 'cluster_host': { - 'name': ModelClusterHost, - 'columns': [ - 'id', 'cluster_id', 'hostname', 'machine_id', - 'config_data', 'state' - ] - }, - 'adapter': { - 'name': Adapter, - 'columns': ['id', 'name', 'os', 'target_system'] - }, - 'role': { - 'name': Role, - 'columns': ['id', 'name', 'target_system', 'description'] - } -} - - +@log_user_action @login_required -@app.route("/export/", methods=['GET']) -def export_csv(tname): - """export to csv file.""" - if tname not in TABLES: - error_msg = "Table '%s' is not supported to export or wrong table name" - return util.handle_invalid_usage( - errors.UserInvalidUsage(error_msg) +def list_adapters(): + """List adapters.""" + data = _get_request_args() + _filter_general(data, 'name') + _filter_general(data, 'distributed_system_name') + _filter_general(data, 'os_installer_name') + _filter_general(data, 'package_installer_name') + return utils.make_json_response( + 200, + adapter_api.list_adapters( + current_user, **data ) - - table = TABLES[tname]['name'] - colnames = TABLES[tname]['columns'] - t_headers = [] - rows = [] - with database.session() as session: - records = session.query(table).all() - # Get headers of the table - if not records: - t_headers = colnames - else: - first_record = records[0] - for col in colnames: - value = getattr(first_record, col) - if re.match(r'^{(.*:.*[,]*)}', str(value)): - # value is dict - util.get_headers_from_dict(t_headers, col, - json.loads(value)) - else: - t_headers.append(col) - - # Get columns values - for entry in records: - tmp = [] - for col in colnames: - value = None - if col == 'state': - value = entry.state.state if entry.state else None - tmp.append(value) - continue - else: - value = str(json.loads(json.dumps(getattr(entry, col)))) - - if re.match(r'^{(.*:.*[,]*)}', value): - util.get_col_val_from_dict(tmp, json.loads(value)) - else: - tmp.append(value) - - rows.append(tmp) - - if tname == 'cluster_host': - t_headers.append('deploy_action') - for row in rows: - row.append(0) - - result = ','.join(str(x) for x in t_headers) - - for row in rows: - row = ','.join(str(x) for x in row) - result = '\n'.join((result, row)) - - return util.make_csv_response(200, result, tname) + ) -util.add_resource(SwitchList, '/switches') -util.add_resource(Switch, '/switches/') -util.add_resource(MachineList, '/machines') -util.add_resource(Machine, '/machines/') -util.add_resource(Cluster, - '/clusters', - '/clusters/', - '/clusters//') -util.add_resource(ClusterHostConfig, - '/clusterhosts//config', - '/clusterhosts//config/') -util.add_resource(ClusterHost, '/clusterhosts/') -util.add_resource(HostInstallingProgress, - '/clusterhosts//progress') -util.add_resource(ClusterInstallingProgress, - '/clusters//progress') -util.add_resource(DashboardLinks, '/dashboardlinks') -util.add_resource(User, - '/users', - '/users/') +@app.route("/adapters/", methods=['GET']) +@log_user_action +@login_required +def show_adapter(adapter_id): + """Get adapter.""" + data = _get_request_args() + return utils.make_json_response( + 200, + adapter_api.get_adapter( + current_user, adapter_id, **data + ) + ) + + +@app.route("/adapters//metadata", methods=['GET']) +@log_user_action +@login_required +def show_adapter_metadata(adapter_id): + """Get adapter metadata.""" + data = _get_request_args() + return utils.make_json_response( + 200, + metadata_api.get_package_metadata( + current_user, adapter_id, **data + ) + ) + + +@app.route("/oses//metadata", methods=['GET']) +@log_user_action +@login_required +def show_os_metadata(os_id): + """Get os metadata.""" + data = _get_request_args() + return utils.make_json_response( + 200, + metadata_api.get_os_metadata( + current_user, os_id, **data + ) + ) + + +@app.route( + "/adapters//oses//metadata", + methods=['GET'] +) +@log_user_action +@login_required +def show_adapter_os_metadata(adapter_id, os_id): + """Get adapter metadata.""" + data = _get_request_args() + return utils.make_json_response( + 200, + metadata_api.get_package_os_metadata( + current_user, adapter_id, os_id, **data + ) + ) + + +@app.route("/clusters", methods=['GET']) +@log_user_action +@login_required +def list_clusters(): + """List clusters.""" + data = _get_request_args() + return utils.make_json_response( + 200, + cluster_api.list_clusters( + current_user, **data + ) + ) + + +@app.route("/clusters/", methods=['GET']) +@log_user_action +@login_required +def show_cluster(cluster_id): + """Get cluster.""" + data = _get_request_args(adapter_id=_int_converter) + return utils.make_json_response( + 200, + cluster_api.get_cluster( + current_user, cluster_id, **data + ) + ) + + +@app.route("/clusters", methods=['POST']) +@log_user_action +@login_required +def add_cluster(): + """add cluster.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.add_cluster(current_user, **data) + ) + + +@app.route("/clusters/", methods=['PUT']) +@log_user_action +@login_required +def update_cluster(cluster_id): + """update cluster.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.update_cluster( + current_user, cluster_id, **data + ) + ) + + +@app.route("/clusters/", methods=['DELETE']) +@log_user_action +@login_required +def delete_cluster(cluster_id): + """Delete cluster.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.del_cluster( + current_user, cluster_id, **data + ) + ) + + +@app.route("/clusters//config", methods=['GET']) +@log_user_action +@login_required +def show_cluster_config(cluster_id): + """Get cluster config.""" + data = _get_request_args() + return utils.make_json_response( + 200, + cluster_api.get_cluster_config( + current_user, cluster_id, **data + ) + ) + + +@app.route("/clusters//metadata", methods=['GET']) +@log_user_action +@login_required +def show_cluster_metadata(cluster_id): + """Get cluster config.""" + data = _get_request_args() + return utils.make_json_response( + 200, + cluster_api.get_cluster_metadata( + current_user, cluster_id, **data + ) + ) + + +@app.route("/clusters//config", methods=['PUT']) +@log_user_action +@login_required +def update_cluster_config(cluster_id): + """update cluster config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.update_cluster_config(current_user, cluster_id, **data) + ) + + +@app.route("/clusters//config", methods=['PATCH']) +@log_user_action +@login_required +def patch_cluster_config(cluster_id): + """patch cluster config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.patch_cluster_config(current_user, cluster_id, **data) + ) + + +@app.route("/clusters//config", methods=['DELETE']) +@log_user_action +@login_required +def delete_cluster_config(cluster_id): + """Delete cluster config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.del_cluster_config( + current_user, cluster_id, **data + ) + ) + + +@app.route("/clusters//action", methods=['POST']) +@log_user_action +@login_required +def take_cluster_action(cluster_id): + """take cluster action.""" + data = _get_request_data() + update_cluster_hosts_func = _wrap_response( + functools.partial( + cluster_api.update_cluster_hosts, current_user, cluster_id + ), + 200 + ) + review_cluster_func = _wrap_response( + functools.partial( + cluster_api.review_cluster, current_user, cluster_id + ), + 200 + ) + deploy_cluster_func = _wrap_response( + functools.partial( + cluster_api.deploy_cluster, current_user, cluster_id + ), + 202 + ) + return _group_data_action( + data, + add_hosts=update_cluster_hosts_func, + set_hosts=update_cluster_hosts_func, + remove_hosts=update_cluster_hosts_func, + review=review_cluster_func, + deploy=deploy_cluster_func + ) + + +@app.route("/clusters//state", methods=['GET']) +@log_user_action +@login_required +def get_cluster_state(cluster_id): + """Get cluster state.""" + data = _get_request_args() + return utils.make_json_response( + 200, + cluster_api.get_cluster_state( + current_user, cluster_id, **data + ) + ) + + +@app.route("/clusters//hosts", methods=['GET']) +@log_user_action +@login_required +def list_cluster_hosts(cluster_id): + """Get cluster hosts.""" + data = _get_request_args() + return utils.make_json_response( + 200, + _reformat_host(cluster_api.list_cluster_hosts( + current_user, cluster_id, **data + )) + ) + + +@app.route("/clusterhosts", methods=['GET']) +@log_user_action +@login_required +def list_clusterhosts(): + """Get cluster hosts.""" + data = _get_request_args() + return utils.make_json_response( + 200, + _reformat_host(cluster_api.list_clusterhosts( + current_user, **data + )) + ) + + +@app.route("/clusters//hosts/", methods=['GET']) +@log_user_action +@login_required +def show_cluster_host(cluster_id, host_id): + """Get clusterhost.""" + data = _get_request_args() + return utils.make_json_response( + 200, + _reformat_host(cluster_api.get_cluster_host( + current_user, cluster_id, host_id, **data + )) + ) + + +@app.route("/clusterhosts/", methods=['GET']) +@log_user_action +@login_required +def show_clusterhost(clusterhost_id): + """Get clusterhost.""" + data = _get_request_args() + return utils.make_json_response( + 200, + _reformat_host(cluster_api.get_clusterhost( + current_user, clusterhost_id, **data + )) + ) + + +@app.route("/clusters//hosts", methods=['POST']) +@log_user_action +@login_required +def add_cluster_host(cluster_id): + """update cluster hosts.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.add_cluster_host(current_user, cluster_id, **data) + ) + + +@app.route( + '/clusters//hosts/', + methods=['PUT'] +) +@log_user_action +@login_required +def update_cluster_host(cluster_id, host_id): + """Update cluster host.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.update_cluster_host( + current_user, cluster_id, host_id, **data + ) + ) + + +@app.route( + '/clusterhosts/', + methods=['PUT'] +) +@log_user_action +@login_required +def update_clusterhost(clusterhost_id): + """Update cluster host.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.update_clusterhost( + current_user, clusterhost_id, **data + ) + ) + + +@app.route( + '/clusters//hosts/', + methods=['PATCH'] +) +@log_user_action +@login_required +def patch_cluster_host(cluster_id, host_id): + """Update cluster host.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.patch_cluster_host( + current_user, cluster_id, host_id, **data + ) + ) + + +@app.route( + '/clusterhosts/', + methods=['PATCH'] +) +@log_user_action +@login_required +def patch_clusterhost(clusterhost_id): + """Update cluster host.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.patch_clusterhost( + current_user, clusterhost_id, **data + ) + ) + + +@app.route( + '/clusters//hosts/', + methods=['DELETE'] +) +@log_user_action +@login_required +def delete_cluster_host(cluster_id, host_id): + """Delete cluster host.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.del_cluster_host( + current_user, cluster_id, host_id, **data + ) + ) + + +@app.route( + '/clusterhosts/', + methods=['DELETE'] +) +@log_user_action +@login_required +def delete_clusterhost(clusterhost_id): + """Delete cluster host.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.del_clusterhost( + current_user, clusterhost_id, **data + ) + ) + + +@app.route( + "/clusters//hosts//config", + methods=['GET'] +) +@log_user_action +@login_required +def show_cluster_host_config(cluster_id, host_id): + """Get clusterhost config.""" + data = _get_request_args() + return utils.make_json_response( + 200, + cluster_api.get_cluster_host_config( + current_user, cluster_id, host_id, **data + ) + ) + + +@app.route("/clusterhosts//config", methods=['GET']) +@log_user_action +@login_required +def show_clusterhost_config(clusterhost_id): + """Get clusterhost config.""" + data = _get_request_args() + return utils.make_json_response( + 200, + cluster_api.get_clusterhost_config( + current_user, clusterhost_id, **data + ) + ) + + +@app.route( + "/clusters//hosts//config", + methods=['PUT'] +) +@log_user_action +@login_required +def update_cluster_host_config(cluster_id, host_id): + """update clusterhost config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.update_cluster_host_config( + current_user, cluster_id, host_id, **data + ) + ) + + +@app.route("/clusterhosts//config", methods=['PUT']) +@log_user_action +@login_required +def update_clusterhost_config(clusterhost_id): + """update clusterhost config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.update_clusterhost_config( + current_user, clusterhost_id, **data + ) + ) + + +@app.route( + "/clusters//hosts//config", + methods=['PATCH'] +) +@log_user_action +@login_required +def patch_cluster_host_config(cluster_id, host_id): + """patch clusterhost config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.patch_cluster_host_config( + current_user, cluster_id, host_id, **data + ) + ) + + +@app.route("/clusterhosts/", methods=['PATCH']) +@log_user_action +@login_required +def patch_clusterhost_config(clusterhost_id): + """patch clusterhost config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.patch_clusterhost_config( + current_user, clusterhost_id, **data + ) + ) + + +@app.route( + "/clusters//hosts//config", + methods=['DELETE'] +) +@log_user_action +@login_required +def delete_cluster_host_config(cluster_id, host_id): + """Delete clusterhost config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.del_clusterhost_config( + current_user, cluster_id, host_id, **data + ) + ) + + +@app.route("/clusterhosts//config", methods=['DELETE']) +@log_user_action +@login_required +def delete_clusterhost_config(clusterhost_id): + """Delete clusterhost config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.del_clusterhost_config( + current_user, clusterhost_id, **data + ) + ) + + +@app.route( + "/clusters//hosts//state", + methods=['GET'] +) +@log_user_action +@login_required +def show_cluster_host_state(cluster_id, host_id): + """Get clusterhost state.""" + data = _get_request_args() + return utils.make_json_response( + 200, + cluster_api.get_cluster_host_state( + current_user, cluster_id, host_id, **data + ) + ) + + +@app.route("/clusterhosts//state", methods=['GET']) +@log_user_action +@login_required +def show_clusterhost_state(clusterhost_id): + """Get clusterhost state.""" + data = _get_request_args() + return utils.make_json_response( + 200, + cluster_api.get_clusterhost_state( + current_user, clusterhost_id, **data + ) + ) + + +@app.route( + "/clusters//hosts//state", + methods=['PUT'] +) +@log_user_action +@login_required +def update_cluster_host_state(cluster_id, host_id): + """update clusterhost state.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.update_clusterhost_state( + current_user, cluster_id, host_id, **data + ) + ) + + +@app.route("/clusterhosts//state", methods=['PUT']) +@log_user_action +@login_required +def update_clusterhost_state(clusterhost_id): + """update clusterhost state.""" + data = _get_request_data() + return utils.make_json_response( + 200, + cluster_api.update_clusterhost_state( + current_user, clusterhost_id, **data + ) + ) + + +@app.route("/hosts", methods=['GET']) +@log_user_action +@login_required +def list_hosts(): + """List hosts.""" + data = _get_request_args() + return utils.make_json_response( + 200, + _reformat_host(host_api.list_hosts( + current_user, **data + )) + ) + + +@app.route("/hosts/", methods=['GET']) +@log_user_action +@login_required +def show_host(host_id): + """Get host.""" + data = _get_request_args() + return utils.make_json_response( + 200, + _reformat_host(host_api.get_host( + current_user, host_id, **data + )) + ) + + +@app.route("/machines-hosts", methods=['GET']) +@log_user_action +@login_required +def list_machines_or_hosts(): + """Get host.""" + data = _get_request_args(os_id=_int_converter) + _filter_tag(data) + _filter_location(data) + _filter_general(data, 'os_name') + _filter_general(data, 'os_id') + return utils.make_json_response( + 200, + _reformat_host(host_api.list_machines_or_hosts( + current_user, **data + )) + ) + + +@app.route("/machines-hosts/", methods=['GET']) +@log_user_action +@login_required +def show_machine_or_host(host_id): + """Get host.""" + data = _get_request_args() + return utils.make_json_response( + 200, + _reformat_host(host_api.get_machine_or_host( + current_user, host_id, **data + )) + ) + + +@app.route("/hosts/", methods=['PUT']) +@log_user_action +@login_required +def update_host(host_id): + """update host.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.update_host( + current_user, host_id, **data + ) + ) + + +@app.route("/hosts", methods=['PUT']) +@log_user_action +@login_required +def update_hosts(): + """update hosts.""" + data = _get_request_data_as_list() + return utils.make_json_response( + 200, + host_api.update_hosts( + current_user, data + ) + ) + + +@app.route("/hosts/", methods=['DELETE']) +@log_user_action +@login_required +def delete_host(host_id): + """Delete host.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.del_host( + current_user, host_id, **data + ) + ) + + +@app.route("/hosts//clusters", methods=['GET']) +@log_user_action +@login_required +def get_host_clusters(host_id): + """Get host clusters.""" + data = _get_request_args() + return utils.make_json_response( + 200, + host_api.get_host_clusters( + current_user, host_id, **data + ) + ) + + +@app.route("/hosts//config", methods=['GET']) +@log_user_action +@login_required +def show_host_config(host_id): + """Get host config.""" + data = _get_request_args() + return utils.make_json_response( + 200, + host_api.get_host_config( + current_user, host_id, **data + ) + ) + + +@app.route("/hosts//config", methods=['PUT']) +@log_user_action +@login_required +def update_host_config(host_id): + """update host config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.update_host_config(current_user, host_id, **data) + ) + + +@app.route("/hosts/", methods=['PATCH']) +@log_user_action +@login_required +def patch_host_config(host_id): + """patch host config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.patch_host_config(current_user, host_id, **data) + ) + + +@app.route("/hosts//config", methods=['DELETE']) +@log_user_action +@login_required +def delete_host_config(host_id): + """Delete host config.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.del_host_config( + current_user, host_id, **data + ) + ) + + +@app.route("/hosts//networks", methods=['GET']) +@log_user_action +@login_required +def list_host_networks(host_id): + """list host networks.""" + data = _get_request_args() + return utils.make_json_response( + 200, + _reformat_host_networks( + host_api.list_host_networks( + current_user, host_id, **data + ) + ) + ) + + +@app.route("/host/networks", methods=['GET']) +@log_user_action +@login_required +def list_hostnetworks(): + """list host networks.""" + data = _get_request_args( + is_mgmt=_bool_converter, + is_promiscuous=_bool_converter + ) + return utils.make_json_response( + 200, + _reformat_host_networks( + host_api.list_hostnetworks(current_user, **data) + ) + ) + + +@app.route( + "/hosts//networks/", + methods=['GET'] +) +@log_user_action +@login_required +def show_host_network(host_id, host_network_id): + """Get host network.""" + data = _get_request_args() + return utils.make_json_response( + 200, + host_api.get_host_network( + current_user, host_id, host_network_id, **data + ) + ) + + +@app.route("/host/networks/", methods=['GET']) +@log_user_action +@login_required +def show_hostnetwork(host_network_id): + """Get host network.""" + data = _get_request_args() + return utils.make_json_response( + 200, + host_api.get_hostnetwork( + current_user, host_network_id, **data + ) + ) + + +@app.route("/hosts//networks", methods=['POST']) +@log_user_action +@login_required +def add_host_network(host_id): + """add host network.""" + data = _get_request_data() + return utils.make_json_response( + 200, host_api.add_host_network(current_user, host_id, **data) + ) + + +@app.route("/hosts/networks", methods=['PUT']) +@log_user_action +@login_required +def update_host_networks(): + """add host networks.""" + data = _get_request_data_as_list() + return utils.make_json_response( + 200, host_api.add_host_networks( + current_user, data) + ) + + +@app.route( + "/hosts//networks/", + methods=['PUT'] +) +@log_user_action +@login_required +def update_host_network(host_id, host_network_id): + """update host network.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.update_host_network( + current_user, host_id, host_network_id, **data + ) + ) + + +@app.route("/host-networks/", methods=['PUT']) +@log_user_action +@login_required +def update_hostnetwork(host_network_id): + """update host network.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.update_hostnetwork( + current_user, host_network_id, **data + ) + ) + + +@app.route( + "/hosts//networks/", + methods=['DELETE'] +) +@log_user_action +@login_required +def delete_host_network(host_id, host_network_id): + """Delete host network.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.del_host_network( + current_user, host_id, host_network_id, **data + ) + ) + + +@app.route("/host-networks/", methods=['DELETE']) +@log_user_action +@login_required +def delete_hostnetwork(host_network_id): + """Delete host network.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.del_hostnetwork( + current_user, host_network_id, **data + ) + ) + + +@app.route("/hosts//state", methods=['GET']) +@log_user_action +@login_required +def show_host_state(host_id): + """Get host state.""" + data = _get_request_args() + return utils.make_json_response( + 200, + host_api.get_host_state( + current_user, host_id, **data + ) + ) + + +@app.route("/hosts//state", methods=['PUT']) +@log_user_action +@login_required +def update_host_state(host_id): + """update host state.""" + data = _get_request_data() + return utils.make_json_response( + 200, + host_api.update_host_state( + current_user, host_id, **data + ) + ) + + +def _poweron_host(*args, **kwargs): + return utils.make_json_response( + 202, + host_api.poweron_host( + *args, **kwargs + ) + ) + + +def _poweroff_host(*args, **kwargs): + return utils.make_json_response( + 202, + host_api.poweroff_host( + *args, **kwargs + ) + ) + + +def _reset_host(*args, **kwargs): + return utils.make_json_response( + 202, + host_api.reset_host( + *args, **kwargs + ) + ) + + +@app.route("/hosts//action", methods=['POST']) +@log_user_action +@login_required +def take_host_action(host_id): + """take host action.""" + data = _get_request_data() + poweron_func = _wrap_response( + functools.partial( + host_api.poweron_host, current_user, host_id + ), + 202 + ) + poweroff_func = _wrap_response( + functools.partial( + host_api.poweroff_host, current_user, host_id + ), + 202 + ) + reset_func = _wrap_response( + functools.partial( + host_api.reset_host, current_user, host_id + ) + ) + return _group_data_action( + data, + poweron=poweron_func, + poweroff=poweroff_func, + reset=reset_func, + ) + + +def _get_headers(*keys): + headers = {} + for key in keys: + if key in request.headers: + headers[key] = request.headers[key] + return headers + + +def _get_response_json(response): + try: + return response.json() + except ValueError: + return response.text + + +@app.route("/proxy/", methods=['GET']) +@log_user_action +@login_required +def proxy_get(url): + """proxy url.""" + headers = _get_headers( + 'Content-Type', 'Accept-Encoding', + 'Content-Encoding', 'Accept', 'User-Agent', + 'Content-MD5', 'Transfer-Encoding', app.config['AUTH_HEADER_NAME'], + 'Cookie' + ) + response = requests.get( + '%s/%s' % (setting.PROXY_URL_PREFIX, url), + params=_get_request_args(), + headers=headers, + stream=True + ) + logging.debug( + 'proxy %s response: %s', + url, response.text + ) + return utils.make_json_response( + response.status_code, _get_response_json(response) + ) + + +@app.route("/proxy/", methods=['POST']) +@log_user_action +@login_required +def proxy_post(url): + """proxy url.""" + headers = _get_headers( + 'Content-Type', 'Accept-Encoding', + 'Content-Encoding', 'Accept', 'User-Agent', + 'Content-MD5', 'Transfer-Encoding', + 'Cookie' + ) + response = requests.post( + '%s/%s' % (setting.PROXY_URL_PREFIX, url), + data=request.data, + headers=headers + ) + logging.debug( + 'proxy %s response: %s', + url, response.text + ) + return utils.make_json_response( + response.status_code, _get_response_json(response) + ) + + +@app.route("/proxy/", methods=['PUT']) +@log_user_action +@login_required +def proxy_put(url): + """proxy url.""" + headers = _get_headers( + 'Content-Type', 'Accept-Encoding', + 'Content-Encoding', 'Accept', 'User-Agent', + 'Content-MD5', 'Transfer-Encoding', + 'Cookie' + ) + response = requests.put( + '%s/%s' % (setting.PROXY_URL_PREFIX, url), + data=request.data, + headers=headers + ) + logging.debug( + 'proxy %s response: %s', + url, response.text + ) + return utils.make_json_response( + response.status_code, _get_response_json(response) + ) + + +@app.route("/proxy/", methods=['PATCH']) +@log_user_action +@login_required +def proxy_patch(url): + """proxy url.""" + headers = _get_headers( + 'Content-Type', 'Accept-Encoding', + 'Content-Encoding', 'Accept', 'User-Agent', + 'Content-MD5', 'Transfer-Encoding', + 'Cookie' + ) + response = requests.patch( + '%s/%s' % (setting.PROXY_URL_PREFIX, url), + data=request.data, + headers=headers + ) + logging.debug( + 'proxy %s response: %s', + url, response.text + ) + return utils.make_json_response( + response.status_code, _get_response_json(response) + ) + + +@app.route("/proxy/", methods=['DELETE']) +@log_user_action +@login_required +def proxy_delete(url): + """proxy url.""" + headers = _get_headers( + 'Content-Type', 'Accept-Encoding', + 'Content-Encoding', 'Accept', 'User-Agent', + 'Content-MD5', 'Transfer-Encoding', + 'Cookie' + ) + response = requests.delete( + '%s/%s' % (setting.PROXY_URL_PREFIX, url), + headers=headers + ) + logging.debug( + 'proxy %s response: %s', + url, response.text + ) + return utils.make_json_response( + response.status_code, _get_response_json(response) + ) + + +def init(): + logging.info('init flask') + database.init() + adapter_api.load_adapters() + metadata_api.load_metadatas() if __name__ == '__main__': - app.run(debug=True) + flags.init() + logsetting.init() + init() + app.run(host='0.0.0.0') diff --git a/compass/api/auth.py b/compass/api/auth.py deleted file mode 100644 index b0afd052..00000000 --- a/compass/api/auth.py +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -from itsdangerous import BadData -import logging - -from compass.db.model import login_serializer -from compass.db.model import User - - -def get_user_info_from_token(token, max_age): - """Return user's ID and hased password from token.""" - - user_id = None - try: - user_id = login_serializer.loads(token, max_age=max_age) - - except BadData as err: - logging.error("[auth][get_user_info_from_token] Exception: %s", err) - return None - - return user_id - - -def authenticate_user(email, pwd): - """Authenticate a use by email and password.""" - - try: - user = User.query.filter_by(email=email).first() - if user and user.valid_password(pwd): - return user - except Exception as err: - print '[auth][authenticate_user]Exception: %s' % err - logging.info('[auth][authenticate_user]Exception: %s', err) - - return None diff --git a/compass/api/auth_handler.py b/compass/api/auth_handler.py new file mode 100644 index 00000000..3c22ebb9 --- /dev/null +++ b/compass/api/auth_handler.py @@ -0,0 +1,49 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from itsdangerous import BadData +import logging +import sys + +from compass.api import app +from compass.api import exception_handler +from compass.api import login_manager + +from compass.db.api import user as user_api +from compass.db.api.user import UserWrapper + + +def authenticate_user(email, password, **kwargs): + """Authenticate a user by email and password.""" + user = user_api.get_user_object( + email, **kwargs + ) + user.authenticate(password) + return user + + +@login_manager.token_loader +def load_user_from_token(token): + return user_api.get_user_object_from_token(token) + + +@login_manager.header_loader +def load_user_from_header(header): + """Return a user object from token.""" + return user_api.get_user_object_from_token(header) + + +@login_manager.user_loader +def load_user(token): + return user_api.get_user_object_from_token(token) diff --git a/compass/api/errors.py b/compass/api/errors.py deleted file mode 100644 index 2b114431..00000000 --- a/compass/api/errors.py +++ /dev/null @@ -1,145 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Exception and its handler.""" -from compass.api import app -from compass.api import util - - -class ObjectDoesNotExist(Exception): - """Define the exception for referring non-existing object.""" - def __init__(self, message): - super(ObjectDoesNotExist, self).__init__(message) - self.message = message - - def __str__(self): - return repr(self.message) - - -class UserInvalidUsage(Exception): - """Define the exception for fault usage of users.""" - def __init__(self, message): - super(UserInvalidUsage, self).__init__(message) - self.message = message - - def __str__(self): - return repr(self.message) - - -class ObjectDuplicateError(Exception): - """Define the duplicated object exception.""" - def __init__(self, message): - super(ObjectDuplicateError, self).__init__(message) - self.message = message - - def __str__(self): - return repr(self.message) - - -class InputMissingError(Exception): - """Define the insufficient input exception.""" - def __init__(self, message): - super(InputMissingError, self).__init__(message) - self.message = message - - def __str__(self): - return repr(self.message) - - -class MethodNotAllowed(Exception): - """Define the exception which invalid method is called.""" - def __init__(self, message): - super(MethodNotAllowed, self).__init__(message) - self.message = message - - def __str__(self): - return repr(self.message) - - -class InvalidUserInfo(Exception): - """Define the Exception for incorrect user information.""" - def __init__(self, message): - super(InvalidUserInfo, self).__init__(message) - self.message = message - - -@app.errorhandler(ObjectDoesNotExist) -def handle_not_exist(error, failed_objs=None): - """Handler of ObjectDoesNotExist Exception.""" - - message = {'status': 'Not Found', - 'message': error.message} - - if failed_objs and isinstance(failed_objs, dict): - message.update(failed_objs) - - return util.make_json_response(404, message) - - -@app.errorhandler(UserInvalidUsage) -def handle_invalid_usage(error): - """Handler of UserInvalidUsage Exception.""" - - message = { - 'status': 'Invalid parameters', - 'message': error.message - } - - return util.make_json_response(400, message) - - -@app.errorhandler(InputMissingError) -def handle_mssing_input(error): - """Handler of InputMissingError Exception.""" - - message = { - 'status': 'Insufficient data', - 'message': error.message - } - - return util.make_json_response(400, message) - - -@app.errorhandler(ObjectDuplicateError) -def handle_duplicate_object(error, failed_objs=None): - """Handler of ObjectDuplicateError Exception.""" - - message = { - 'status': 'Conflict Error', - 'message': error.message - } - - if failed_objs and isinstance(failed_objs, dict): - message.update(failed_objs) - - return util.make_json_response(409, message) - - -@app.errorhandler(MethodNotAllowed) -def handle_not_allowed_method(error): - """Handler of MethodNotAllowed Exception.""" - - message = { - "status": "Method Not Allowed", - "message": "The method is not allowed to use" - } - return util.make_json_response(405, message) - - -@app.errorhandler(InvalidUserInfo) -def handle_invalid_user_info(error): - """Handler of InvalidUserInfo Exception.""" - message = {"status": "Incorrect User Info", - "message": error.message} - return util.make_json_response(401, message) diff --git a/compass/api/exception_handler.py b/compass/api/exception_handler.py new file mode 100644 index 00000000..a9001394 --- /dev/null +++ b/compass/api/exception_handler.py @@ -0,0 +1,95 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Exceptions for RESTful API.""" +import logging +import simplejson as json +import traceback + +from compass.api import app +from compass.api import utils + + +class HTTPException(Exception): + def __init__(self, message, status_code): + super(HTTPException, self).__init__(message) + self.traceback = traceback.format_exc() + self.status_code = status_code + + def to_dict(self): + return {'message': str(self)} + + +class ItemNotFound(HTTPException): + """Define the exception for referring non-existing object.""" + def __init__(self, message): + super(ItemNotFound, self).__init__(message, 410) + + +class BadRequest(HTTPException): + """Define the exception for invalid/missing parameters or a user makes + a request in invalid state and cannot be processed at this moment. + """ + def __init__(self, message): + super(BadRequest, self).__init__(message, 400) + + +class Unauthorized(HTTPException): + """Define the exception for invalid user login.""" + def __init__(self, message): + super(Unauthorized, self).__init__(message, 401) + + +class UserDisabled(HTTPException): + """Define the exception that a disabled user tries to do some operations. + """ + def __init__(self, message): + super(UserDisabled, self).__init__(message, 403) + + +class Forbidden(HTTPException): + """Define the exception that a user tries to do some operations without + valid permissions. + """ + def __init__(self, message): + super(Forbidden, self).__init__(message, 403) + + +class BadMethod(HTTPException): + """Define the exception for invoking unsupprted or unimplemented methods. + """ + def __init__(self, message): + super(BadMethod, self).__init__(message, 405) + + +class ConflictObject(HTTPException): + """Define the exception for creating an existing object.""" + def __init__(self, message): + super(ConflictObject, self).__init__(message, 409) + + +@app.errorhandler(Exception) +def handle_exception(error): + if hasattr(error, 'to_dict'): + response = error.to_dict() + else: + response = {'message': str(error)} + if app.debug and hasattr(error, 'traceback'): + response['traceback'] = error.traceback + + status_code = 400 + if hasattr(error, 'status_code'): + status_code = error.status_code + + return utils.make_json_response(status_code, response) diff --git a/compass/api/util.py b/compass/api/util.py deleted file mode 100644 index a9abed29..00000000 --- a/compass/api/util.py +++ /dev/null @@ -1,411 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Utils for API usage.""" -import netaddr -import re - -from flask.ext.restful import Api -from flask import make_response -import simplejson as json - -from compass.api import app - - -API = Api(app) - - -def make_json_response(status_code, data): - """Wrap json format to the reponse object.""" - - result = json.dumps(data, indent=4) + '\r\n' - resp = make_response(result, status_code) - resp.headers['Content-type'] = 'application/json' - return resp - - -def make_csv_response(status_code, csv_data, fname): - """Wrap CSV format to the reponse object.""" - fname = '.'.join((fname, 'csv')) - resp = make_response(csv_data, status_code) - resp.mimetype = 'text/csv' - resp.headers['Content-Disposition'] = 'attachment; filename="%s"' % fname - return resp - - -def add_resource(*args, **kwargs): - """Add resource.""" - API.add_resource(*args, **kwargs) - - -def is_valid_ip(ip_address): - """Valid the format of an Ip address.""" - if not ip_address: - return False - - regex = (r'^(([0-9]|[1-9][0-9]|1[0-9]{2}|[1-2][0-4][0-9]|25[0-5])\.)' - r'{3}' - r'([0-9]|[1-9][0-9]|1[0-9]{2}|[1-2][0-4][0-9]|25[0-5])') - - if re.match(regex, ip_address): - return True - - return False - - -def is_valid_ipnetowrk(ip_network): - """Valid the format of an Ip network.""" - - if not ip_network: - return False - - regex = (r'^(([0-9]|[1-9][0-9]|1[0-9]{2}|[1-2][0-4][0-9]|25[0-5])\.)' - r'{3}' - r'([0-9]|[1-9][0-9]|1[0-9]{2}|[1-2][0-4][0-9]|25[0-5])' - r'((\/[0-9]|\/[1-2][0-9]|\/[1-3][0-2]))$') - - if re.match(regex, ip_network): - return True - return False - - -def is_valid_netmask(ip_addr): - """Valid the format of a netmask.""" - try: - ip_address = netaddr.IPAddress(ip_addr) - return ip_address.is_netmask() - - except Exception: - return False - - -def is_valid_gateway(ip_addr): - """Valid the format of gateway.""" - - invalid_ip_prefix = ['0', '224', '169', '127'] - try: - # Check if ip_addr is an IP address and not start with 0 - ip_addr_prefix = ip_addr.split('.')[0] - if is_valid_ip(ip_addr) and ip_addr_prefix not in invalid_ip_prefix: - ip_address = netaddr.IPAddress(ip_addr) - if not ip_address.is_multicast(): - # Check if ip_addr is not multicast and reserved IP - return True - return False - except Exception: - return False - - -def _is_valid_nameservers(value): - """Valid the format of nameservers.""" - if value: - nameservers = value.strip(",").split(",") - for elem in nameservers: - if not is_valid_ip(elem): - return False - else: - return False - - return True - - -def is_valid_security_config(config): - """Valid the format of security section in config.""" - outer_format = { - "server_credentials": {}, "service_credentials": {}, - "console_credentials": {} - } - inner_format = { - "username": {}, "password": {} - } - valid_outter, err = is_valid_keys(outer_format, config, "Security") - if not valid_outter: - return (False, err) - - for key in config: - content = config[key] - valid_inner, err = is_valid_keys(inner_format, content, key) - if not valid_inner: - return (False, err) - - for sub_key in content: - if not content[sub_key]: - return (False, ("The value of %s in %s in security config " - "cannot be None!") % (sub_key, key)) - return (True, '') - - -def is_valid_networking_config(config): - """Valid the format of networking config.""" - - def _is_valid_interfaces_config(interfaces_config): - """Valid the format of interfaces section in config.""" - interfaces_section = { - "management": {}, "tenant": {}, "public": {}, "storage": {} - } - section = { - "ip_start": {"req": 1, "validator": is_valid_ip}, - "ip_end": {"req": 1, "validator": is_valid_ip}, - "netmask": {"req": 1, "validator": is_valid_netmask}, - "gateway": {"req": 0, "validator": is_valid_gateway}, - "nic": {}, - "promisc": {} - } - - # Check if interfaces outer layer keywords - is_valid_outer, err = is_valid_keys(interfaces_section, - interfaces_config, "interfaces") - if not is_valid_outer: - return (False, err) - - promisc_nics = [] - nonpromisc_nics = [] - - for key in interfaces_config: - content = interfaces_config[key] - is_valid_inner, err = is_valid_keys(section, content, key) - if not is_valid_inner: - return (False, err) - - if content["promisc"] not in [0, 1]: - return (False, ("The value of Promisc in %s section of " - "interfaces can only be either 0 or 1!") % key) - if not content["nic"]: - return (False, ("The NIC in %s cannot be None!") % key) - - if content["promisc"]: - if content["nic"] not in nonpromisc_nics: - promisc_nics.append(content["nic"]) - continue - else: - return (False, - ("The NIC in %s cannot be assigned in promisc " - "and nonpromisc mode at the same time!" % key)) - else: - if content["nic"] not in promisc_nics: - nonpromisc_nics.append(content["nic"]) - else: - return (False, - ("The NIC in %s cannot be assigned in promisc " - "and nonpromisc mode at the same time!" % key)) - - # Validate other keywords in the section - for sub_key in content: - if sub_key == "promisc" or sub_key == "nic": - continue - value = content[sub_key] - is_required = section[sub_key]["req"] - validator = section[sub_key]["validator"] - if value: - if validator and not validator(value): - error_msg = "The format of %s in %s is invalid!" % \ - (sub_key, key) - return (False, error_msg) - - elif is_required: - return (False, - ("%s in %s section in interfaces of networking " - "config cannot be None!") % (sub_key, key)) - - return (True, '') - - def _is_valid_global_config(global_config): - """Valid the format of 'global' section in config.""" - global_section = { - "nameservers": {"req": 1, "validator": _is_valid_nameservers}, - "search_path": {"req": 1, "validator": ""}, - "gateway": {"req": 1, "validator": is_valid_gateway}, - "proxy": {"req": 0, "validator": ""}, - "ntp_server": {"req": 0, "validator": ""}, - "ha_vip": {"req": 0, "validator": is_valid_ip} - } - is_valid_format, err = is_valid_keys(global_section, global_config, - "global") - if not is_valid_format: - return (False, err) - - for key in global_section: - value = global_config[key] - is_required = global_section[key]["req"] - validator = global_section[key]["validator"] - - if value: - if validator and not validator(value): - return (False, ("The format of %s in global section of " - "networking config is invalid!") % key) - elif is_required: - return (False, ("The value of %s in global section of " - "netowrking config cannot be None!") % key) - - return (True, '') - - networking_config = { - "interfaces": _is_valid_interfaces_config, - "global": _is_valid_global_config - } - - valid_format, err = is_valid_keys(networking_config, config, "networking") - if not valid_format: - return (False, err) - - for key in networking_config: - validator = networking_config[key] - is_valid, err = validator(config[key]) - if not is_valid: - return (False, err) - - return (True, '') - - -def is_valid_partition_config(config): - """Valid the configuration format.""" - - if not config: - return (False, '%s in partition cannot be null!' % config) - - return (True, '') - - -def valid_host_config(config): - """Valid the host configuration format. - - .. note:: - Valid_format is used to check if the input config is qualified - the required fields and format. - The key is the required field and format of the input config - The value is the validator function name of the config value - """ - - from api import errors - valid_format = {"/networking/interfaces/management/ip": "is_valid_ip", - "/networking/interfaces/tenant/ip": "is_valid_ip", - "/networking/global/gateway": "is_valid_gateway", - "/networking/global/nameserver": "", - "/networking/global/search_path": "", - "/roles": ""} - flat_config = {} - flatten_dict(config, flat_config) - - config_keys = flat_config.keys() - for key in config_keys: - validator = None - try: - validator = valid_format[key] - except Exception: - continue - else: - value = flat_config[key] - if validator: - is_valid_format = globals()[validator](value) - if not is_valid_format: - error_msg = "The format '%s' is incorrect!" % value - raise errors.UserInvalidUsage(error_msg) - - -def flatten_dict(dictionary, output, flat_key=""): - """This function will convert the dictionary into a flatten dict. - - .. note:: - For example: - dict = {'a':{'b': 'c'}, 'd': 'e'} ==> - flatten dict = {'a/b': 'c', 'd': 'e'} - """ - - keywords = dictionary.keys() - for key in keywords: - tmp = '/'.join((flat_key, key)) - if isinstance(dictionary[key], dict): - flatten_dict(dictionary[key], output, tmp) - else: - output[tmp] = dictionary[key] - - -def update_dict_value(searchkey, dictionary): - """Update dictionary value.""" - - keywords = dictionary.keys() - for key in keywords: - if key == searchkey: - if isinstance(dictionary[key], str): - dictionary[key] = '' - elif isinstance(dictionary[key], list): - dictionary[key] = [] - - elif isinstance(dictionary[key], dict): - update_dict_value(searchkey, dictionary[key]) - else: - continue - - -def is_valid_keys(expected, input_dict, section=""): - """Validate keys.""" - excepted_keys = set(expected.keys()) - input_keys = set(input_dict.keys()) - if excepted_keys != input_keys: - invalid_keys = list(excepted_keys - input_keys) if \ - len(excepted_keys) > len(input_keys) else\ - list(input_keys - excepted_keys) - error_msg = ("Invalid or missing keywords in the %s " - "section of networking config. Please check these " - "keywords %s") % (section, invalid_keys) - return (False, error_msg) - - return (True, "") - - -def get_col_val_from_dict(result, data): - """Convert a dict's values to a list. - - :param result: a list of values for each column - :param data: input data - - .. note:: - for example: - data = {"a": {"b": {"c": 1}, "d": 2}} - the result will be [1, 2] - """ - if not isinstance(data, dict): - data = str(data) if str(data) else 'None' - result.append(data) - return - - for key in data: - get_col_val_from_dict(result, data[key]) - - -def get_headers_from_dict(headers, colname, data): - """Convert a column which value is dict to a list of column name and keys. - - .. note:: - nested keys in dict will be joined by '.' as a column name in CSV. - for example: - the column name is 'config_data', and - the value is {"a": {"b": {"c": 1}, "d": 2}} - then headers will be ['config_data.a.b.c', 'config_data.a.d'] - - :param headers: the result list to hold dict keys - :param colname: the column name - :param data: input data - - """ - if not colname: - raise "colname cannot be None!" - - if not isinstance(data, dict): - headers.append(colname) - return - - for key in data: - tmp_header = '.'.join((colname, key)) - get_headers_from_dict(headers, tmp_header, data[key]) diff --git a/compass/api/utils.py b/compass/api/utils.py new file mode 100644 index 00000000..87977cd3 --- /dev/null +++ b/compass/api/utils.py @@ -0,0 +1,35 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Utils for API usage.""" +from flask import make_response +import simplejson as json + + +def make_json_response(status_code, data): + """Wrap json format to the reponse object.""" + + result = json.dumps(data, indent=4) + '\r\n' + resp = make_response(result, status_code) + resp.headers['Content-type'] = 'application/json' + return resp + + +def make_csv_response(status_code, csv_data, fname): + """Wrap CSV format to the reponse object.""" + fname = '.'.join((fname, 'csv')) + resp = make_response(csv_data, status_code) + resp.mimetype = 'text/csv' + resp.headers['Content-Disposition'] = 'attachment; filename="%s"' % fname + return resp diff --git a/compass/tests/actions/update_progress/__init__.py b/compass/api/v1/__init__.py similarity index 100% rename from compass/tests/actions/update_progress/__init__.py rename to compass/api/v1/__init__.py diff --git a/compass/api/v1/api.py b/compass/api/v1/api.py new file mode 100644 index 00000000..9dbc5489 --- /dev/null +++ b/compass/api/v1/api.py @@ -0,0 +1,248 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Define all the RestfulAPI entry points.""" +import logging +import simplejson as json + +from flask import Blueprint +from flask import request + +from flask.ext.restful import Resource + +from compass.api.exception import BadRequest +from compass.api.exception import Forbidden +from compass.api.exception import ItemNotFound +from compass.api.exception import Unauthorized +from compass.api.restfulAPI import CompassApi +from compass.api import utils + +from compass.db import db_api +from compass.db.exception import InvalidParameter +from compass.db.exception import RecordNotExists + + +v1_app = Blueprint('v1_app', __name__) +api = CompassApi(v1_app) +PREFIX = '/v1.0' + + +@v1_app.route('/users', methods=['GET']) +def list_users(): + """List details of all users filtered by user email and admin role.""" + + emails = request.args.getlist('email') + is_admin = request.args.get('admin') + filters = {} + + if emails: + filters['email'] = emails + + if is_admin is not None: + if is_admin == 'true': + filters['is_admin'] = True + elif is_admin == 'false': + filters['is_admin'] = False + + users_list = db_api.user.list_users(filters) + + return utils.make_json_response(200, users_list) + + +class User(Resource): + ENDPOINT = PREFIX + '/users' + + def get(self, user_id): + """Get user's information for the specified ID.""" + try: + user_data = db_api.user.get_user(user_id) + logging.debug("user_data is===>%s", user_data) + + except RecordNotExists as ex: + error_msg = ex.message + raise ItemNotFound(error_msg) + + return utils.make_json_response(200, user_data) + + +class Adapter(Resource): + ENDPOINT = PREFIX + "/adapters" + + def get(self, adapter_id): + """Get information for a specified adapter.""" + + try: + adapter_info = db_api.adapter.get_adapter(adapter_id) + except RecordNotExists as ex: + error_msg = ex.message + raise ItemNotFound(error_msg) + + return utils.make_json_response(200, adapter_info) + + +@v1_app.route('/adapters', methods=['GET']) +def list_adapters(): + """List details of all adapters filtered by the adapter name(s).""" + + names = request.args.getlist('name') + filters = {} + if names: + filters['name'] = names + + adapters_list = db_api.adapter.list_adapters(filters) + return utils.make_json_response(200, adapters_list) + + +@v1_app.route('/adapters//config-schema', methods=['GET']) +def get_adapter_config_schema(adapter_id): + """Get the config schema for a specified adapter.""" + + os_id = request.args.get("os-id", type=int) + + try: + schema = db_api.adapter.get_adapter_config_schema(adapter_id, os_id) + except RecordNotExists as ex: + raise ItemNotFound(ex.message) + + return utils.make_json_response(200, schema) + + +@v1_app.route('/adapters//roles', methods=['GET']) +def get_adapter_roles(adapter_id): + """Get roles for a specified adapter.""" + + try: + roles = db_api.adapter.get_adapter(adapter_id, True) + except RecordNotExists as ex: + raise ItemNotFound(ex.message) + + return utils.make_json_response(200, roles) + + +class Cluster(Resource): + def get(self, cluster_id): + """Get information for a specified cluster.""" + + try: + cluster_info = db_api.cluster.get_cluster(cluster_id) + + except RecordNotExists as ex: + error_msg = ex.message + raise ItemNotFound(error_msg) + + return utils.make_json_response(200, cluster_info) + + +@v1_app.route('/clusters//config', methods=['PUT', 'PATCH']) +def add_cluster_config(cluster_id): + """Update the config information for a specified cluster.""" + config = json.loads(request.data) + if not config: + raise BadRequest("Config cannot be None!") + + root_elems = ['os_config', 'package_config'] + if len(config.keys()) != 1 or config.keys()[0] not in root_elems: + error_msg = ("Config root elements must be either" + "'os_config' or 'package_config'") + raise BadRequest(error_msg) + + result = None + is_patch_method = request.method == 'PATCH' + try: + if "os_config" in config: + result = db_api.cluster\ + .update_cluster_config(cluster_id, + 'os_config', + config, + patch=is_patch_method) + elif "package_config" in config: + result = db_api.cluster\ + .update_cluster_config(cluster_id, + 'package_config', config, + patch=is_patch_method) + + except InvalidParameter as ex: + raise BadRequest(ex.message) + + except RecordNotExists as ex: + raise ItemNotFound(ex.message) + + return utils.make_json_response(200, result) + + +api.add_resource(User, + '/users', + '/users/') +api.add_resource(Adapter, + '/adapters', + '/adapters/') +api.add_resource(Cluster, + '/clusters', + '/clusters/') + + +@v1_app.errorhandler(ItemNotFound) +def handle_not_exist(error, failed_objs=None): + """Handler of ItemNotFound Exception.""" + + message = {'type': 'itemNotFound', + 'message': error.message} + + if failed_objs and isinstance(failed_objs, dict): + message.update(failed_objs) + + return utils.make_json_response(404, message) + + +@v1_app.errorhandler(Unauthorized) +def handle_invalid_user(error, failed_objs=None): + """Handler of Unauthorized Exception.""" + + message = {'type': 'unathorized', + 'message': error.message} + + if failed_objs and isinstance(failed_objs, dict): + message.update(failed_objs) + + return utils.make_json_response(401, message) + + +@v1_app.errorhandler(Forbidden) +def handle_no_permission(error, failed_objs=None): + """Handler of Forbidden Exception.""" + + message = {'type': 'Forbidden', + 'message': error.message} + + if failed_objs and isinstance(failed_objs, dict): + message.update(failed_objs) + + return utils.make_json_response(403, message) + + +@v1_app.errorhandler(BadRequest) +def handle_bad_request(error, failed_objs=None): + """Handler of badRequest Exception.""" + + message = {'type': 'badRequest', + 'message': error.message} + + if failed_objs and isinstance(failed_objs, dict): + message.update(failed_objs) + + return utils.make_json_response(400, message) + + +if __name__ == '__main__': + v1_app.run(debug=True) diff --git a/compass/apiclient/example.py b/compass/apiclient/example.py index 7463cad6..967c7b42 100755 --- a/compass/apiclient/example.py +++ b/compass/apiclient/example.py @@ -1,6 +1,5 @@ #!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd +# copyright 2014 Huawei Technologies Co. Ltd # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,51 +16,45 @@ """Example code to deploy a cluster by compass client api.""" import os import re -import requests import sys import time -from compass.apiclient.restful import Client +# from compass.apiclient.restful import Client +from restful import Client - -COMPASS_SERVER_URL = 'http://127.0.0.1/api' -SWITCH_IP = '10.145.81.220' -SWITCH_SNMP_VERSION = 'v2c' +COMPASS_SERVER_URL = 'http://localhost/api' +COMPASS_LOGIN_EMAIL = 'admin@huawei.com' +COMPASS_LOGIN_PASSWORD = 'admin' +SWITCH_IP = '172.29.8.40' +SWITCH_SNMP_VERSION = '2c' SWITCH_SNMP_COMMUNITY = 'public' -#MACHINES_TO_ADD = ['00:11:20:30:40:01'] -CLUSTER_NAME = 'cluster2' +CLUSTER_NAME = 'test_cluster' HOST_NAME_PREFIX = 'host' -SERVER_USERNAME = 'root' -SERVER_PASSWORD = 'root' SERVICE_USERNAME = 'service' SERVICE_PASSWORD = 'service' CONSOLE_USERNAME = 'console' CONSOLE_PASSWORD = 'console' HA_VIP = '' -#NAMESERVERS = '192.168.10.6' -SEARCH_PATH = 'ods.com' -#GATEWAY = '192.168.10.6' -#PROXY = 'http://192.168.10.6:3128' -#NTP_SERVER = '192.168.10.6' -MANAGEMENT_IP_START = '192.168.10.130' -MANAGEMENT_IP_END = '192.168.10.254' -MANAGEMENT_IP_GATEWAY = '192.168.10.1' + +MANAGEMENT_IP_START = '10.145.88.130' +MANAGEMENT_IP_END = '10.145.88.254' +MANAGEMENT_IP_GATEWAY = '10.145.88.1' MANAGEMENT_NETMASK = '255.255.255.0' MANAGEMENT_NIC = 'eth0' MANAGEMENT_PROMISC = 0 -TENANT_IP_START = '192.168.10.100' +TENANT_IP_START = '192.168.10.130' TENANT_IP_END = '192.168.10.255' TENANT_IP_GATEWAY = '192.168.10.1' TENANT_NETMASK = '255.255.255.0' TENANT_NIC = 'eth0' TENANT_PROMISC = 0 -PUBLIC_IP_START = '12.234.32.100' +PUBLIC_IP_START = '12.234.32.130' PUBLIC_IP_END = '12.234.32.255' PUBLIC_IP_GATEWAY = '12.234.32.1' PUBLIC_NETMASK = '255.255.255.0' PUBLIC_NIC = 'eth1' PUBLIC_PROMISC = 1 -STORAGE_IP_START = '172.16.100.100' +STORAGE_IP_START = '172.16.100.130' STORAGE_IP_END = '172.16.100.255' STORAGE_NETMASK = '255.255.255.0' STORAGE_IP_GATEWAY = '172.16.100.1' @@ -70,16 +63,28 @@ STORAGE_PROMISC = 0 HOME_PERCENTAGE = 5 TMP_PERCENTAGE = 5 VAR_PERCENTAGE = 10 -#ROLES_LIST = [['os-dashboard']] +HOST_OS = 'CentOS-6.5-x86_64' + PRESET_VALUES = { - 'NAMESERVERS': '192.168.10.1', - 'NTP_SERVER': '192.168.10.1', - 'GATEWAY': '192.168.10.1', - 'PROXY': 'http://192.168.10.1:3128', - 'ROLES_LIST': 'os-dashboard', - 'MACHINES_TO_ADD': '00:11:20:30:40:01', - 'BUILD_TIMEOUT': 60 + 'LANGUAGE': 'EN', + 'TIMEZONE': 'GMT', + 'HTTPS_PROXY': 'http://10.145.89.100:3128', + 'NO_PROXY': ['127.0.0.1'], + 'DOMAIN': 'ods.com', + 'NAMESERVERS': ['10.145.89.100'], + 'NTP_SERVER': '10.145.89.100', + 'GATEWAY': '10.145.88.1', + 'PROXY': 'http://10.145.89.100:3128', + 'OS_NAME_PATTERN': 'CentOS.*', + 'DISTRIBUTED_SYSTEM_NAME_PATTERN': 'openstack.*', + 'FLAVOR_PATTERN': 'allinone.*', + 'ROLES_LIST': ['allinone-compute'], + 'MACHINES_TO_ADD': ['00:0c:29:a7:ea:4b'], + 'BUILD_TIMEOUT': 60, + 'SEARCH_PATH': ['ods.com'], + 'SERVER_USERNAME': 'root', + 'SERVER_PASSWORD': 'root' } for v in PRESET_VALUES: if v in os.environ.keys(): @@ -88,218 +93,375 @@ for v in PRESET_VALUES: else: print (PRESET_VALUES[v]) -# get apiclient object. +# instantiate a client client = Client(COMPASS_SERVER_URL) +# login +status, response = client.login(COMPASS_LOGIN_EMAIL, COMPASS_LOGIN_PASSWORD) +print '============================================================' +print 'login status: %s response: %s' % (status, response) +if status >= 400: + sys.exit(1) -# get all switches. -status, resp = client.get_switches() -print 'get all switches status: %s resp: %s' % (status, resp) +# list all switches +status, response = client.list_switches() +print '=============================================================' +print 'get all switches status: %s response: %s' % (status, response) -# add a switch. -status, resp = client.add_switch( - SWITCH_IP, version=SWITCH_SNMP_VERSION, - community=SWITCH_SNMP_COMMUNITY) - -print 'add a switch status: %s resp: %s' % (status, resp) +# add a switch +status, response = client.add_switch( + SWITCH_IP, + SWITCH_SNMP_VERSION, + SWITCH_SNMP_COMMUNITY +) +print '============================================' +print 'adding a switch..status: %s, response: %s' % (status, response) +# if switch already exists, get one from all switches +switch = None if status < 400: - switch = resp['switch'] + switch = response else: - status, resp = client.get_switches() - print 'get all switches status: %s resp: %s' % (status, resp) - switch = None - for switch in resp['switches']: - if switch['ip'] == SWITCH_IP: + status, response = client.list_switches() + print '=========================================' + print 'list switches status %s response %s' % (status, response) + if status >= 400: + sys.exit(1) + for switch_ in response: + if switch_['ip'] == SWITCH_IP: + switch = switch_ break switch_id = switch['id'] switch_ip = switch['ip'] +print '======================' +print 'switch has been set as %s' % switch_ip - -# if the switch is not in under_monitoring, wait for the poll switch task -# update the swich information and change the switch state. +# wait till switch state becomes under_monitoring while switch['state'] != 'under_monitoring': - print 'waiting for the switch into under_monitoring' + print 'waiting for state to become under_monitoring' + client.poll_switch(switch_id) status, resp = client.get_switch(switch_id) - print 'get switch %s status: %s, resp: %s' % (switch_id, status, resp) - switch = resp['switch'] - time.sleep(10) + print '=====================================' + print 'poll switch status %s response %s' % (status, resp) + switch = resp + print 'switch is in state: %s' % switch['state'] + time.sleep(5) +print '=========================================' +print 'switch state now is %s' % (switch['state']) -# get machines connected to the switch. -status, resp = client.get_machines(switch_id=switch_id) -print 'get all machines under switch %s status: %s, resp: %s' % ( - switch_id, status, resp) +# create a machine list +machine_macs = {} machines = {} -MACHINES_TO_ADD = PRESET_VALUES['MACHINES_TO_ADD'].split() -for machine in resp['machines']: - mac = machine['mac'] - if mac in MACHINES_TO_ADD: - machines[machine['id']] = mac +for machine in PRESET_VALUES['MACHINES_TO_ADD']: + status, response = client.list_machines(mac=machine) + print '============================================' + print 'list machines status %s response %s' % (status, response) + if status >= 400: + sys.exit(1) + if status == 200 and response != []: + machine_id = response[0]['id'] + machine_macs[machine_id] = response[0]['mac'] + machines = response -print 'machine to add: %s' % machines +print '=================================' +print 'found machines are : %s' % machines -if set(machines.values()) != set(MACHINES_TO_ADD): +machines_to_add = PRESET_VALUES['MACHINES_TO_ADD'] +if set(machine_macs.values()) != set(machines_to_add): print 'only found macs %s while expected are %s' % ( - machines.values(), MACHINES_TO_ADD) + machine_macs.values(), machines_to_add) sys.exit(1) +# list all adapters +status, response = client.list_adapters() +print '===============================' +print 'all adapters are: %s' % response +if status >= 400: + sys.exit(1) -# get adapters. -status, resp = client.get_adapters() -print 'get all adapters status: %s, resp: %s' % (status, resp) -adapter_ids = [] -for adapter in resp['adapters']: - adapter_ids.append(adapter['id']) +adapters = response +adapter_id = None +os_id = None +flavor_id = None +adapter_pattern = re.compile(PRESET_VALUES['DISTRIBUTED_SYSTEM_NAME_PATTERN']) +os_pattern = re.compile(PRESET_VALUES['OS_NAME_PATTERN']) +flavor_pattern = re.compile(PRESET_VALUES['FLAVOR_PATTERN']) +for adapter in adapters: + if ( + 'distributed_system_name' in adapter and + adapter_pattern.match(adapter['distributed_system_name']) + ): + adapter_id = adapter['id'] + for supported_os in adapter['supported_oses']: + if os_pattern.match(supported_os['name']): + os_id = supported_os['id'] + break + for flavor in adapter['flavors']: + if flavor_pattern.match(flavor['name']): + flavor_id = flavor['id'] -adapter_id = adapter_ids[0] -print 'adpater for deploying a cluster: %s' % adapter_id + if adapter_id and os_id and flavor_id: + break +print '=======================================================' +print 'using adapter %s os %s flavor %s to deploy cluster' % ( + adapter_id, os_id, flavor_id +) -# add a cluster. -status, resp = client.add_cluster( - cluster_name=CLUSTER_NAME, adapter_id=adapter_id) -print 'add cluster %s status: %s, resp: %s' % (CLUSTER_NAME, status, resp) -cluster = resp['cluster'] +# add a cluster +status, response = client.add_cluster( + CLUSTER_NAME, + adapter_id, + os_id, + flavor_id +) +print '===============================================================' +print 'add cluster %s status %s: %s' % (CLUSTER_NAME, status, response) +if status >= 400: + sys.exit(1) + +status, response = client.list_clusters(name=CLUSTER_NAME) +print '================================================================' +print 'list clusters %s status %s: %s' % (CLUSTER_NAME, status, response) +if status >= 400: + sys.exit(1) + +cluster = response[0] cluster_id = cluster['id'] -# add hosts to the cluster. -status, resp = client.add_hosts( - cluster_id=cluster_id, - machine_ids=machines.keys()) -print 'add hosts to cluster %s status: %s, resp: %s' % ( - cluster_id, status, resp) -host_ids = [] -for host in resp['cluster_hosts']: - host_ids.append(host['id']) +print '==================' +print 'cluster is %s' % cluster -print 'added hosts: %s' % host_ids +# Add hosts to the cluster +machines_dict = {} +machine_id_list = [] +for machine in machines: + id_mapping = {} + id_mapping['machine_id'] = machine['id'] + machine_id_list.append(id_mapping) + +machines_dict['machines'] = machine_id_list + +status, response = client.add_hosts_to_cluster( + cluster_id, machines_dict +) +print '===================================' +print 'add hosts %s to cluster status %s response %s' % ( + machines_dict, status, response) +if status >= 400: + sys.exit(1) + +# Add two subnets +subnet_1 = '10.145.89.0/24' +subnet_2 = '192.168.100.0/24' + +status, response = client.add_subnet(subnet_1) +print '==================' +print 'add subnet %s status %s: %s' % (subnet_1, status, response) +if status >= 400: + sys.exit(1) + +status, response = client.add_subnet(subnet_2) +print '==================' +print 'add subnet %s status %s: %s' % (subnet_2, status, response) +if status >= 400: + sys.exit(1) + +status, subnet1 = client.list_subnets(subnet=subnet_1) +print '===========================================================' +print 'list subnet %s status %s: %s' % (subnet_1, status, subnet1) +if status >= 400: + sys.exit(1) + +status, subnet2 = client.list_subnets(subnet=subnet_2) +print '===========================================================' +print 'list subnet %s status %s: %s' % (subnet_2, status, subnet2) +if status >= 400: + sys.exit(1) + +subnet1_id = subnet1[0]['id'] +subnet2_id = subnet2[0]['id'] +print '========================' +print 'subnet1 has id: %s, subnet is %s' % (subnet1_id, subnet1) +print 'subnet2 has id: %s, subnet is %s' % (subnet2_id, subnet2) + +# Add host network +status, response = client.list_cluster_hosts(cluster_id) +print '================================================' +print 'list cluster hosts status %s: %s' % (status, response) +if status >= 400: + sys.exit(1) + +host = response[0] +host_id = host['id'] +print '==================' +print 'host is: %s' % host + +status, response = client.add_host_network( + host_id, + 'eth0', + '10.145.89.200', + subnet1_id, + is_mgmt=True +) +print '=======================' +print 'add eth0 network status %s: %s' % (status, response) +if status >= 400: + sys.exit(1) + +status, response = client.add_host_network( + host_id, + 'eth1', + '192.168.100.200', + subnet2_id, + is_promiscuous=True +) +print '=======================' +print 'add eth1 network status %s: %s' % (status, response) +if status >= 400: + sys.exit(1) + +# Update os config to cluster +cluster_os_config = { + 'general': { + 'language': PRESET_VALUES['LANGUAGE'], + 'timezone': PRESET_VALUES['TIMEZONE'], + 'http_proxy': PRESET_VALUES['PROXY'], + 'https_proxy': PRESET_VALUES['HTTPS_PROXY'], + 'no_proxy': PRESET_VALUES['NO_PROXY'], + 'ntp_server': PRESET_VALUES['NTP_SERVER'], + 'dns_servers': PRESET_VALUES['NAMESERVERS'], + 'domain': PRESET_VALUES['DOMAIN'], + 'search_path': PRESET_VALUES['SEARCH_PATH'], + 'default_gateway': PRESET_VALUES['GATEWAY'] + }, + 'server_credentials': { + 'username': PRESET_VALUES['SERVER_USERNAME'], + 'password': PRESET_VALUES['SERVER_PASSWORD'] + }, + 'partition': { + '/var': { + 'percentage': VAR_PERCENTAGE, + }, + '/home': { + 'percentage': HOME_PERCENTAGE, + } + } +} -# set cluster security -status, resp = client.set_security( - cluster_id, server_username=SERVER_USERNAME, - server_password=SERVER_PASSWORD, - service_username=SERVICE_USERNAME, - service_password=SERVICE_PASSWORD, - console_username=CONSOLE_USERNAME, - console_password=CONSOLE_PASSWORD) -print 'set security config to cluster %s status: %s, resp: %s' % ( - cluster_id, status, resp) +cluster_package_config = { + 'security': { + 'service_credentials': { + 'image': { + 'username': SERVICE_USERNAME, + 'password': SERVICE_PASSWORD + }, + 'compute': { + 'username': SERVICE_USERNAME, + 'password': SERVICE_PASSWORD + }, + 'dashboard': { + 'username': SERVICE_USERNAME, + 'password': SERVICE_PASSWORD + }, + 'identity': { + 'username': SERVICE_USERNAME, + 'password': SERVICE_PASSWORD + }, + 'metering': { + 'username': SERVICE_USERNAME, + 'password': SERVICE_PASSWORD + }, + 'rabbitmq': { + 'username': SERVICE_USERNAME, + 'password': SERVICE_PASSWORD + }, + 'volume': { + 'username': SERVICE_USERNAME, + 'password': SERVICE_PASSWORD + }, + 'mysql': { + 'username': SERVICE_USERNAME, + 'password': SERVICE_PASSWORD + } + }, + 'console_credentials': { + 'admin': { + 'username': CONSOLE_USERNAME, + 'password': CONSOLE_PASSWORD + }, + 'compute': { + 'username': CONSOLE_USERNAME, + 'password': CONSOLE_PASSWORD + }, + 'dashboard': { + 'username': CONSOLE_USERNAME, + 'password': CONSOLE_PASSWORD + }, + 'image': { + 'username': CONSOLE_USERNAME, + 'password': CONSOLE_PASSWORD + }, + 'metering': { + 'username': CONSOLE_USERNAME, + 'password': CONSOLE_PASSWORD + }, + 'network': { + 'username': CONSOLE_USERNAME, + 'password': CONSOLE_PASSWORD + }, + 'object-store': { + 'username': CONSOLE_USERNAME, + 'password': CONSOLE_PASSWORD + }, + 'volume': { + 'username': CONSOLE_USERNAME, + 'password': CONSOLE_PASSWORD + } + } + }, + 'network_mapping': { + 'management': MANAGEMENT_NIC, + 'tenant': TENANT_NIC, + 'storage': STORAGE_NIC, + 'public': PUBLIC_NIC + } +} - -# set cluster networking -status, resp = client.set_networking( +status, response = client.update_cluster_config( cluster_id, - nameservers=PRESET_VALUES["NAMESERVERS"], - search_path=SEARCH_PATH, - gateway=PRESET_VALUES["GATEWAY"], - proxy=PRESET_VALUES["PROXY"], - ntp_server=PRESET_VALUES["NTP_SERVER"], - ha_vip=HA_VIP, - management_ip_start=MANAGEMENT_IP_START, - management_ip_end=MANAGEMENT_IP_END, - management_netmask=MANAGEMENT_NETMASK, - management_nic=MANAGEMENT_NIC, - management_gateway=MANAGEMENT_IP_GATEWAY, - management_promisc=MANAGEMENT_PROMISC, - tenant_ip_start=TENANT_IP_START, - tenant_ip_end=TENANT_IP_END, - tenant_netmask=TENANT_NETMASK, - tenant_nic=TENANT_NIC, - tenant_gateway=TENANT_IP_GATEWAY, - tenant_promisc=TENANT_PROMISC, - public_ip_start=PUBLIC_IP_START, - public_ip_end=PUBLIC_IP_END, - public_netmask=PUBLIC_NETMASK, - public_nic=PUBLIC_NIC, - public_gateway=PUBLIC_IP_GATEWAY, - public_promisc=PUBLIC_PROMISC, - storage_ip_start=STORAGE_IP_START, - storage_ip_end=STORAGE_IP_END, - storage_netmask=STORAGE_NETMASK, - storage_nic=STORAGE_NIC, - storage_gateway=STORAGE_IP_GATEWAY, - storage_promisc=STORAGE_PROMISC) -print 'set networking config to cluster %s status: %s, resp: %s' % ( - cluster_id, status, resp) + cluster_os_config, + cluster_package_config +) +print '=======================================' +print 'cluster %s update status %s: %s' % ( + cluster_id, status, response) +if status >= 400: + sys.exit(1) -# set partiton of each host in cluster -status, resp = client.set_partition( - cluster_id, - home_percentage=HOME_PERCENTAGE, - tmp_percentage=TMP_PERCENTAGE, - var_percentage=VAR_PERCENTAGE) -print 'set partition config to cluster %s status: %s, resp: %s' % ( - cluster_id, status, resp) +status, response = client.update_cluster_host( + cluster_id, host_id, roles=PRESET_VALUES['ROLES_LIST']) +print '=================================================' +print 'update cluster host %s/%s status %s: %s' % ( + cluster_id, host_id, status, response) +if status >= 400: + sys.exit(1) +# Review and deploy +status, response = client.review_cluster( + cluster_id, review={'hosts': [host_id]}) +print '=======================================' +print 'reviewing cluster status %s: %s' % (status, response) +if status >= 400: + sys.exit(1) -# set each host config in cluster. -ROLES_LIST = [PRESET_VALUES['ROLES_LIST'].split()] -for host_id in host_ids: - if ROLES_LIST: - roles = ROLES_LIST.pop(0) - else: - roles = [] - status, resp = client.update_host_config( - host_id, hostname='%s%s' % (HOST_NAME_PREFIX, host_id), - roles=roles) - print 'set roles to host %s status: %s, resp: %s' % ( - host_id, status, resp) - - -# deploy cluster. -status, resp = client.deploy_hosts(cluster_id) -print 'deploy cluster %s status: %s, resp: %s' % (cluster_id, status, resp) - - -# get intalling progress. -BUILD_TIMEOUT = float(PRESET_VALUES['BUILD_TIMEOUT']) -timeout = time.time() + BUILD_TIMEOUT * 60 -while True: - status, resp = client.get_cluster_installing_progress(cluster_id) - print 'get cluster %s installing progress status: %s, resp: %s' % ( - cluster_id, status, resp) - progress = resp['progress'] - if ( - progress['state'] not in ['UNINITIALIZED', 'INSTALLING'] or - progress['percentage'] >= 1.0 - ): - break - if ( - time.time() > timeout - ): - raise Exception("Timeout! The system is not ready in time.") - - for host_id in host_ids: - status, resp = client.get_host_installing_progress(host_id) - print 'get host %s installing progress status: %s, resp: %s' % ( - host_id, status, resp) - - time.sleep(60) - - -status, resp = client.get_dashboard_links(cluster_id) -print 'get cluster %s dashboardlinks status: %s, resp: %s' % ( - cluster_id, status, resp) -dashboardlinks = resp['dashboardlinks'] -if not dashboardlinks.keys(): - raise Exception("Dashboard link is not found!") -for x in dashboardlinks.keys(): - if x in ("os-dashboard", "os-controller"): - dashboardurl = dashboardlinks.get(x) - if dashboardurl is None: - raise Exception("No dashboard link is found") - r = requests.get(dashboardurl, verify=False) - r.raise_for_status() - match = re.search( - r'(?m)(http://\d+\.\d+\.\d+\.\d+:5000/v2\.0)', r.text) - if match: - print 'dashboard login page can be downloaded' - break - print ( - 'dashboard login page failed to be downloaded\n' - 'the context is:\n%s\n') % r.text - raise Exception("os-dashboard is not properly installed!") +status, response = client.deploy_cluster( + cluster_id, deploy={'hosts': [host_id]}) +print '=======================================' +print 'deploy cluster status %s: %s' % (status, response) +if status >= 400: + sys.exit(1) diff --git a/compass/apiclient/restful.py b/compass/apiclient/restful.py index d0e4c5f3..bae38922 100644 --- a/compass/apiclient/restful.py +++ b/compass/apiclient/restful.py @@ -13,41 +13,26 @@ # limitations under the License. """Compass api client library. - - .. moduleauthor:: Xiaodong Wang """ + import json import logging import requests class Client(object): - """wrapper for compass restful api. - - .. note:: - Every api client method returns (status as int, resp as dict). - If the api succeeds, the status is 2xx, the resp includes - {'status': 'OK'} and other keys depend on method. - If the api fails, the status is 4xx, the resp includes { - 'status': '...', 'message': '...'} - """ + """compass restful api wrapper""" def __init__(self, url, headers=None, proxies=None, stream=None): - """Restful api client initialization. - - :param url: url to the compass web service. - :type url: str. - :param headers: http header sent in each restful request. - :type headers: dict of header name (str) to heade value (str). - :param proxies: the proxy address for each protocol. - :type proxies: dict of protocol (str) to proxy url (str). - :param stream: wether the restful response should be streamed. - :type stream: bool. - """ + logging.info('create api client %s', url) self.url_ = url self.session_ = requests.Session() + if headers: - self.session_.headers = headers + self.session_.headers.update(headers) + self.session_.headers.update({ + 'Accept': 'application/json' + }) if proxies is not None: self.session_.proxies = proxies @@ -60,32 +45,31 @@ class Client(object): @classmethod def _get_response(cls, resp): - """decapsulate the resp to status code and python formatted data.""" - resp_obj = {} + response_object = {} try: - resp_obj = resp.json() + response_object = resp.json() except Exception as error: logging.error('failed to load object from %s: %s', resp.url, resp.content) logging.exception(error) - resp_obj['status'] = 'Json Parsing Failure' - resp_obj['message'] = resp.content + response_object['status'] = 'Json Parsing Failed' + response_object['message'] = resp.content - return resp.status_code, resp_obj + return resp.status_code, response_object - def _get(self, relative_url, params=None): - """encapsulate get method.""" - url = '%s%s' % (self.url_, relative_url) - if params: - resp = self.session_.get(url, params=params) + def _get(self, req_url, data=None): + url = '%s%s' % (self.url_, req_url) + logging.debug('get %s with data %s', url, data) + if data: + resp = self.session_.get(url, params=data) else: resp = self.session_.get(url) return self._get_response(resp) - def _post(self, relative_url, data=None): - """encapsulate post method.""" - url = '%s%s' % (self.url_, relative_url) + def _post(self, req_url, data=None): + url = '%s%s' % (self.url_, req_url) + logging.debug('post %s with data %s', url, data) if data: resp = self.session_.post(url, json.dumps(data)) else: @@ -93,9 +77,10 @@ class Client(object): return self._get_response(resp) - def _put(self, relative_url, data=None): + def _put(self, req_url, data=None): """encapsulate put method.""" - url = '%s%s' % (self.url_, relative_url) + url = '%s%s' % (self.url_, req_url) + logging.debug('put %s with data %s', url, data) if data: resp = self.session_.put(url, json.dumps(data)) else: @@ -103,554 +88,1016 @@ class Client(object): return self._get_response(resp) - def _delete(self, relative_url): - """encapsulate delete method.""" - url = '%s%s' % (self.url_, relative_url) + def _patch(self, req_url, data=None): + url = '%s%s' % (self.url_, req_url) + logging.debug('patch %s with data %s', url, data) + if data: + resp = self.session_.patch(url, json.dumps(data)) + else: + resp = self.session_.patch(url) + + return self._get_response(resp) + + def _delete(self, req_url): + url = '%s%s' % (self.url_, req_url) + logging.debug('delete %s', url) return self._get_response(self.session_.delete(url)) - def get_switches(self, switch_ips=None, switch_networks=None, limit=None): - """List details for switches. + def login(self, email, password): + credential = {} + credential['email'] = email + credential['password'] = password + return self._post('/users/login', data=credential) - .. note:: - The switches can be filtered by switch_ips, siwtch_networks and - limit. These params can be None or missing. If the param is None - or missing, that filter will be ignored. + def get_token(self, email, password): + credential = {} + credential['email'] = email + credential['password'] = password + status, resp = self._post('/users/token', data=credential) + if status < 400: + self.session_.headers.update({'X-Auth-Token': resp['token']}) + return status, resp - :param switch_ips: Filter switch(es) with IP(s). - :type switch_ips: list of str. Each is as 'xxx.xxx.xxx.xxx'. - :param switch_networks: Filter switche(es) with network(s). - :type switch_networks: list of str. Each is as 'xxx.xxx.xxx.xxx/xx'. - :param limit: int, The maximum number of switches to return. - :type limit: int. 0 means unlimited. - """ + def get_users(self): + users = self._get('/users') + return users + + def list_switches( + self, + switch_ips=None, + switch_ip_networks=None): + """list switches.""" params = {} if switch_ips: params['switchIp'] = switch_ips - if switch_networks: - params['switchIpNetwork'] = switch_networks + if switch_ip_networks: + params['switchIpNetwork'] = switch_ip_networks - if limit: - params['limit'] = limit - return self._get('/switches', params=params) + switchlist = self._get('/switches', data=params) + return switchlist def get_switch(self, switch_id): - """Lists details for a specified switch. - - :param switch_id: switch id. - :type switch_id: int. - """ return self._get('/switches/%s' % switch_id) - def add_switch(self, switch_ip, version=None, community=None, - username=None, password=None, raw_data=None): - """Create a switch with specified details. - - .. note:: - It will trigger switch polling if successful. During - the polling, MAC address of the devices connected to the - switch will be learned by SNMP or SSH. - - :param switch_ip: the switch IP address. - :type switch_ip: str, as xxx.xxx.xxx.xxx. - :param version: SNMP version when using SNMP to poll switch. - :type version: str, one in ['v1', 'v2c', 'v3'] - :param community: SNMP community when using SNMP to poll switch. - :type community: str, usually 'public'. - :param username: SSH username when using SSH to poll switch. - :type username: str. - :param password: SSH password when using SSH to poll switch. - :type password: str. - """ + def add_switch( + self, + switch_ip, + version=None, + community=None, + raw_data=None): data = {} if raw_data: data = raw_data else: - data['switch'] = {} - data['switch']['ip'] = switch_ip - data['switch']['credential'] = {} + data['ip'] = switch_ip + data['credentials'] = {} if version: - data['switch']['credential']['version'] = version + data['credentials']['version'] = version if community: - data['switch']['credential']['community'] = community - - if username: - data['switch']['credential']['username'] = username - - if password: - data['switch']['credential']['password'] = password + data['credentials']['community'] = community return self._post('/switches', data=data) - def update_switch(self, switch_id, ip_addr=None, - version=None, community=None, - username=None, password=None, - raw_data=None): - """Updates a switch with specified details. - - .. note:: - It will trigger switch polling if successful. During - the polling, MAC address of the devices connected to the - switch will be learned by SNMP or SSH. - - :param switch_id: switch id - :type switch_id: int. - :param ip_addr: the switch ip address. - :type ip_addr: str, as 'xxx.xxx.xxx.xxx' format. - :param version: SNMP version when using SNMP to poll switch. - :type version: str, one in ['v1', 'v2c', 'v3']. - :param community: SNMP community when using SNMP to poll switch. - :type community: str, usually be 'public'. - :param username: username when using SSH to poll switch. - :type username: str. - :param password: password when using SSH to poll switch. - """ + def update_switch(self, switch_id, state='initialized', + version='2c', community='public', raw_data={}): data = {} if raw_data: data = raw_data - else: - data['switch'] = {} - if ip_addr: - data['switch']['ip'] = ip_addr - data['switch']['credential'] = {} + else: + data['credentials'] = {} if version: - data['switch']['credential']['version'] = version + data['credentials']['version'] = version if community: - data['switch']['credential']['community'] = community + data['credentials']['community'] = community - if username: - data['switch']['credential']['username'] = username - - if password: - data['switch']['credential']['password'] = password + if state: + data['state'] = state return self._put('/switches/%s' % switch_id, data=data) def delete_switch(self, switch_id): - """Not implemented in api.""" return self._delete('/switches/%s' % switch_id) - def get_machines(self, switch_id=None, vlan_id=None, - port=None, limit=None): - """Get the details of machines. + def list_switch_machines(self, switch_id, port=None, vlans=None, + tag=None, location=None): + data = {} + if port: + data['port'] = port - .. note:: - The machines can be filtered by switch_id, vlan_id, port - and limit. These params can be None or missing. If the param - is None or missing, the filter will be ignored. + if vlans: + data['vlans'] = vlans - :param switch_id: Return machine(s) connected to the switch. - :type switch_id: int. - :param vlan_id: Return machine(s) belonging to the vlan. - :type vlan_id: int. - :param port: Return machine(s) connect to the port. - :type port: int. - :param limit: the maximum number of machines will be returned. - :type limit: int. 0 means no limit. - """ - params = {} - if switch_id: - params['switchId'] = switch_id + if tag: + data['tag'] = tag - if vlan_id: - params['vlanId'] = vlan_id + if location: + data['location'] = location + + return self._get('/switches/%s/machines' % switch_id, data=data) + + def get_switch_machine(self, switch_id, machine_id): + return self._get('/switches/%s/machines/%s' % (switch_id, machine_id)) + + def list_switch_machines_hosts(self, switch_id, port=None, vlans=None, + mac=None, tag=None, location=None, + os_name=None, os_id=None): + + data = {} + if port: + data['port'] = port + + if vlans: + data['vlans'] = vlans + + if mac: + data['mac'] = mac + + if tag: + data['tag'] = tag + + if location: + data['location'] = location + + if os_name: + data['os_name'] = os_name + + if os_id: + data['os_id'] = os_id + + return self._get('/switches/%s/machines-hosts' % switch_id, data=data) + + def add_switch_machine(self, switch_id, mac=None, port=None, + vlans=None, ipmi_credentials=None, + tag=None, location=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if mac: + data['mac'] = mac + + if port: + data['port'] = port + + if vlans: + data['vlans'] = vlans + + if ipmi_credentials: + data['ipmi_credentials'] = ipmi_credentials + + if tag: + data['tag'] = tag + + if location: + data['location'] = location + + return self._post('/switches/%s/machines' % switch_id, data=data) + + def update_switch_machine(self, switch_id, machine_id, port=None, + vlans=None, ipmi_credentials=None, tag=None, + location=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if port: + data['port'] = port + + if vlans: + data['vlans'] = vlans + + if ipmi_credentials: + data['ipmi_credentials'] = ipmi_credentials + + if tag: + data['tag'] = tag + + if location: + data['location'] = location + + return self._put('/switches/%s/machines/%s' % + (switch_id, machine_id), data=data) + + def delete_switch_machine(self, switch_id, machine_id): + return self._delete('/switches/%s/machines/%s' % + (switch_id, machine_id)) + + ## test these + def poll_switch(self, switch_id): + data = {} + data['find_machines'] = None + return self._post('/switches/%s/action' % switch_id, data=data) + + def add_group_switch_machines(self, switch_id, group_machine_ids): + data = {} + data['add_machines'] = group_machine_ids + return self._post('/switches/%s/action' % switch_id, data=data) + + def remove_group_switch_machines(self, switch_id, group_machine_ids): + data = {} + data['remove_machines'] = group_machine_ids + return self._post('/switches/%s/action' % switch_id, data=data) + + def update_group_switch_machines(self, switch_id, group_machines): + data = {} + data['set_machines'] = group_machines + return self._post('/switches/%s/action' % switch_id, data=data) + ## end + + def list_switchmachines(self, switch_ip_int=None, port=None, vlans=None, + mac=None, tag=None, location=None): + data = {} + if switch_ip_int: + data['switch_ip_int'] = switch_ip_int if port: - params['port'] = port + data['port'] = port - if limit: - params['limit'] = limit + if vlans: + data['vlans'] = vlans - return self._get('/machines', params=params) + if mac: + data['mac'] = mac + + if tag: + data['tag'] = tag + + if location: + data['location'] = location + + return self._get('/switch-machines', data=data) + + def list_switchmachines_hosts(self, switch_ip_int=None, port=None, + vlans=None, mac=None, tag=None, + location=None, os_name=None, os_id=None): + + data = {} + if switch_ip_int: + data['switch_ip_int'] = switch_ip_int + + if port: + data['port'] = port + + if vlans: + data['vlans'] = vlans + + if mac: + data['mac'] = mac + + if tag: + data['tag'] = tag + + if location: + data['location'] = location + + if os_name: + data['os_name'] = os_name + + if os_id: + data['os_id'] = os_id + + return self._get('/switches-machines-hosts', data=data) + + def show_switchmachine(self, switchmachine_id): + return self._get('/switch-machines/%s' % switchmachine_id) + + def update_switchmachine(self, switchmachine_id, + port=None, vlans=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if port: + data['port'] = port + + if vlans: + data['vlans'] = vlans + + return self._put('/switch-machines/%s' % switchmachine_id, data=data) + + def patch_switchmachine(self, switchmachine_id, + vlans=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + elif vlans: + data['vlans'] = vlans + + return self._patch('/switch-machines/%s' % switchmachine_id, data=data) + + def delete_switchmachine(self, switchmachine_id): + return self._delete('/switch-machines/%s' % switchmachine_id) + + def list_machines(self, mac=None, tag=None, location=None): + data = {} + if mac: + data['mac'] = mac + + if tag: + data['tag'] = tag + + if location: + data['location'] = location + + return self._get('/machines', data=data) def get_machine(self, machine_id): - """Lists the details for a specified machine. + data = {} + if id: + data['id'] = id - :param machine_id: Return machine with the id. - :type machine_id: int. - """ - return self._get('/machines/%s' % machine_id) + return self._get('/machines/%s' % machine_id, data=data) - def get_clusters(self): - """Lists the details for all clusters. - """ - return self._get('/clusters') - - def get_cluster(self, cluster_id): - """Lists the details of the specified cluster. - - :param cluster_id: cluster id. - :type cluster_id: int. - """ - return self._get('/clusters/%d' % cluster_id) - - def add_cluster(self, cluster_name, adapter_id, raw_data=None): - """Creates a cluster by specified name and given adapter id. - - :param cluster_name: cluster name. - :type cluster_name: str. - :param adapter_id: adapter id. - :type adapter_id: int. - """ + def update_machine(self, machine_id, ipmi_credentials=None, tag=None, + location=None, raw_data=None): data = {} if raw_data: data = raw_data else: - data['cluster'] = {} - data['cluster']['name'] = cluster_name - data['cluster']['adapter_id'] = adapter_id - return self._post('/clusters', data=data) + if ipmi_credentials: + data['ipmi_credentials'] = ipmi_credentials - def add_hosts(self, cluster_id, machine_ids, raw_data=None): - """add the specified machine(s) as the host(s) to the cluster. + if tag: + data['tag'] = tag - :param cluster_id: cluster id. - :type cluster_id: int. - :param machine_ids: machine ids to add to cluster. - :type machine_ids: list of int, each is the id of one machine. - """ + if location: + data['location'] = location + + return self._put('/machines/%s' % machine_id, data=data) + + def patch_machine(self, machine_id, ipmi_credentials=None, + tag=None, location=None, + raw_data=None): data = {} if raw_data: data = raw_data else: - data['addHosts'] = machine_ids - return self._post('/clusters/%d/action' % cluster_id, data=data) + if ipmi_credentials: + data['ipmi_credentials'] = ipmi_credentials - def remove_hosts(self, cluster_id, host_ids, raw_data=None): - """remove the specified host(s) from the cluster. + if tag: + data['tag'] = tag - :param cluster_id: cluster id. - :type cluster_id: int. - :param host_ids: host ids to remove from cluster. - :type host_ids: list of int, each is the id of one host. - """ + if location: + data['location'] = location + + return self._patch('/machines/%s' % machine_id, data=data) + + def delete_machine(self, machine_id): + return self._delete('machines/%s' % machine_id) + + def list_subnets(self, subnet=None, name=None): data = {} - if raw_data: - data = raw_data - else: - data['removeHosts'] = host_ids - return self._post('/clusters/%s/action' % cluster_id, data=data) + if subnet: + data['subnet'] = subnet - def replace_hosts(self, cluster_id, machine_ids, raw_data=None): - """replace the cluster hosts with the specified machine(s). - - :param cluster_id: int, The unique identifier of the cluster. - :type cluster_id: int. - :param machine_ids: the machine ids to replace the hosts in cluster. - :type machine_ids: list of int, each is the id of one machine. - """ - data = {} - if raw_data: - data = raw_data - else: - data['replaceAllHosts'] = machine_ids - return self._post('/clusters/%s/action' % cluster_id, data=data) - - def deploy_hosts(self, cluster_id, raw_data=None): - """Deploy the cluster. - - :param cluster_id: The unique identifier of the cluster - :type cluster_id: int. - """ - data = {} - if raw_data: - data = raw_data - else: - data['deploy'] = [] - return self._post('/clusters/%d/action' % cluster_id, data=data) - - @classmethod - def parse_security(cls, kwargs): - """parse the arguments to security data.""" - data = {} - for key, value in kwargs.items(): - if '_' not in key: - continue - key_name, key_value = key.split('_', 1) - data.setdefault( - '%s_credentials' % key_name, {})[key_value] = value - - return data - - def set_security(self, cluster_id, **kwargs): - """Update the cluster security configuration. - - :param cluster_id: cluster id. - :type cluster_id: int. - :param _username: username of the security name. - :type _username: str. - :param _password: passowrd of the security name. - :type _password: str. - - .. note:: - security_name should be one of ['server', 'service', 'console']. - """ - data = {} - data['security'] = self.parse_security(kwargs) - return self._put('/clusters/%d/security' % cluster_id, data=data) - - @classmethod - def parse_networking(cls, kwargs): - """parse arguments to network data.""" - data = {} - global_keys = [ - 'nameservers', 'search_path', 'gateway', - 'proxy', 'ntp_server', 'ha_vip'] - for key, value in kwargs.items(): - if key in global_keys: - data.setdefault('global', {})[key] = value - else: - if '_' not in key: - continue - - key_name, key_value = key.split('_', 1) - data.setdefault( - 'interfaces', {} - ).setdefault( - key_name, {} - )[key_value] = value - - return data - - def set_networking(self, cluster_id, **kwargs): - """Update the cluster network configuration. - - :param cluster_id: cluster id. - :type cluster_id: int. - :param nameservers: comma seperated nameserver ip address. - :type nameservers: str. - :param search_path: comma seperated dns name search path. - :type search_path: str. - :param gateway: gateway ip address for routing to outside. - :type gateway: str. - :param proxy: proxy url for downloading packages. - :type proxy: str. - :param ntp_server: ntp server ip address to sync timestamp. - :type ntp_server: str. - :param ha_vip: ha vip address to run ha proxy. - :type ha_vip: str. - :param _ip_start: start ip address to host's interface. - :type _ip_start: str. - :param _ip_end: end ip address to host's interface. - :type _ip_end: str. - :param _netmask: netmask to host's interface. - :type _netmask: str. - :param _nic: host physical interface name. - :type _nic: str. - :param _promisc: if the interface in promiscous mode. - :type _promisc: int, 0 or 1. - - .. note:: - interface should be one of ['management', 'tenant', - 'public', 'storage']. - """ - data = {} - data['networking'] = self.parse_networking(kwargs) - return self._put('/clusters/%d/networking' % cluster_id, data=data) - - @classmethod - def parse_partition(cls, kwargs): - """parse arguments to partition data.""" - data = {} - for key, value in kwargs.items(): - if key.endswith('_percentage'): - key_name = key[:-len('_percentage')] - data[key_name] = '%s%%' % value - elif key.endswitch('_mbytes'): - key_name = key[:-len('_mbytes')] - data[key_name] = str(value) - - return ';'.join([ - '/%s %s' % (key, value) for key, value in data.items() - ]) - - def set_partition(self, cluster_id, **kwargs): - """Update the cluster partition configuration. - - :param cluster_id: cluster id. - :type cluster_id: int. - :param _percentage: the partiton percentage. - :type _percentage: float between 0 to 100. - :param _mbytes: the partition mbytes. - :type _mbytes: int. - - .. note:: - partition should be one of ['home', 'var', 'tmp']. - """ - data = {} - data['partition'] = self.parse_partition(kwargs) - return self._put('/clusters/%s/partition' % cluster_id, data=data) - - def get_hosts(self, hostname=None, clustername=None): - """Lists the details of hosts. - - .. note:: - The hosts can be filtered by hostname, clustername. - These params can be None or missing. If the param - is None or missing, the filter will be ignored. - - :param hostname: The name of a host. - :type hostname: str. - :param clustername: The name of a cluster. - :type clustername: str. - """ - params = {} - if hostname: - params['hostname'] = hostname - - if clustername: - params['clustername'] = clustername - - return self._get('/clusterhosts', params=params) - - def get_host(self, host_id): - """Lists the details for the specified host. - - :param host_id: host id. - :type host_id: int. - """ - return self._get('/clusterhosts/%s' % host_id) - - def get_host_config(self, host_id): - """Lists the details of the config for the specified host. - - :param host_id: host id. - :type host_id: int. - """ - return self._get('/clusterhosts/%s/config' % host_id) - - def update_host_config(self, host_id, hostname=None, - roles=None, raw_data=None, **kwargs): - """Updates config for the host. - - :param host_id: host id. - :type host_id: int. - :param hostname: host name. - :type hostname: str. - :param security__username: username of the security name. - :type security__username: str. - :param security__password: passowrd of the security name. - :type security__password: str. - :param networking_nameservers: comma seperated nameserver ip address. - :type networking_nameservers: str. - :param networking_search_path: comma seperated dns name search path. - :type networking_search_path: str. - :param networking_gateway: gateway ip address for routing to outside. - :type networking_gateway: str. - :param networking_proxy: proxy url for downloading packages. - :type networking_proxy: str. - :param networking_ntp_server: ntp server ip address to sync timestamp. - :type networking_ntp_server: str. - :param networking__ip: ip address to host interface. - :type networking__ip: str. - :param networking__netmask: netmask to host's interface. - :type networking__netmask: str. - :param networking__nic: host physical interface name. - :type networking__nic: str. - :param networking__promisc: if the interface is promiscous. - :type networking__promisc: int, 0 or 1. - :param partition__percentage: the partiton percentage. - :type partition__percentage: float between 0 to 100. - :param partition__mbytes: the partition mbytes. - :type partition__mbytes: int. - :param roles: host assigned roles in the cluster. - :type roles: list of str. - """ - data = {} - if raw_data: - data = raw_data - else: - if hostname: - data['hostname'] = hostname - - sub_kwargs = {} - for key, value in kwargs.items(): - key_name, key_value = key.split('_', 1) - sub_kwargs.setdefault(key_name, {})[key_value] = value - - if 'security' in sub_kwargs: - data['security'] = self.parse_security(sub_kwargs['security']) - - if 'networking' in sub_kwargs: - data['networking'] = self.parse_networking( - sub_kwargs['networking']) - if 'partition' in sub_kwargs: - data['partition'] = self.parse_partition( - sub_kwargs['partition']) - - if roles: - data['roles'] = roles - - return self._put('/clusterhosts/%s/config' % host_id, data) - - def delete_from_host_config(self, host_id, delete_key): - """Deletes one key in config for the host. - - :param host_id: host id. - :type host_id: int. - :param delete_key: the key in host config to be deleted. - :type delete_key: str. - """ - return self._delete('/clusterhosts/%s/config/%s' % ( - host_id, delete_key)) - - def get_adapters(self, name=None): - """Lists details of adapters. - - .. note:: - the adapter can be filtered by name of name is given and not None. - - :param name: adapter name. - :type name: str. - """ - params = {} if name: - params['name'] = name + data['name'] = name - return self._get('/adapters', params=params) + return self._get('/subnets', data=data) + + def get_subnet(self, subnet_id): + return self._get('/subnets/%s' % subnet_id) + + def add_subnet(self, subnet, name=None, raw_data=None): + data = {} + data['subnet'] = subnet + if raw_data: + data.update(raw_data) + else: + if name: + data['name'] = name + + return self._post('/subnets', data=data) + + def update_subnet(self, subnet_id, subnet=None, + name=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if subnet: + data['subnet'] = subnet + + if name: + data['name'] = name + return self._put('/subnets/%s' % subnet_id, data=data) + + def delete_subnet(self, subnet_id): + return self._delete('/subnets/%s' % subnet_id) + + def list_adapters(self, name=None, distributed_system_name=None, + os_installer_name=None, package_installer_name=None): + data = {} + if name: + data['name'] = name + + if distributed_system_name: + data['distributed_system_name'] = distributed_system_name + + if os_installer_name: + data['os_installer_name'] = os_installer_name + + if package_installer_name: + data['package_installer_name'] = package_installer_name + + return self._get('/adapters', data=data) def get_adapter(self, adapter_id): - """Lists details for the specified adapter. - - :param adapter_id: adapter id. - :type adapter_id: int. - """ return self._get('/adapters/%s' % adapter_id) def get_adapter_roles(self, adapter_id): - """Lists roles to assign to hosts for the specified adapter. - - :param adapter_id: adapter id. - :type adapter_id: int. - """ return self._get('/adapters/%s/roles' % adapter_id) - def get_host_installing_progress(self, host_id): - """Lists progress details for the specified host. + def get_adapter_metadata(self, adapter_id): + return self._get('/adapters/%s/metadata' % adapter_id) - :param host_id: host id. - :type host_id: int. - """ - return self._get('/clusterhosts/%s/progress' % host_id) + def get_os_metadata(self, os_id): + return self._get('/oses/%s/metadata' % os_id) - def get_cluster_installing_progress(self, cluster_id): - """Lists progress details for the specified cluster. + def list_clusters(self, name=None, os_name=None, + distributed_system_name=None, owner=None, + adapter_id=None): + data = {} + if name: + data['name'] = name - :param cluster_id: cluster id. - :param cluster_id: int. - """ + if os_name: + data['os_name'] = os_name - return self._get('/clusters/%s/progress' % cluster_id) + if distributed_system_name: + data['distributed_system_name'] = distributed_system_name - def get_dashboard_links(self, cluster_id): - """Lists links for dashboards of deployed cluster. + if owner: + data['owner'] = owner - :param cluster_id: cluster id. - :type cluster_id: int. - """ - params = {} - params['cluster_id'] = cluster_id - return self._get('/dashboardlinks', params) + if adapter_id: + data['adapter_id'] = adapter_id + + return self._get('/clusters', data=data) + + def get_cluster(self, cluster_id): + return self._get('/clusters/%s' % cluster_id) + + def add_cluster(self, name, adapter_id, os_id, + flavor_id=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if flavor_id: + data['flavor_id'] = flavor_id + data['name'] = name + data['adapter_id'] = adapter_id + data['os_id'] = os_id + + return self._post('/clusters', data=data) + + def update_cluster(self, cluster_id, name=None, + reinstall_distributed_system=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if name: + data['name'] = name + + if reinstall_distributed_system: + data['reinstall_distributed_system'] = ( + reinstall_distributed_system + ) + return self._put('/clusters/%s' % cluster_id, data=data) + + def delete_cluster(self, cluster_id): + return self._delete('/clusters/%s' % cluster_id) + + def get_cluster_config(self, cluster_id): + return self._get('/clusters/%s/config' % cluster_id) + + def get_cluster_metadata(self, cluster_id): + return self._get('/clusters/%s/metadata' % cluster_id) + + def update_cluster_config(self, cluster_id, os_config=None, + package_config=None, config_step=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + + if os_config: + data['os_config'] = os_config + + if package_config: + data['package_config'] = package_config + + if config_step: + data['config_step'] = config_step + + return self._put('/clusters/%s/config' % cluster_id, data=data) + + def patch_cluster_config(self, cluster_id, os_config=None, + package_config=None, config_step=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + + if os_config: + data['os_config'] = os_config + + if package_config: + data['package_config'] = package_config + + if config_step: + data['config_step'] = config_step + + return self._patch('/clusters/%s/config' % cluster_id, data=data) + + def delete_cluster_config(self, cluster_id): + return self._delete('/clusters/%s/config' % cluster_id) + + ## test these + def add_hosts_to_cluster(self, cluster_id, hosts): + data = {} + data['add_hosts'] = hosts + return self._post('/clusters/%s/action' % cluster_id, data=data) + + def set_hosts_in_cluster(self, cluster_id, hosts): + data = {} + data['set_hosts'] = hosts + return self._post('/clusters/%s/action' % cluster_id, data=data) + + def remove_hosts_from_cluster(self, cluster_id, hosts): + data = {} + data['remove_hosts'] = hosts + return self._post('/clusters/%s/action' % cluster_id, data=data) + + def review_cluster(self, cluster_id, review={}): + data = {} + data['review'] = review + return self._post('/clusters/%s/action' % cluster_id, data=data) + + def deploy_cluster(self, cluster_id, deploy={}): + data = {} + data['deploy'] = deploy + return self._post('/clusters/%s/action' % cluster_id, data=data) + + def get_cluster_state(self, cluster_id): + return self._get('/clusters/%s/state' % cluster_id) + + def list_cluster_hosts(self, cluster_id): + return self._get('/clusters/%s/hosts' % cluster_id) + + def list_clusterhosts(self): + return self._get('/clusterhosts') + + def get_cluster_host(self, cluster_id, host_id): + return self._get('/clusters/%s/hosts/%s' % (cluster_id, host_id)) + + def get_clusterhost(self, clusterhost_id): + return self._get('/clusterhosts/%s' % clusterhost_id) + + def add_cluster_host(self, cluster_id, machine_id=None, name=None, + reinstall_os=None, raw_data=None): + data = {} + data['machine_id'] = machine_id + if raw_data: + data.update(raw_data) + else: + if name: + data['name'] = name + + if reinstall_os: + data['reinstall_os'] = reinstall_os + + return self._post('/clusters/%s/hosts' % cluster_id, data=data) + + def delete_cluster_host(self, cluster_id, host_id): + return self._delete('/clusters/%s/hosts/%s' % + (cluster_id, host_id)) + + def delete_clusterhost(self, clusterhost_id): + return self._delete('/clusterhosts/%s' % clusterhost_id) + + def get_cluster_host_config(self, cluster_id, host_id): + return self._get('/clusters/%s/hosts/%s/config' % + (cluster_id, host_id)) + + def get_clusterhost_config(self, clusterhost_id): + return self._get('/clusterhosts/%s/config' % clusterhost_id) + + def update_cluster_host_config(self, cluster_id, host_id, + os_config=None, + package_config=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if os_config: + data['os_config'] = os_config + + if package_config: + data['package_config'] = package_config + + return self._put('/clusters/%s/hosts/%s/config' % + (cluster_id, host_id), data=data) + + def update_clusterhost_config(self, clusterhost_id, os_config=None, + package_config=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + + else: + if os_config: + data['os_config'] = os_config + + if package_config: + data['package_config'] = package_config + + return self._put('/clusterhosts/%s/config' % clusterhost_id, + data=data) + + def patch_cluster_host_config(self, cluster_id, host_id, + os_config=None, + package_config=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + + else: + if os_config: + data['os_config'] = os_config + + if package_config: + data['package_config'] = package_config + + return self._patch('/clusters/%s/hosts/%s/config' % + (cluster_id, host_id), data=data) + + def patch_clusterhost_config(self, clusterhost_id, os_config=None, + package_config=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + + else: + if os_config: + data['os_config'] = os_config + + if package_config: + data['package_config'] = package_config + + return self._patch('/clusterhosts/%s' % clusterhost_id, data=data) + + def delete_cluster_host_config(self, cluster_id, host_id): + return self._delete('/clusters/%s/hosts/%s/config' % + (cluster_id, host_id)) + + def delete_clusterhost_config(self, clusterhost_id): + return self._delete('/clusterhosts/%s/config' % clusterhost_id) + + def get_cluster_host_state(self, cluster_id, host_id): + return self._get('/clusters/%s/hosts/%s/state' % + (cluster_id, host_id)) + + def update_cluster_host(self, cluster_id, host_id, + roles=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if roles: + data['roles'] = roles + + return self._put('/clusters/%s/hosts/%s' % + (cluster_id, host_id), data=data) + + def update_clusterhost(self, clusterhost_id, + roles=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if roles: + data['roles'] = roles + + return self._put('/clusterhosts/%s' % clusterhost_id, data=data) + + def patch_cluster_host(self, cluster_id, host_id, + roles=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if roles: + data['roles'] = roles + + return self._patch('/clusters/%s/hosts/%s' % + (cluster_id, host_id), data=data) + + def patch_clusterhost(self, clusterhost_id, + roles=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if roles: + data['roles'] = roles + + return self._patch('/clusterhosts/%s' % clusterhost_id, data=data) + + def get_clusterhost_state(self, clusterhost_id): + return self._get('/clusterhosts/%s/state' % clusterhost_id) + + def update_cluster_host_state(self, cluster_id, host_id, state=None, + percentage=None, message=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if state: + data['state'] = state + + if percentage: + data['percentage'] = percentage + + if message: + data['message'] = message + + return self._put('/clusters/%s/hosts/%s/state' % (cluster_id, host_id), + data=data) + + def update_clusterhost_state(self, clusterhost_id, state=None, + percentage=None, message=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if state: + data['state'] = state + + if percentage: + data['percentage'] = percentage + + if message: + data['message'] = message + + return self._put('/clusterhosts/%s/state' % clusterhost_id, data=data) + + def list_hosts(self, name=None, os_name=None, owner=None, mac=None): + data = {} + if name: + data['name'] = name + + if os_name: + data['os_name'] = os_name + + if owner: + data['owner'] = owner + + if mac: + data['mac'] = mac + + return self._get('/hosts', data=data) + + def get_host(self, host_id): + return self._get('/hosts/%s' % host_id) + + def list_machines_or_hosts(self, mac=None, tag=None, + location=None, os_name=None, + os_id=None): + data = {} + if mac: + data['mac'] = mac + + if tag: + data['tag'] = tag + + if location: + data['location'] = location + + if os_name: + data['os_name'] = os_name + + if os_id: + data['os_id'] = os_id + + return self._get('/machines-hosts', data=data) + + def get_machine_or_host(self, host_id): + return self._get('/machines-hosts/%s' % host_id) + + def update_host(self, host_id, name=None, + reinstall_os=None, raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if name: + data['name'] = name + + if reinstall_os: + data['reinstall_os'] = reinstall_os + + return self._put('/hosts/%s' % host_id, data=data) + + def delete_host(self, host_id): + return self._delete('/hosts/%s' % host_id) + + def get_host_clusters(self, host_id): + return self._get('/hosts/%s/clusters' % host_id) + + def get_host_config(self, host_id): + return self._get('/hosts/%s/config' % host_id) + + def update_host_config(self, host_id, os_config, raw_data=None): + data = {} + data['os_config'] = os_config + if raw_data: + data.update(raw_data) + + return self._put('/hosts/%s/config' % host_id, data=data) + + def patch_host_config(self, host_id, os_config, raw_data=None): + data = {} + data['os_config'] = os_config + if raw_data: + data.update(raw_data) + + return self._patch('/hosts/%s/config' % host_id, data=data) + + def delete_host_config(self, host_id): + return self._delete('/hosts/%s/config' % host_id) + + def list_host_networks(self, host_id, interface=None, ip=None, + subnet=None, is_mgmt=None, is_promiscuous=None): + data = {} + if interface: + data['interface'] = interface + + if ip: + data['ip'] = ip + + if subnet: + data['subnet'] = subnet + + if is_mgmt: + data['is_mgmt'] = is_mgmt + + if is_promiscuous: + data['is_promiscuous'] = is_promiscuous + + return self._get('/hosts/%s/networks' % host_id, data=data) + + def list_all_host_networks(self, interface=None, ip=None, subnet=None, + is_mgmt=None, is_promiscuous=None): + data = {} + if interface: + data['interface'] = interface + + if ip: + data['ip'] = ip + + if subnet: + data['subnet'] = subnet + + if is_mgmt: + data['is_mgmt'] = is_mgmt + + if is_promiscuous: + data['is_promiscuous'] = is_promiscuous + + return self._get('/host-networks', data=data) + + def get_host_network(self, host_id, host_network_id): + return self._get('/hosts/%s/networks/%s' % + (host_id, host_network_id)) + + def get_network_for_all_hosts(self, host_network_id): + return self._get('/host-networks/%s' % host_network_id) + + def add_host_network(self, host_id, interface, ip, subnet_id, + is_mgmt=None, is_promiscuous=None, + raw_data=None): + data = {} + data['interface'] = interface + data['ip'] = ip + data['subnet_id'] = subnet_id + if raw_data: + data.update(raw_data) + else: + if is_mgmt: + data['is_mgmt'] = is_mgmt + + if is_promiscuous: + data['is_promiscuous'] = is_promiscuous + + return self._post('/hosts/%s/networks' % host_id, data=data) + + def update_host_network(self, host_id, host_network_id, + ip=None, subnet_id=None, subnet=None, + is_mgmt=None, is_promiscuous=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if ip: + data['ip'] = ip + + if subnet_id: + data['subnet_id'] = subnet_id + + if subnet: + data['subnet'] = subnet + + if is_mgmt: + data['is_mgmt'] = is_mgmt + + if is_promiscuous: + data['is_promiscuous'] = is_promiscuous + + return self._put('/hosts/%s/networks/%s' % + (host_id, host_network_id), data=data) + + def update_hostnetwork(self, host_network_id, ip=None, + subnet_id=None, subnet=None, + is_mgmt=None, is_promiscuous=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if ip: + data['ip'] = ip + + if subnet_id: + data['subnet_id'] = subnet_id + + if subnet: + data['subnet'] = subnet + + if is_mgmt: + data['is_mgmt'] = is_mgmt + + if is_promiscuous: + data['is_promiscuous'] = is_promiscuous + + return self._put('/host-networks/%s' % host_network_id, + data=data) + + def delete_host_network(self, host_id, host_network_id): + return self._delete('/hosts/%s/networks/%s', + (host_id, host_network_id)) + + def delete_hostnetwork(self, host_network_id): + return self._delete('/host-networks/%s' % host_network_id) + + def get_host_state(self, host_id): + return self._get('/hosts/%s/state' % host_id) + + def update_host_state(self, host_id, state=None, + percentage=None, message=None, + raw_data=None): + data = {} + if raw_data: + data = raw_data + else: + if state: + data['state'] = state + + if percentage: + data['percentage'] = percentage + + if message: + data['message'] = message + + return self._put('/hosts/%s/state' % host_id, date=data) + + def poweron_host(self, host_id): + data = {} + data['poweron'] = True + + return self._post('/hosts/%s/action' % host_id, data=data) + + def poweroff_host(self, host_id): + data = {} + data['poweroff'] = True + + return self._post('/hosts/%s/action' % host_id, data=data) + + def reset_host(self, host_id): + data = {} + data['reset'] = True + + return self._post('/hosts/%s/action' % host_id, data=data) diff --git a/compass/tests/config_management/installers/__init__.py b/compass/apiclient/v1/__init__.py similarity index 100% rename from compass/tests/config_management/installers/__init__.py rename to compass/apiclient/v1/__init__.py diff --git a/compass/apiclient/v1/example.py b/compass/apiclient/v1/example.py new file mode 100755 index 00000000..7463cad6 --- /dev/null +++ b/compass/apiclient/v1/example.py @@ -0,0 +1,305 @@ +#!/usr/bin/python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Example code to deploy a cluster by compass client api.""" +import os +import re +import requests +import sys +import time + +from compass.apiclient.restful import Client + + +COMPASS_SERVER_URL = 'http://127.0.0.1/api' +SWITCH_IP = '10.145.81.220' +SWITCH_SNMP_VERSION = 'v2c' +SWITCH_SNMP_COMMUNITY = 'public' +#MACHINES_TO_ADD = ['00:11:20:30:40:01'] +CLUSTER_NAME = 'cluster2' +HOST_NAME_PREFIX = 'host' +SERVER_USERNAME = 'root' +SERVER_PASSWORD = 'root' +SERVICE_USERNAME = 'service' +SERVICE_PASSWORD = 'service' +CONSOLE_USERNAME = 'console' +CONSOLE_PASSWORD = 'console' +HA_VIP = '' +#NAMESERVERS = '192.168.10.6' +SEARCH_PATH = 'ods.com' +#GATEWAY = '192.168.10.6' +#PROXY = 'http://192.168.10.6:3128' +#NTP_SERVER = '192.168.10.6' +MANAGEMENT_IP_START = '192.168.10.130' +MANAGEMENT_IP_END = '192.168.10.254' +MANAGEMENT_IP_GATEWAY = '192.168.10.1' +MANAGEMENT_NETMASK = '255.255.255.0' +MANAGEMENT_NIC = 'eth0' +MANAGEMENT_PROMISC = 0 +TENANT_IP_START = '192.168.10.100' +TENANT_IP_END = '192.168.10.255' +TENANT_IP_GATEWAY = '192.168.10.1' +TENANT_NETMASK = '255.255.255.0' +TENANT_NIC = 'eth0' +TENANT_PROMISC = 0 +PUBLIC_IP_START = '12.234.32.100' +PUBLIC_IP_END = '12.234.32.255' +PUBLIC_IP_GATEWAY = '12.234.32.1' +PUBLIC_NETMASK = '255.255.255.0' +PUBLIC_NIC = 'eth1' +PUBLIC_PROMISC = 1 +STORAGE_IP_START = '172.16.100.100' +STORAGE_IP_END = '172.16.100.255' +STORAGE_NETMASK = '255.255.255.0' +STORAGE_IP_GATEWAY = '172.16.100.1' +STORAGE_NIC = 'eth0' +STORAGE_PROMISC = 0 +HOME_PERCENTAGE = 5 +TMP_PERCENTAGE = 5 +VAR_PERCENTAGE = 10 +#ROLES_LIST = [['os-dashboard']] + +PRESET_VALUES = { + 'NAMESERVERS': '192.168.10.1', + 'NTP_SERVER': '192.168.10.1', + 'GATEWAY': '192.168.10.1', + 'PROXY': 'http://192.168.10.1:3128', + 'ROLES_LIST': 'os-dashboard', + 'MACHINES_TO_ADD': '00:11:20:30:40:01', + 'BUILD_TIMEOUT': 60 +} +for v in PRESET_VALUES: + if v in os.environ.keys(): + PRESET_VALUES[v] = os.environ.get(v) + print (v + PRESET_VALUES[v] + " is set by env variables") + else: + print (PRESET_VALUES[v]) + +# get apiclient object. +client = Client(COMPASS_SERVER_URL) + + +# get all switches. +status, resp = client.get_switches() +print 'get all switches status: %s resp: %s' % (status, resp) + +# add a switch. +status, resp = client.add_switch( + SWITCH_IP, version=SWITCH_SNMP_VERSION, + community=SWITCH_SNMP_COMMUNITY) + +print 'add a switch status: %s resp: %s' % (status, resp) + +if status < 400: + switch = resp['switch'] +else: + status, resp = client.get_switches() + print 'get all switches status: %s resp: %s' % (status, resp) + switch = None + for switch in resp['switches']: + if switch['ip'] == SWITCH_IP: + break + +switch_id = switch['id'] +switch_ip = switch['ip'] + + +# if the switch is not in under_monitoring, wait for the poll switch task +# update the swich information and change the switch state. +while switch['state'] != 'under_monitoring': + print 'waiting for the switch into under_monitoring' + status, resp = client.get_switch(switch_id) + print 'get switch %s status: %s, resp: %s' % (switch_id, status, resp) + switch = resp['switch'] + time.sleep(10) + + +# get machines connected to the switch. +status, resp = client.get_machines(switch_id=switch_id) +print 'get all machines under switch %s status: %s, resp: %s' % ( + switch_id, status, resp) +machines = {} +MACHINES_TO_ADD = PRESET_VALUES['MACHINES_TO_ADD'].split() +for machine in resp['machines']: + mac = machine['mac'] + if mac in MACHINES_TO_ADD: + machines[machine['id']] = mac + +print 'machine to add: %s' % machines + +if set(machines.values()) != set(MACHINES_TO_ADD): + print 'only found macs %s while expected are %s' % ( + machines.values(), MACHINES_TO_ADD) + sys.exit(1) + + +# get adapters. +status, resp = client.get_adapters() +print 'get all adapters status: %s, resp: %s' % (status, resp) +adapter_ids = [] +for adapter in resp['adapters']: + adapter_ids.append(adapter['id']) + +adapter_id = adapter_ids[0] +print 'adpater for deploying a cluster: %s' % adapter_id + + +# add a cluster. +status, resp = client.add_cluster( + cluster_name=CLUSTER_NAME, adapter_id=adapter_id) +print 'add cluster %s status: %s, resp: %s' % (CLUSTER_NAME, status, resp) +cluster = resp['cluster'] +cluster_id = cluster['id'] + +# add hosts to the cluster. +status, resp = client.add_hosts( + cluster_id=cluster_id, + machine_ids=machines.keys()) +print 'add hosts to cluster %s status: %s, resp: %s' % ( + cluster_id, status, resp) +host_ids = [] +for host in resp['cluster_hosts']: + host_ids.append(host['id']) + +print 'added hosts: %s' % host_ids + + +# set cluster security +status, resp = client.set_security( + cluster_id, server_username=SERVER_USERNAME, + server_password=SERVER_PASSWORD, + service_username=SERVICE_USERNAME, + service_password=SERVICE_PASSWORD, + console_username=CONSOLE_USERNAME, + console_password=CONSOLE_PASSWORD) +print 'set security config to cluster %s status: %s, resp: %s' % ( + cluster_id, status, resp) + + +# set cluster networking +status, resp = client.set_networking( + cluster_id, + nameservers=PRESET_VALUES["NAMESERVERS"], + search_path=SEARCH_PATH, + gateway=PRESET_VALUES["GATEWAY"], + proxy=PRESET_VALUES["PROXY"], + ntp_server=PRESET_VALUES["NTP_SERVER"], + ha_vip=HA_VIP, + management_ip_start=MANAGEMENT_IP_START, + management_ip_end=MANAGEMENT_IP_END, + management_netmask=MANAGEMENT_NETMASK, + management_nic=MANAGEMENT_NIC, + management_gateway=MANAGEMENT_IP_GATEWAY, + management_promisc=MANAGEMENT_PROMISC, + tenant_ip_start=TENANT_IP_START, + tenant_ip_end=TENANT_IP_END, + tenant_netmask=TENANT_NETMASK, + tenant_nic=TENANT_NIC, + tenant_gateway=TENANT_IP_GATEWAY, + tenant_promisc=TENANT_PROMISC, + public_ip_start=PUBLIC_IP_START, + public_ip_end=PUBLIC_IP_END, + public_netmask=PUBLIC_NETMASK, + public_nic=PUBLIC_NIC, + public_gateway=PUBLIC_IP_GATEWAY, + public_promisc=PUBLIC_PROMISC, + storage_ip_start=STORAGE_IP_START, + storage_ip_end=STORAGE_IP_END, + storage_netmask=STORAGE_NETMASK, + storage_nic=STORAGE_NIC, + storage_gateway=STORAGE_IP_GATEWAY, + storage_promisc=STORAGE_PROMISC) +print 'set networking config to cluster %s status: %s, resp: %s' % ( + cluster_id, status, resp) + + +# set partiton of each host in cluster +status, resp = client.set_partition( + cluster_id, + home_percentage=HOME_PERCENTAGE, + tmp_percentage=TMP_PERCENTAGE, + var_percentage=VAR_PERCENTAGE) +print 'set partition config to cluster %s status: %s, resp: %s' % ( + cluster_id, status, resp) + + +# set each host config in cluster. +ROLES_LIST = [PRESET_VALUES['ROLES_LIST'].split()] +for host_id in host_ids: + if ROLES_LIST: + roles = ROLES_LIST.pop(0) + else: + roles = [] + status, resp = client.update_host_config( + host_id, hostname='%s%s' % (HOST_NAME_PREFIX, host_id), + roles=roles) + print 'set roles to host %s status: %s, resp: %s' % ( + host_id, status, resp) + + +# deploy cluster. +status, resp = client.deploy_hosts(cluster_id) +print 'deploy cluster %s status: %s, resp: %s' % (cluster_id, status, resp) + + +# get intalling progress. +BUILD_TIMEOUT = float(PRESET_VALUES['BUILD_TIMEOUT']) +timeout = time.time() + BUILD_TIMEOUT * 60 +while True: + status, resp = client.get_cluster_installing_progress(cluster_id) + print 'get cluster %s installing progress status: %s, resp: %s' % ( + cluster_id, status, resp) + progress = resp['progress'] + if ( + progress['state'] not in ['UNINITIALIZED', 'INSTALLING'] or + progress['percentage'] >= 1.0 + ): + break + if ( + time.time() > timeout + ): + raise Exception("Timeout! The system is not ready in time.") + + for host_id in host_ids: + status, resp = client.get_host_installing_progress(host_id) + print 'get host %s installing progress status: %s, resp: %s' % ( + host_id, status, resp) + + time.sleep(60) + + +status, resp = client.get_dashboard_links(cluster_id) +print 'get cluster %s dashboardlinks status: %s, resp: %s' % ( + cluster_id, status, resp) +dashboardlinks = resp['dashboardlinks'] +if not dashboardlinks.keys(): + raise Exception("Dashboard link is not found!") +for x in dashboardlinks.keys(): + if x in ("os-dashboard", "os-controller"): + dashboardurl = dashboardlinks.get(x) + if dashboardurl is None: + raise Exception("No dashboard link is found") + r = requests.get(dashboardurl, verify=False) + r.raise_for_status() + match = re.search( + r'(?m)(http://\d+\.\d+\.\d+\.\d+:5000/v2\.0)', r.text) + if match: + print 'dashboard login page can be downloaded' + break + print ( + 'dashboard login page failed to be downloaded\n' + 'the context is:\n%s\n') % r.text + raise Exception("os-dashboard is not properly installed!") diff --git a/compass/apiclient/v1/restful.py b/compass/apiclient/v1/restful.py new file mode 100644 index 00000000..d0e4c5f3 --- /dev/null +++ b/compass/apiclient/v1/restful.py @@ -0,0 +1,656 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Compass api client library. + + .. moduleauthor:: Xiaodong Wang +""" +import json +import logging +import requests + + +class Client(object): + """wrapper for compass restful api. + + .. note:: + Every api client method returns (status as int, resp as dict). + If the api succeeds, the status is 2xx, the resp includes + {'status': 'OK'} and other keys depend on method. + If the api fails, the status is 4xx, the resp includes { + 'status': '...', 'message': '...'} + """ + + def __init__(self, url, headers=None, proxies=None, stream=None): + """Restful api client initialization. + + :param url: url to the compass web service. + :type url: str. + :param headers: http header sent in each restful request. + :type headers: dict of header name (str) to heade value (str). + :param proxies: the proxy address for each protocol. + :type proxies: dict of protocol (str) to proxy url (str). + :param stream: wether the restful response should be streamed. + :type stream: bool. + """ + self.url_ = url + self.session_ = requests.Session() + if headers: + self.session_.headers = headers + + if proxies is not None: + self.session_.proxies = proxies + + if stream is not None: + self.session_.stream = stream + + def __del__(self): + self.session_.close() + + @classmethod + def _get_response(cls, resp): + """decapsulate the resp to status code and python formatted data.""" + resp_obj = {} + try: + resp_obj = resp.json() + except Exception as error: + logging.error('failed to load object from %s: %s', + resp.url, resp.content) + logging.exception(error) + resp_obj['status'] = 'Json Parsing Failure' + resp_obj['message'] = resp.content + + return resp.status_code, resp_obj + + def _get(self, relative_url, params=None): + """encapsulate get method.""" + url = '%s%s' % (self.url_, relative_url) + if params: + resp = self.session_.get(url, params=params) + else: + resp = self.session_.get(url) + + return self._get_response(resp) + + def _post(self, relative_url, data=None): + """encapsulate post method.""" + url = '%s%s' % (self.url_, relative_url) + if data: + resp = self.session_.post(url, json.dumps(data)) + else: + resp = self.session_.post(url) + + return self._get_response(resp) + + def _put(self, relative_url, data=None): + """encapsulate put method.""" + url = '%s%s' % (self.url_, relative_url) + if data: + resp = self.session_.put(url, json.dumps(data)) + else: + resp = self.session_.put(url) + + return self._get_response(resp) + + def _delete(self, relative_url): + """encapsulate delete method.""" + url = '%s%s' % (self.url_, relative_url) + return self._get_response(self.session_.delete(url)) + + def get_switches(self, switch_ips=None, switch_networks=None, limit=None): + """List details for switches. + + .. note:: + The switches can be filtered by switch_ips, siwtch_networks and + limit. These params can be None or missing. If the param is None + or missing, that filter will be ignored. + + :param switch_ips: Filter switch(es) with IP(s). + :type switch_ips: list of str. Each is as 'xxx.xxx.xxx.xxx'. + :param switch_networks: Filter switche(es) with network(s). + :type switch_networks: list of str. Each is as 'xxx.xxx.xxx.xxx/xx'. + :param limit: int, The maximum number of switches to return. + :type limit: int. 0 means unlimited. + """ + params = {} + if switch_ips: + params['switchIp'] = switch_ips + + if switch_networks: + params['switchIpNetwork'] = switch_networks + + if limit: + params['limit'] = limit + return self._get('/switches', params=params) + + def get_switch(self, switch_id): + """Lists details for a specified switch. + + :param switch_id: switch id. + :type switch_id: int. + """ + return self._get('/switches/%s' % switch_id) + + def add_switch(self, switch_ip, version=None, community=None, + username=None, password=None, raw_data=None): + """Create a switch with specified details. + + .. note:: + It will trigger switch polling if successful. During + the polling, MAC address of the devices connected to the + switch will be learned by SNMP or SSH. + + :param switch_ip: the switch IP address. + :type switch_ip: str, as xxx.xxx.xxx.xxx. + :param version: SNMP version when using SNMP to poll switch. + :type version: str, one in ['v1', 'v2c', 'v3'] + :param community: SNMP community when using SNMP to poll switch. + :type community: str, usually 'public'. + :param username: SSH username when using SSH to poll switch. + :type username: str. + :param password: SSH password when using SSH to poll switch. + :type password: str. + """ + data = {} + if raw_data: + data = raw_data + else: + data['switch'] = {} + data['switch']['ip'] = switch_ip + data['switch']['credential'] = {} + if version: + data['switch']['credential']['version'] = version + + if community: + data['switch']['credential']['community'] = community + + if username: + data['switch']['credential']['username'] = username + + if password: + data['switch']['credential']['password'] = password + + return self._post('/switches', data=data) + + def update_switch(self, switch_id, ip_addr=None, + version=None, community=None, + username=None, password=None, + raw_data=None): + """Updates a switch with specified details. + + .. note:: + It will trigger switch polling if successful. During + the polling, MAC address of the devices connected to the + switch will be learned by SNMP or SSH. + + :param switch_id: switch id + :type switch_id: int. + :param ip_addr: the switch ip address. + :type ip_addr: str, as 'xxx.xxx.xxx.xxx' format. + :param version: SNMP version when using SNMP to poll switch. + :type version: str, one in ['v1', 'v2c', 'v3']. + :param community: SNMP community when using SNMP to poll switch. + :type community: str, usually be 'public'. + :param username: username when using SSH to poll switch. + :type username: str. + :param password: password when using SSH to poll switch. + """ + data = {} + if raw_data: + data = raw_data + else: + data['switch'] = {} + if ip_addr: + data['switch']['ip'] = ip_addr + + data['switch']['credential'] = {} + if version: + data['switch']['credential']['version'] = version + + if community: + data['switch']['credential']['community'] = community + + if username: + data['switch']['credential']['username'] = username + + if password: + data['switch']['credential']['password'] = password + + return self._put('/switches/%s' % switch_id, data=data) + + def delete_switch(self, switch_id): + """Not implemented in api.""" + return self._delete('/switches/%s' % switch_id) + + def get_machines(self, switch_id=None, vlan_id=None, + port=None, limit=None): + """Get the details of machines. + + .. note:: + The machines can be filtered by switch_id, vlan_id, port + and limit. These params can be None or missing. If the param + is None or missing, the filter will be ignored. + + :param switch_id: Return machine(s) connected to the switch. + :type switch_id: int. + :param vlan_id: Return machine(s) belonging to the vlan. + :type vlan_id: int. + :param port: Return machine(s) connect to the port. + :type port: int. + :param limit: the maximum number of machines will be returned. + :type limit: int. 0 means no limit. + """ + params = {} + if switch_id: + params['switchId'] = switch_id + + if vlan_id: + params['vlanId'] = vlan_id + + if port: + params['port'] = port + + if limit: + params['limit'] = limit + + return self._get('/machines', params=params) + + def get_machine(self, machine_id): + """Lists the details for a specified machine. + + :param machine_id: Return machine with the id. + :type machine_id: int. + """ + return self._get('/machines/%s' % machine_id) + + def get_clusters(self): + """Lists the details for all clusters. + """ + return self._get('/clusters') + + def get_cluster(self, cluster_id): + """Lists the details of the specified cluster. + + :param cluster_id: cluster id. + :type cluster_id: int. + """ + return self._get('/clusters/%d' % cluster_id) + + def add_cluster(self, cluster_name, adapter_id, raw_data=None): + """Creates a cluster by specified name and given adapter id. + + :param cluster_name: cluster name. + :type cluster_name: str. + :param adapter_id: adapter id. + :type adapter_id: int. + """ + data = {} + if raw_data: + data = raw_data + else: + data['cluster'] = {} + data['cluster']['name'] = cluster_name + data['cluster']['adapter_id'] = adapter_id + return self._post('/clusters', data=data) + + def add_hosts(self, cluster_id, machine_ids, raw_data=None): + """add the specified machine(s) as the host(s) to the cluster. + + :param cluster_id: cluster id. + :type cluster_id: int. + :param machine_ids: machine ids to add to cluster. + :type machine_ids: list of int, each is the id of one machine. + """ + data = {} + if raw_data: + data = raw_data + else: + data['addHosts'] = machine_ids + return self._post('/clusters/%d/action' % cluster_id, data=data) + + def remove_hosts(self, cluster_id, host_ids, raw_data=None): + """remove the specified host(s) from the cluster. + + :param cluster_id: cluster id. + :type cluster_id: int. + :param host_ids: host ids to remove from cluster. + :type host_ids: list of int, each is the id of one host. + """ + data = {} + if raw_data: + data = raw_data + else: + data['removeHosts'] = host_ids + return self._post('/clusters/%s/action' % cluster_id, data=data) + + def replace_hosts(self, cluster_id, machine_ids, raw_data=None): + """replace the cluster hosts with the specified machine(s). + + :param cluster_id: int, The unique identifier of the cluster. + :type cluster_id: int. + :param machine_ids: the machine ids to replace the hosts in cluster. + :type machine_ids: list of int, each is the id of one machine. + """ + data = {} + if raw_data: + data = raw_data + else: + data['replaceAllHosts'] = machine_ids + return self._post('/clusters/%s/action' % cluster_id, data=data) + + def deploy_hosts(self, cluster_id, raw_data=None): + """Deploy the cluster. + + :param cluster_id: The unique identifier of the cluster + :type cluster_id: int. + """ + data = {} + if raw_data: + data = raw_data + else: + data['deploy'] = [] + return self._post('/clusters/%d/action' % cluster_id, data=data) + + @classmethod + def parse_security(cls, kwargs): + """parse the arguments to security data.""" + data = {} + for key, value in kwargs.items(): + if '_' not in key: + continue + key_name, key_value = key.split('_', 1) + data.setdefault( + '%s_credentials' % key_name, {})[key_value] = value + + return data + + def set_security(self, cluster_id, **kwargs): + """Update the cluster security configuration. + + :param cluster_id: cluster id. + :type cluster_id: int. + :param _username: username of the security name. + :type _username: str. + :param _password: passowrd of the security name. + :type _password: str. + + .. note:: + security_name should be one of ['server', 'service', 'console']. + """ + data = {} + data['security'] = self.parse_security(kwargs) + return self._put('/clusters/%d/security' % cluster_id, data=data) + + @classmethod + def parse_networking(cls, kwargs): + """parse arguments to network data.""" + data = {} + global_keys = [ + 'nameservers', 'search_path', 'gateway', + 'proxy', 'ntp_server', 'ha_vip'] + for key, value in kwargs.items(): + if key in global_keys: + data.setdefault('global', {})[key] = value + else: + if '_' not in key: + continue + + key_name, key_value = key.split('_', 1) + data.setdefault( + 'interfaces', {} + ).setdefault( + key_name, {} + )[key_value] = value + + return data + + def set_networking(self, cluster_id, **kwargs): + """Update the cluster network configuration. + + :param cluster_id: cluster id. + :type cluster_id: int. + :param nameservers: comma seperated nameserver ip address. + :type nameservers: str. + :param search_path: comma seperated dns name search path. + :type search_path: str. + :param gateway: gateway ip address for routing to outside. + :type gateway: str. + :param proxy: proxy url for downloading packages. + :type proxy: str. + :param ntp_server: ntp server ip address to sync timestamp. + :type ntp_server: str. + :param ha_vip: ha vip address to run ha proxy. + :type ha_vip: str. + :param _ip_start: start ip address to host's interface. + :type _ip_start: str. + :param _ip_end: end ip address to host's interface. + :type _ip_end: str. + :param _netmask: netmask to host's interface. + :type _netmask: str. + :param _nic: host physical interface name. + :type _nic: str. + :param _promisc: if the interface in promiscous mode. + :type _promisc: int, 0 or 1. + + .. note:: + interface should be one of ['management', 'tenant', + 'public', 'storage']. + """ + data = {} + data['networking'] = self.parse_networking(kwargs) + return self._put('/clusters/%d/networking' % cluster_id, data=data) + + @classmethod + def parse_partition(cls, kwargs): + """parse arguments to partition data.""" + data = {} + for key, value in kwargs.items(): + if key.endswith('_percentage'): + key_name = key[:-len('_percentage')] + data[key_name] = '%s%%' % value + elif key.endswitch('_mbytes'): + key_name = key[:-len('_mbytes')] + data[key_name] = str(value) + + return ';'.join([ + '/%s %s' % (key, value) for key, value in data.items() + ]) + + def set_partition(self, cluster_id, **kwargs): + """Update the cluster partition configuration. + + :param cluster_id: cluster id. + :type cluster_id: int. + :param _percentage: the partiton percentage. + :type _percentage: float between 0 to 100. + :param _mbytes: the partition mbytes. + :type _mbytes: int. + + .. note:: + partition should be one of ['home', 'var', 'tmp']. + """ + data = {} + data['partition'] = self.parse_partition(kwargs) + return self._put('/clusters/%s/partition' % cluster_id, data=data) + + def get_hosts(self, hostname=None, clustername=None): + """Lists the details of hosts. + + .. note:: + The hosts can be filtered by hostname, clustername. + These params can be None or missing. If the param + is None or missing, the filter will be ignored. + + :param hostname: The name of a host. + :type hostname: str. + :param clustername: The name of a cluster. + :type clustername: str. + """ + params = {} + if hostname: + params['hostname'] = hostname + + if clustername: + params['clustername'] = clustername + + return self._get('/clusterhosts', params=params) + + def get_host(self, host_id): + """Lists the details for the specified host. + + :param host_id: host id. + :type host_id: int. + """ + return self._get('/clusterhosts/%s' % host_id) + + def get_host_config(self, host_id): + """Lists the details of the config for the specified host. + + :param host_id: host id. + :type host_id: int. + """ + return self._get('/clusterhosts/%s/config' % host_id) + + def update_host_config(self, host_id, hostname=None, + roles=None, raw_data=None, **kwargs): + """Updates config for the host. + + :param host_id: host id. + :type host_id: int. + :param hostname: host name. + :type hostname: str. + :param security__username: username of the security name. + :type security__username: str. + :param security__password: passowrd of the security name. + :type security__password: str. + :param networking_nameservers: comma seperated nameserver ip address. + :type networking_nameservers: str. + :param networking_search_path: comma seperated dns name search path. + :type networking_search_path: str. + :param networking_gateway: gateway ip address for routing to outside. + :type networking_gateway: str. + :param networking_proxy: proxy url for downloading packages. + :type networking_proxy: str. + :param networking_ntp_server: ntp server ip address to sync timestamp. + :type networking_ntp_server: str. + :param networking__ip: ip address to host interface. + :type networking__ip: str. + :param networking__netmask: netmask to host's interface. + :type networking__netmask: str. + :param networking__nic: host physical interface name. + :type networking__nic: str. + :param networking__promisc: if the interface is promiscous. + :type networking__promisc: int, 0 or 1. + :param partition__percentage: the partiton percentage. + :type partition__percentage: float between 0 to 100. + :param partition__mbytes: the partition mbytes. + :type partition__mbytes: int. + :param roles: host assigned roles in the cluster. + :type roles: list of str. + """ + data = {} + if raw_data: + data = raw_data + else: + if hostname: + data['hostname'] = hostname + + sub_kwargs = {} + for key, value in kwargs.items(): + key_name, key_value = key.split('_', 1) + sub_kwargs.setdefault(key_name, {})[key_value] = value + + if 'security' in sub_kwargs: + data['security'] = self.parse_security(sub_kwargs['security']) + + if 'networking' in sub_kwargs: + data['networking'] = self.parse_networking( + sub_kwargs['networking']) + if 'partition' in sub_kwargs: + data['partition'] = self.parse_partition( + sub_kwargs['partition']) + + if roles: + data['roles'] = roles + + return self._put('/clusterhosts/%s/config' % host_id, data) + + def delete_from_host_config(self, host_id, delete_key): + """Deletes one key in config for the host. + + :param host_id: host id. + :type host_id: int. + :param delete_key: the key in host config to be deleted. + :type delete_key: str. + """ + return self._delete('/clusterhosts/%s/config/%s' % ( + host_id, delete_key)) + + def get_adapters(self, name=None): + """Lists details of adapters. + + .. note:: + the adapter can be filtered by name of name is given and not None. + + :param name: adapter name. + :type name: str. + """ + params = {} + if name: + params['name'] = name + + return self._get('/adapters', params=params) + + def get_adapter(self, adapter_id): + """Lists details for the specified adapter. + + :param adapter_id: adapter id. + :type adapter_id: int. + """ + return self._get('/adapters/%s' % adapter_id) + + def get_adapter_roles(self, adapter_id): + """Lists roles to assign to hosts for the specified adapter. + + :param adapter_id: adapter id. + :type adapter_id: int. + """ + return self._get('/adapters/%s/roles' % adapter_id) + + def get_host_installing_progress(self, host_id): + """Lists progress details for the specified host. + + :param host_id: host id. + :type host_id: int. + """ + return self._get('/clusterhosts/%s/progress' % host_id) + + def get_cluster_installing_progress(self, cluster_id): + """Lists progress details for the specified cluster. + + :param cluster_id: cluster id. + :param cluster_id: int. + """ + + return self._get('/clusters/%s/progress' % cluster_id) + + def get_dashboard_links(self, cluster_id): + """Lists links for dashboards of deployed cluster. + + :param cluster_id: cluster id. + :type cluster_id: int. + """ + params = {} + params['cluster_id'] = cluster_id + return self._get('/dashboardlinks', params) diff --git a/compass/config_management/installers/__init__.py b/compass/config_management/installers/__init__.py deleted file mode 100644 index 3f15a786..00000000 --- a/compass/config_management/installers/__init__.py +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""modules to read/write cluster/host config from installers. - - .. moduleauthor:: Xiaodong Wang -""" -__all__ = [ - 'chefhandler', 'cobbler', - 'get_os_installer_by_name', - 'get_os_installer', - 'register_os_installer', - 'get_package_installer_by_name', - 'get_package_installer', - 'register_package_installer', -] - - -from compass.config_management.installers.os_installer import ( - get_installer as get_os_installer) -from compass.config_management.installers.os_installer import ( - get_installer_by_name as get_os_installer_by_name) -from compass.config_management.installers.os_installer import ( - register as register_os_installer) -from compass.config_management.installers.package_installer import ( - get_installer as get_package_installer) -from compass.config_management.installers.package_installer import ( - get_installer_by_name as get_package_installer_by_name) -from compass.config_management.installers.package_installer import ( - register as register_package_installer) -from compass.config_management.installers.plugins import chefhandler -from compass.config_management.installers.plugins import cobbler diff --git a/compass/config_management/installers/installer.py b/compass/config_management/installers/installer.py deleted file mode 100644 index bc4a9e57..00000000 --- a/compass/config_management/installers/installer.py +++ /dev/null @@ -1,146 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module to provider installer interface. - - .. moduleauthor:: Xiaodong Wang -""" - - -class Installer(object): - """Interface for installer.""" - NAME = 'installer' - - def __repr__(self): - return '%s[%s]' % (self.__class__.__name__, self.NAME) - - def sync(self, **kwargs): - """virtual method to sync installer.""" - pass - - def get_global_config(self, **kwargs): - """virtual method to get global config.""" - return {} - - def get_cluster_config(self, clusterid, **kwargs): - """virtual method to get cluster config. - - :param clusterid: the id of the cluster to get configuration. - :type clusterid: int - - :returns: cluster configuration as dict. - """ - return {} - - def get_host_config(self, hostid, **kwargs): - """virtual method to get host config. - - :param hostid: the id of host to get configuration. - :type hostid: int - - :returns: host configuration as dict. - """ - return {} - - def update_global_config(self, config, **kwargs): - """virtual method to update global config. - - :param config: global configuration. - :type config: dict - """ - pass - - def update_cluster_config(self, clusterid, config, **kwargs): - """virtual method to update cluster config. - - :param clusterid: the id of the cluster to update the configuration. - :type clusterid: int - :param config: cluster configuration to update. - :type config: dict - """ - pass - - def update_host_config(self, hostid, config, **kwargs): - """virtual method to update host config. - - :param hostid: the id of host to update host configuration. - :type hostid: int - :param config: host configuration to update. - :type config: dict - """ - pass - - def clean_host_installing_progress( - self, hostid, config, **kwargs - ): - """virtual method to clean host installing progress. - - :param hostid: the id of host to clean the log. - :type hostid: int - :param config: host configuration. - :type config: dict - """ - pass - - def clean_cluster_installing_progress( - self, clusterid, config, **kwargs - ): - """virtual method to clean host installing progress. - - :param clusterid: the id of cluster to clean the log. - :type clusterid: int - :param config: cluster configuration. - :type config: dict - """ - pass - - def reinstall_host(self, hostid, config, **kwargs): - """virtual method to reinstall specific host. - - :param hostid: the id of the host to reinstall. - :type hostid: int - :param config: host configuration to reinstall - :type config: dict - """ - pass - - def reinstall_cluster(self, clusterid, config, **kwargs): - """virtual method to reinstall specific cluster. - - :param clusterid: the id of the cluster to reinstall. - :type clusterid: int - :param config: cluster configuration to reinstall - :type config: dict - """ - pass - - def clean_host_config(self, hostid, config, **kwargs): - """virtual method to clean host config. - - :param hostid: the id of the host to cleanup. - :type hostid: int - :param config: host configuration to cleanup. - :type config: dict - """ - pass - - def clean_cluster_config(self, clusterid, config, **kwargs): - """virtual method to clean cluster config. - - :param clusterid: the id of the cluster to cleanup. - :type clusterid: int - :param config: cluster configuration to cleanup. - :type config: dict - """ - pass diff --git a/compass/config_management/installers/os_installer.py b/compass/config_management/installers/os_installer.py deleted file mode 100644 index 2c4e8af2..00000000 --- a/compass/config_management/installers/os_installer.py +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module for interface of os installer. - - .. moduleauthor::: Xiaodong Wang -""" -import logging - -from compass.config_management.installers import installer -from compass.utils import setting_wrapper as setting - - -class Installer(installer.Installer): - """Interface for os installer.""" - NAME = 'os_installer' - - def get_oses(self): - """virtual method to get supported oses. - - :returns: list of str, each is the supported os version. - """ - return [] - - -INSTALLERS = {} - - -def get_installer_by_name(name, **kwargs): - """Get os installer by name. - - :param name: os installer name. - :type name: str - - :returns: :instance of subclass of :class:`Installer` - :raises: KeyError - """ - if name not in INSTALLERS: - logging.error('os installer name %s is not in os installers %s', - name, INSTALLERS) - raise KeyError('os installer name %s is not in os INSTALLERS') - - os_installer = INSTALLERS[name](**kwargs) - logging.debug('got os installer %s', os_installer) - return os_installer - - -def register(os_installer): - """Register os installer. - - :param os_installer: subclass of :class:`Installer` - :raises: KeyError - """ - if os_installer.NAME in INSTALLERS: - logging.error( - 'os installer %s is already registered in INSTALLERS %s', - os_installer, INSTALLERS) - raise KeyError( - 'os installer %s is already registered' % os_installer) - - logging.info('register os installer %s', os_installer) - INSTALLERS[os_installer.NAME] = os_installer - - -def get_installer(**kwargs): - """Get default os installer from compass setting.""" - return get_installer_by_name(setting.OS_INSTALLER, **kwargs) diff --git a/compass/config_management/installers/package_installer.py b/compass/config_management/installers/package_installer.py deleted file mode 100644 index d6f7770c..00000000 --- a/compass/config_management/installers/package_installer.py +++ /dev/null @@ -1,101 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module to provider interface for package installer. - - .. moduleauthor:: Xiaodong Wang -""" -import logging - -from compass.config_management.installers import installer -from compass.utils import setting_wrapper as setting - - -class Installer(installer.Installer): - """Interface for package installer.""" - NAME = 'package_installer' - - def get_target_systems(self, oses): - """virtual method to get available target_systems for each os. - - :param oses: supported os versions. - :type oses: list of st - - :returns: dict of os_version to target systems as list of str. - """ - return {} - - def get_roles(self, target_system): - """virtual method to get all roles of given target system. - - :param target_system: target distributed system such as openstack. - :type target_system: str - - :returns: dict of role to role description as str. - """ - return {} - - def os_installer_config(self, config, **kwargs): - """virtual method to get os installer related config. - - :param config: os installer host configuration - :type config: dict - - :returns: package related configuration for os installer. - """ - return {} - - -INSTALLERS = {} - - -def get_installer_by_name(name, **kwargs): - """Get package installer by name. - - :param name: package installer name. - :type name: str - - :returns: instance of subclass of :class:`Installer` - :raises: KeyError - """ - if name not in INSTALLERS: - logging.error('installer name %s is not in package installers %s', - name, INSTALLERS) - raise KeyError('installer name %s is not in package INSTALLERS' % name) - - package_installer = INSTALLERS[name](**kwargs) - logging.debug('got package installer %s', package_installer) - return package_installer - - -def register(package_installer): - """Register package installer. - - :param package_installer: subclass of :class:`Installer` - :raises: KeyError - """ - if package_installer.NAME in INSTALLERS: - logging.error( - 'package installer %s is already in INSTALLERS %s', - installer, INSTALLERS) - raise KeyError( - 'package installer %s already registered' % package_installer) - - logging.info('register package installer: %s', package_installer) - INSTALLERS[package_installer.NAME] = package_installer - - -def get_installer(**kwargs): - """get default package installer from comapss setting.""" - return get_installer_by_name(setting.PACKAGE_INSTALLER, **kwargs) diff --git a/compass/config_management/installers/plugins/chefhandler.py b/compass/config_management/installers/plugins/chefhandler.py deleted file mode 100644 index e1caf44f..00000000 --- a/compass/config_management/installers/plugins/chefhandler.py +++ /dev/null @@ -1,467 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""package instaler chef plugin. - - .. moduleauthor:: Xiaodong Wang -""" -import fnmatch -import functools -import logging - -from compass.config_management.installers import package_installer -from compass.config_management.utils.config_translator import ConfigTranslator -from compass.config_management.utils.config_translator import KeyTranslator -from compass.config_management.utils import config_translator_callbacks -from compass.utils import setting_wrapper as setting -from compass.utils import util - - -FROM_GLOBAL_TRANSLATORS = { - 'openstack': ConfigTranslator( - mapping={ - '/read_config_mapping': [KeyTranslator( - translated_keys=( - config_translator_callbacks.get_keys_from_config_mapping), - translated_value=( - config_translator_callbacks.get_value_from_config_mapping) - )], - } - ), -} - -TO_GLOBAL_TRANSLATORS = { - 'openstack': ConfigTranslator( - mapping={ - '/test_roles/*': [KeyTranslator( - translated_keys=[ - functools.partial( - config_translator_callbacks.get_key_from_pattern, - from_pattern=r'^/test_roles/(?P.*)$', - to_pattern=( - '/role_assign_policy/default' - '/dependencies/%(role)s' - ) - ) - ], - from_values={'testmode': '/testmode'}, - translated_value=functools.partial( - config_translator_callbacks.add_value, - check_value_callback=( - lambda value, value_list: ( - set(value) & set(value_list)) - ), - add_value_callback=( - lambda value, value_list: value_list.extend(value) - ) - ), - override=True - )], - } - ), -} - -TO_CLUSTER_TRANSLATORS = { - 'openstack': ConfigTranslator( - mapping={ - '/config_mapping': [KeyTranslator( - translated_keys=( - config_translator_callbacks.get_keys_from_config_mapping), - translated_value=( - config_translator_callbacks.get_value_from_config_mapping) - )], - '/testmode': [KeyTranslator( - translated_keys=['/debugging/debug', '/debugging/verbose'], - translated_value=functools.partial( - config_translator_callbacks.set_value, - return_value_callback=lambda value: str(value) - ), - override=True - )], - } - ), -} - -FROM_CLUSTER_TRANSLATORS = { - 'openstack': ConfigTranslator( - mapping={ - '/role_assign_policy': [KeyTranslator( - translated_keys=['/role_assign_policy'] - )], - '/config_mapping': [KeyTranslator( - translated_keys=['/config_mapping'] - )], - '/role_mapping': [KeyTranslator( - translated_keys=['/role_mapping'] - )], - } - ), -} - - -TO_HOST_TRANSLATORS = { - 'openstack': ConfigTranslator( - mapping={ - '/roles': [KeyTranslator( - translated_keys=( - config_translator_callbacks.get_keys_from_role_mapping), - from_keys={'mapping': '/role_mapping'}, - translated_value=( - config_translator_callbacks.get_value_from_role_mapping), - from_values={'mapping': '/role_mapping'} - ), KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern='/node_mapping/%(node_name)s/roles' - )], - from_keys={'node_name': '/node_name'} - )], - '/networking/interfaces/management/ip': [KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern='/node_mapping/%(node_name)s/management_ip' - )], - from_keys={'node_name': '/node_name'} - )], - '/haproxy_roles': [KeyTranslator( - translated_keys=['/ha/status'], - translated_value='enable', - override=config_translator_callbacks.override_if_any, - override_conditions={'haproxy_roles': '/haproxy_roles'} - )], - '/haproxy/router_id': [KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern='/ha/keepalived/router_ids/%(node_name)s' - )], - from_keys={'node_name': '/node_name'} - )], - '/haproxy/priority': [KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern=( - '/ha/keepalived/instance_name/' - 'priorities/%(node_name)s' - ) - )], - from_keys={'node_name': '/node_name'} - )], - '/haproxy/state': [KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern=( - '/ha/keepalived/instance_name/' - 'states/%(node_name)s' - ) - )], - from_keys={'node_name': '/node_name'} - )], - } - ), -} - - -class Installer(package_installer.Installer): - """chef package installer.""" - NAME = 'chef' - - def __init__(self, **kwargs): - import chef - super(Installer, self).__init__(**kwargs) - self.installer_url_ = setting.CHEF_INSTALLER_URL - self.global_databag_name_ = setting.CHEF_GLOBAL_DATABAG_NAME - self.api_ = chef.autoconfigure() - self.tmp_databags_ = {} - self.tmp_databag_items_ = {} - logging.debug('%s instance created', self) - - def __repr__(self): - return '%s[name=%s,installer_url=%s,global_databag_name=%s]' % ( - self.__class__.__name__, self.NAME, self.installer_url_, - self.global_databag_name_) - - @classmethod - def _cluster_databag_name(cls, clusterid): - """get cluster databag name.""" - return '%s' % clusterid - - @classmethod - def _get_client_name(cls, fullname): - """get client name.""" - return cls._get_node_name(fullname) - - def _clean_host_attributes(self, config, target_system): - """clean node attributes about target system.""" - import chef - node_name = self._get_node_name(config['fullname']) - client_name = self._get_client_name(config['fullname']) - node = chef.Node(node_name, api=self.api_) - roles_per_target_system = node.get('roles_per_target_system', {}) - if target_system in roles_per_target_system: - del roles_per_target_system[target_system] - - node['roles_per_target_system'] = roles_per_target_system - if not roles_per_target_system: - try: - node.delete() - client = chef.Client(client_name, api=self.api_) - client.delete() - logging.debug( - 'delete %s for host %s ', target_system, node_name) - except Exception as error: - logging.debug( - 'failed to delete %s for host %s: %s', - target_system, node_name, error) - - else: - node.run_list = [] - for _, roles in roles_per_target_system.items(): - for role in roles: - node.run_list.append('role[%s]' % role) - - node.save() - logging.debug('node %s is updated for %s', - node_name, target_system) - - def _update_host_attributes(self, config, target_system): - """chef manage node attributes about target system.""" - import chef - node_name = self._get_node_name(config['fullname']) - node = chef.Node(node_name, api=self.api_) - node['cluster'] = self._cluster_databag_name(config['clusterid']) - roles_per_target_system = node.get('roles_per_target_system', {}) - roles_per_target_system[target_system] = config['roles'] - node['roles_per_target_system'] = roles_per_target_system - - node.run_list = [] - for _, roles in roles_per_target_system.items(): - for role in roles: - node.run_list.append('role[%s]' % role) - - node.save() - logging.debug('update %s for host %s', - target_system, node_name) - - @classmethod - def _get_node_name(cls, fullname): - """get node name.""" - return fullname - - def os_installer_config(self, config, target_system, **kwargs): - """get os installer config.""" - return { - '%s_url' % self.NAME: self.installer_url_, - 'chef_client_name': self._get_client_name(config['fullname']), - 'chef_node_name': self._get_node_name(config['fullname']) - } - - def get_target_systems(self, oses): - """get target systems.""" - import chef - databags = chef.DataBag.list(api=self.api_) - target_systems = {} - for os_version in oses: - target_systems[os_version] = [] - - for databag in databags: - target_system = databag - global_databag_item = self._get_global_databag_item(target_system) - support_oses = global_databag_item['support_oses'] - for os_version in oses: - for support_os in support_oses: - if fnmatch.fnmatch(os_version, support_os): - target_systems[os_version].append(target_system) - break - - return target_systems - - def get_roles(self, target_system): - """get supported roles.""" - global_databag_item = self._get_global_databag_item(target_system) - return global_databag_item['all_roles'] - - def _get_databag(self, target_system): - """get databag.""" - import chef - if target_system not in self.tmp_databags_: - self.tmp_databags_[target_system] = chef.DataBag( - target_system, api=self.api_) - - return self.tmp_databags_[target_system] - - def _get_databag_item(self, target_system, bag_item_name): - """get databag item.""" - import chef - databag_items = self.tmp_databag_items_.setdefault( - target_system, {}) - if bag_item_name not in databag_items: - databag = self._get_databag(target_system) - databag_items[bag_item_name] = chef.DataBagItem( - databag, bag_item_name, api=self.api_) - - return dict(databag_items[bag_item_name]) - - def _update_databag_item( - self, target_system, bag_item_name, config, save=True - ): - """update databag item.""" - import chef - databag_items = self.tmp_databag_items_.setdefault( - target_system, {}) - if bag_item_name not in databag_items: - databag = self._get_databag(target_system) - databag_items[bag_item_name] = chef.DataBagItem( - databag, bag_item_name, api=self.api_) - - bag_item = databag_items[bag_item_name] - for key, value in config.items(): - bag_item[key] = value - - if save: - bag_item.save() - logging.debug('save databag item %s to target system %s', - bag_item_name, target_system) - else: - logging.debug( - 'ignore saving databag item %s to target system %s', - bag_item_name, target_system) - - def _clean_databag_item(self, target_system, bag_item_name): - """clean databag item.""" - import chef - databag_items = self.tmp_databag_items_.setdefault( - target_system, {}) - if bag_item_name not in databag_items: - databag = self._get_databag(target_system) - databag_items[bag_item_name] = chef.DataBagItem( - databag, bag_item_name, api=self.api_) - - bag_item = databag_items[bag_item_name] - try: - bag_item.delete() - logging.debug( - 'databag item %s is removed from target_system %s', - bag_item_name, target_system) - except Exception as error: - logging.debug( - 'no databag item %s to delete from target_system %s: %s', - bag_item_name, target_system, error) - - del databag_items[bag_item_name] - - def _get_global_databag_item(self, target_system): - """get global databag item.""" - return self._get_databag_item( - target_system, self.global_databag_name_) - - def _clean_global_databag_item(self, target_system): - """clean global databag item.""" - self._clean_databag_item( - target_system, self.global_databag_name_) - - def _update_global_databag_item(self, target_system, config): - """update global databag item.""" - self._update_databag_item( - target_system, self.global_databag_name_, config, save=False) - - def _get_cluster_databag_item(self, target_system, clusterid): - """get cluster databag item.""" - return self._get_databag_item( - target_system, self._cluster_databag_name(clusterid)) - - def _clean_cluster_databag_item(self, target_system, clusterid): - """clean cluster databag item.""" - self._clean_databag_item( - target_system, self._cluster_databag_name(clusterid)) - - def _update_cluster_databag_item(self, target_system, clusterid, config): - """update cluster databag item.""" - self._update_databag_item( - target_system, self._cluster_databag_name(clusterid), - config, save=True) - - def get_global_config(self, target_system, **kwargs): - """get global config.""" - bag_item = self._get_global_databag_item(target_system) - return FROM_GLOBAL_TRANSLATORS[target_system].translate(bag_item) - - def get_cluster_config(self, clusterid, target_system, **kwargs): - """get cluster config.""" - global_bag_item = self._get_global_databag_item( - target_system) - cluster_bag_item = self._get_cluster_databag_item( - target_system, clusterid) - util.merge_dict(cluster_bag_item, global_bag_item, False) - - return FROM_CLUSTER_TRANSLATORS[target_system].translate( - cluster_bag_item) - - def clean_cluster_config(self, clusterid, config, - target_system, **kwargs): - """clean cluster config.""" - self._clean_cluster_databag_item(target_system, clusterid) - - def update_global_config(self, config, target_system, **kwargs): - """update global config.""" - global_bag_item = self._get_global_databag_item(target_system) - translated_config = TO_GLOBAL_TRANSLATORS[target_system].translate( - config) - - util.merge_dict(global_bag_item, translated_config, True) - self._update_global_databag_item(target_system, global_bag_item) - - def update_cluster_config(self, clusterid, config, - target_system, **kwargs): - """update cluster config.""" - self.clean_cluster_config(clusterid, config, - target_system, **kwargs) - global_bag_item = self._get_global_databag_item(target_system) - cluster_bag_item = self._get_cluster_databag_item( - target_system, clusterid) - util.merge_dict(cluster_bag_item, global_bag_item, False) - translated_config = TO_CLUSTER_TRANSLATORS[target_system].translate( - config) - util.merge_dict(cluster_bag_item, translated_config, True) - self._update_cluster_databag_item( - target_system, clusterid, cluster_bag_item) - - def clean_host_config(self, hostid, config, target_system, **kwargs): - """clean host config.""" - self._clean_host_attributes(config, target_system) - - def reinstall_host(self, hostid, config, target_system, **kwargs): - """reinstall host.""" - self._clean_host_attributes(config, target_system) - self._update_host_attributes(config, target_system) - - def update_host_config(self, hostid, config, target_system, **kwargs): - """update host config.""" - clusterid = config['clusterid'] - global_bag_item = self._get_global_databag_item(target_system) - cluster_bag_item = self._get_cluster_databag_item( - target_system, clusterid) - util.merge_dict(cluster_bag_item, global_bag_item, False) - util.merge_dict(config, { - 'client_name': self._get_client_name(config['fullname']), - 'node_name': self._get_node_name(config['fullname']) - }) - translated_config = TO_HOST_TRANSLATORS[target_system].translate( - config) - util.merge_dict(cluster_bag_item, translated_config, True) - self._update_cluster_databag_item( - target_system, clusterid, cluster_bag_item) - self._update_host_attributes(config, target_system) - - -package_installer.register(Installer) diff --git a/compass/config_management/installers/plugins/cobbler.py b/compass/config_management/installers/plugins/cobbler.py deleted file mode 100644 index b201a64e..00000000 --- a/compass/config_management/installers/plugins/cobbler.py +++ /dev/null @@ -1,290 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""os installer cobbler plugin. - - .. moduleauthor:: Xiaodong Wang -""" -import functools -import logging -import os.path -import shutil -import xmlrpclib - -from compass.config_management.installers import os_installer -from compass.config_management.utils.config_translator import ConfigTranslator -from compass.config_management.utils.config_translator import KeyTranslator -from compass.config_management.utils import config_translator_callbacks -from compass.utils import setting_wrapper as setting -from compass.utils import util - - -TO_HOST_TRANSLATOR = ConfigTranslator( - mapping={ - '/networking/global/gateway': [KeyTranslator( - translated_keys=['/gateway'] - )], - '/networking/global/nameservers': [KeyTranslator( - translated_keys=['/name_servers'] - )], - '/networking/global/search_path': [KeyTranslator( - translated_keys=['/name_servers_search'] - )], - '/networking/global/proxy': [KeyTranslator( - translated_keys=['/ksmeta/proxy'] - )], - '/networking/global/ignore_proxy': [KeyTranslator( - translated_keys=['/ksmeta/ignore_proxy'] - )], - '/networking/global/ntp_server': [KeyTranslator( - translated_keys=['/ksmeta/ntp_server'] - )], - '/security/server_credentials/username': [KeyTranslator( - translated_keys=['/ksmeta/username'] - )], - '/security/server_credentials/password': [KeyTranslator( - translated_keys=['/ksmeta/password'], - translated_value=config_translator_callbacks.get_encrypted_value - )], - '/partition': [KeyTranslator( - translated_keys=['/ksmeta/partition'] - )], - '/networking/interfaces/*/mac': [KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern='/modify_interface/macaddress-%(nic)s')], - from_keys={'nic': '../nic'}, - override=functools.partial( - config_translator_callbacks.override_path_has, - should_exist='management') - )], - '/networking/interfaces/*/ip': [KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern='/modify_interface/ipaddress-%(nic)s')], - from_keys={'nic': '../nic'}, - override=functools.partial( - config_translator_callbacks.override_path_has, - should_exist='management') - )], - '/networking/interfaces/*/netmask': [KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern='/modify_interface/netmask-%(nic)s')], - from_keys={'nic': '../nic'}, - override=functools.partial( - config_translator_callbacks.override_path_has, - should_exist='management') - )], - '/networking/interfaces/*/dns_alias': [KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern='/modify_interface/dnsname-%(nic)s')], - from_keys={'nic': '../nic'}, - override=functools.partial( - config_translator_callbacks.override_path_has, - should_exist='management') - )], - '/networking/interfaces/*/nic': [KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern='/modify_interface/static-%(nic)s')], - from_keys={'nic': '../nic'}, - translated_value=True, - override=functools.partial( - config_translator_callbacks.override_path_has, - should_exist='management'), - ), KeyTranslator( - translated_keys=[functools.partial( - config_translator_callbacks.get_key_from_pattern, - to_pattern='/modify_interface/management-%(nic)s')], - from_keys={'nic': '../nic'}, - translated_value=functools.partial( - config_translator_callbacks.override_path_has, - should_exist='management'), - override=functools.partial( - config_translator_callbacks.override_path_has, - should_exist='management') - ), KeyTranslator( - translated_keys=['/ksmeta/promisc_nics'], - from_values={'promisc': '../promisc'}, - translated_value=functools.partial( - config_translator_callbacks.add_value, - get_value_callback=lambda config: [ - value for value in config.split(',') if value - ], - return_value_callback=lambda values: ','.join(values) - ), - override=True - )], - } -) - - -class Installer(os_installer.Installer): - """cobbler installer""" - NAME = 'cobbler' - - def __init__(self, **kwargs): - super(Installer, self).__init__() - # the connection is created when cobbler installer is initialized. - self.remote_ = xmlrpclib.Server( - setting.COBBLER_INSTALLER_URL, - allow_none=True) - self.token_ = self.remote_.login( - *setting.COBBLER_INSTALLER_TOKEN) - - # cobbler tries to get package related config from package installer. - self.package_installer_ = kwargs['package_installer'] - logging.debug('%s instance created', self) - - def __repr__(self): - return '%s[name=%s,remote=%s,token=%s' % ( - self.__class__.__name__, self.NAME, - self.remote_, self.token_) - - def get_oses(self): - """get supported os versions. - - :returns: list of os version. - - .. note:: - In cobbler, we treat profile name as the indicator - of os version. It is just a simple indicator - and not accurate. - """ - profiles = self.remote_.get_profiles() - oses = [] - for profile in profiles: - oses.append(profile['name']) - return oses - - def sync(self): - """Sync cobbler to catch up the latest update config.""" - logging.debug('sync %s', self) - self.remote_.sync(self.token_) - os.system('service rsyslog restart') - - def _get_modify_system(self, profile, config, **kwargs): - """get modified system config.""" - system_config = { - 'name': config['fullname'], - 'hostname': config['hostname'], - 'profile': profile, - } - - translated_config = TO_HOST_TRANSLATOR.translate(config) - util.merge_dict(system_config, translated_config) - - ksmeta = system_config.setdefault('ksmeta', {}) - package_config = {'tool': self.package_installer_.NAME} - util.merge_dict( - package_config, - self.package_installer_.os_installer_config( - config, **kwargs)) - util.merge_dict(ksmeta, package_config) - - return system_config - - def _get_profile(self, os_version, **_kwargs): - """get profile name.""" - profile_found = self.remote_.find_profile( - {'name': os_version}) - return profile_found[0] - - def _get_system(self, config, create_if_not_exists=True): - """get system reference id.""" - sys_name = config['fullname'] - try: - sys_id = self.remote_.get_system_handle( - sys_name, self.token_) - logging.debug('using existing system %s for %s', - sys_id, sys_name) - except Exception: - if create_if_not_exists: - sys_id = self.remote_.new_system(self.token_) - logging.debug('create new system %s for %s', - sys_id, sys_name) - else: - sys_id = None - - return sys_id - - def _clean_system(self, config): - """clean system.""" - sys_name = config['fullname'] - try: - self.remote_.remove_system(sys_name, self.token_) - logging.debug('system %s is removed', sys_name) - except Exception: - logging.debug('no system %s found to remove', sys_name) - - def _save_system(self, sys_id): - """save system config update.""" - self.remote_.save_system(sys_id, self.token_) - - def _update_modify_system(self, sys_id, system_config): - """update modify system.""" - for key, value in system_config.items(): - self.remote_.modify_system( - sys_id, key, value, self.token_) - - def _netboot_enabled(self, sys_id): - """enable netboot.""" - self.remote_.modify_system( - sys_id, 'netboot_enabled', True, self.token_) - - def clean_host_config(self, hostid, config, **kwargs): - """clean host config.""" - self.clean_host_installing_progress( - hostid, config, **kwargs) - self._clean_system(config) - - @classmethod - def _clean_log(cls, system_name): - """clean log.""" - log_dir = os.path.join( - setting.INSTALLATION_LOGDIR, - system_name) - shutil.rmtree(log_dir, True) - - def clean_host_installing_progress( - self, hostid, config, **kwargs - ): - """clean host installing progress.""" - self._clean_log(config['fullname']) - - def reinstall_host(self, hostid, config, **kwargs): - """reinstall host.""" - sys_id = self._get_system(config, False) - if sys_id: - self.clean_host_installing_progress( - hostid, config, **kwargs) - self._netboot_enabled(sys_id) - self._save_system(sys_id) - - def update_host_config(self, hostid, config, **kwargs): - """update host config.""" - profile = self._get_profile(**kwargs) - sys_id = self._get_system(config) - system_config = self._get_modify_system( - profile, config, **kwargs) - logging.debug('%s system config to update: %s', - hostid, system_config) - - self._update_modify_system(sys_id, system_config) - self._save_system(sys_id) - - -os_installer.register(Installer) diff --git a/compass/config_management/providers/__init__.py b/compass/config_management/providers/__init__.py deleted file mode 100644 index f35c65f8..00000000 --- a/compass/config_management/providers/__init__.py +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""modules to provider providers to read/write cluster/host config - - .. moduleauthor:: Xiaodong Wang -""" -__all__ = [ - 'db_config_provider', 'file_config_provider', 'mix_config_provider', - 'get_provider', 'get_provider_by_name', 'register_provider', -] - - -from compass.config_management.providers.config_provider import ( - get_provider) -from compass.config_management.providers.config_provider import ( - get_provider_by_name) -from compass.config_management.providers.config_provider import ( - register_provider) -from compass.config_management.providers.plugins import db_config_provider -from compass.config_management.providers.plugins import file_config_provider -from compass.config_management.providers.plugins import mix_config_provider diff --git a/compass/config_management/providers/config_provider.py b/compass/config_management/providers/config_provider.py deleted file mode 100644 index 5d1ef89b..00000000 --- a/compass/config_management/providers/config_provider.py +++ /dev/null @@ -1,231 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module to provide interface to read/update global/cluster/host config. - - .. moduleauthor:: Xiaodong Wang -""" -import logging - -from abc import ABCMeta - -from compass.utils import setting_wrapper as setting - - -class ConfigProvider(object): - """Interface for config provider""" - __metaclass__ = ABCMeta - - NAME = 'config_provider' - - def __repr__(self): - return '%s[%s]' % (self.__class__.__name__, self.NAME) - - def get_global_config(self): - """Virtual method to get global config. - - :returns: global configuration as dict. - """ - return {} - - def get_cluster_config(self, clusterid): - """Virtual method to get cluster config. - - :param clusterid: id of the cluster to get configuration. - :type clusterid: int - - :returns: cluster configuration as dict. - """ - return {} - - def update_adapters(self, adapters, roles_per_target_system): - """Virtual method to update adapters. - - :param adapters: adapters to update - :type adapters: list of dict - :param roles_per_target_system: roles per target_system to update - :type roles_per_target_system: dict of str to dict. - """ - pass - - def update_switch_filters(self, switch_filters): - """Virtual method to update switch filters. - - :param switch_filters: switch filters to update. - :type switch_filters: list of dict - """ - pass - - def get_host_config(self, hostid): - """Virtual method to get host config. - - :param hostid: id of the host to get configuration. - :type hostid: int - - :returns: host configuration as dict. - """ - return {} - - def update_global_config(self, config): - """Virtual method to update global config. - - :param config: global configuration. - :type config: dict - """ - pass - - def update_cluster_config(self, clusterid, config): - """Virtual method to update cluster config. - - :param clusterid: the id of the cluster to update configuration. - :type clusterid: int - :param config: cluster configuration. - :type config: dict - """ - pass - - def update_host_config(self, hostid, config): - """Virtual method to update host config. - - :param hostid: the id of the host to update configuration. - :type hostid: int - :param config: host configuration. - :type config: dict - """ - pass - - def clean_host_config(self, hostid): - """Virtual method to clean host config. - - :param hostid; the id of the host to clean. - :type hostid: int - """ - pass - - def reinstall_host(self, hostid): - """Virtual method to reintall host. - - :param hostid: the id of the host to reinstall. - :type hostid: int. - """ - pass - - def reinstall_cluster(self, clusterid): - """Virtual method to reinstall cluster. - - :param clusterid: the id of the cluster to reinstall. - :type clusterid: int - """ - pass - - def clean_host_installing_progress(self, hostid): - """Virtual method to clean host installing progress. - - :param hostid: the id of the host to clean the installing progress - :type hostid: int - """ - pass - - def clean_cluster_installing_progress(self, clusterid): - """Virtual method to clean cluster installing progress. - - :param clusterid: the id of the cluster to clean installing progress - :type clusterid: int - """ - pass - - def clean_cluster_config(self, clusterid): - """Virtual method to clean cluster config - - :param clsuterid: the id of the cluster to clean - :type clusterid: int - """ - pass - - def get_cluster_hosts(self, clusterid): - """Virtual method to get hosts of given cluster. - - :param clusterid: the id of the clsuter - :type clsuterid: int - """ - return [] - - def get_clusters(self): - """Virtual method to get cluster list.""" - return [] - - def get_switch_and_machines(self): - """Virtual method to get switches and machines. - - :returns: switches as list, machines per switch as dict of str to list - """ - return ([], {}) - - def update_switch_and_machines( - self, switches, switch_machines - ): - """Virtual method to update switches and machines. - - :param switches: switches to update - :type switches: list of dict. - :param switch_machines: machines of each switch to update - :type switch_machines: dict of str to list of dict. - """ - pass - - def sync(self): - """Virtual method to sync data in provider.""" - pass - - -PROVIDERS = {} - - -def get_provider(): - """get default provider from compass setting.""" - return get_provider_by_name(setting.PROVIDER_NAME) - - -def get_provider_by_name(name): - """get provider by provider name. - - :param name: provider name. - :type name: str - - :returns: instance of subclass of :class:`ConfigProvider`. - :raises: KeyError - """ - if name not in PROVIDERS: - logging.error('provider name %s is not found in providers %s', - name, PROVIDERS) - raise KeyError('provider %s is not found in PROVIDERS' % name) - - provider = PROVIDERS[name]() - logging.debug('got provider %s', provider) - return provider - - -def register_provider(provider): - """register provider. - - :param provider: class inherited from :class:`ConfigProvider` - :raises: KeyError - """ - if provider.NAME in PROVIDERS: - logging.error('provider %s name %s is already registered in %s', - provider, provider.NAME, PROVIDERS) - raise KeyError('provider %s is already registered in PROVIDERS' % - provider.NAME) - logging.debug('register provider %s', provider.NAME) - PROVIDERS[provider.NAME] = provider diff --git a/compass/config_management/providers/plugins/db_config_provider.py b/compass/config_management/providers/plugins/db_config_provider.py deleted file mode 100644 index 1d51baad..00000000 --- a/compass/config_management/providers/plugins/db_config_provider.py +++ /dev/null @@ -1,314 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module to provide ConfigProvider that reads config from db. - - .. moduleauthor:: Xiaodong Wang -""" -import logging -import os.path - -from compass.config_management.providers import config_provider -from compass.config_management.utils import config_filter -from compass.config_management.utils import config_filter_callbacks -from compass.db import database -from compass.db.model import Adapter -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.db.model import ClusterState -from compass.db.model import HostState -from compass.db.model import LogProgressingHistory -from compass.db.model import Machine -from compass.db.model import Role -from compass.db.model import Switch -from compass.db.model import SwitchConfig -from compass.utils import setting_wrapper as setting - - -GET_CLUSTER_ALLOWS = { - '*': config_filter.AllowRule() -} -GET_CLUSTER_DENIES = { - '/networking/global/ha_vip': config_filter.DenyRule( - check=config_filter_callbacks.deny_if_empty) -} -GET_HOST_ALLOWS = { - '*': config_filter.AllowRule() -} -GET_HOST_DENIES = { - '/roles': config_filter.DenyRule( - check=config_filter_callbacks.deny_if_empty - ), - '/dashboard_roles': config_filter.DenyRule( - check=config_filter_callbacks.deny_if_empty - ), - '/haproxy_roles': config_filter.DenyRule( - check=config_filter_callbacks.deny_if_empty - ), -} -UPDATE_CLUSTER_ALLOWS = { - '/security': config_filter.AllowRule(), - '/networking': config_filter.AllowRule(), - '/partition': config_filter.AllowRule() -} -UPDATE_CLUSTER_DENIES = { - '/networking/global/ha_vip': config_filter.DenyRule( - check=config_filter_callbacks.deny_if_empty) -} -UPDATE_HOST_ALLOWS = { - '/roles': config_filter.AllowRule( - check=config_filter_callbacks.allow_if_not_empty), - '/has_dashboard_roles': config_filter.AllowRule(), - '/dashboard_roles': config_filter.AllowRule( - check=config_filter_callbacks.allow_if_not_empty - ), - '/haproxy_roles': config_filter.AllowRule( - check=config_filter_callbacks.allow_if_not_empty - ), - '/networking/interfaces/*/ip': config_filter.AllowRule() -} -UPDATE_HOST_DENIES = {} - - -class DBProvider(config_provider.ConfigProvider): - """config provider which reads config from db. - - .. note:: - All method of this class should be called inside database - session scope. - """ - NAME = 'db' - GET_CLUSTER_FILTER = config_filter.ConfigFilter( - GET_CLUSTER_ALLOWS, GET_CLUSTER_DENIES) - GET_HOST_FILTER = config_filter.ConfigFilter( - GET_HOST_ALLOWS, GET_HOST_DENIES) - UPDATE_CLUSTER_FILTER = config_filter.ConfigFilter( - UPDATE_CLUSTER_ALLOWS, UPDATE_CLUSTER_DENIES) - UPDATE_HOST_FILTER = config_filter.ConfigFilter( - UPDATE_HOST_ALLOWS, UPDATE_HOST_DENIES) - - def __init__(self): - pass - - def get_cluster_config(self, clusterid): - """Get cluster config from db.""" - session = database.current_session() - cluster = session.query(Cluster).filter_by(id=clusterid).first() - if not cluster: - return {} - - return self.GET_CLUSTER_FILTER.filter(cluster.config) - - def get_host_config(self, hostid): - """Get host config from db.""" - session = database.current_session() - host = session.query(ClusterHost).filter_by(id=hostid).first() - if not host: - return {} - - return self.GET_HOST_FILTER.filter(host.config) - - def update_cluster_config(self, clusterid, config): - """Update cluster config to db.""" - session = database.current_session() - cluster = session.query(Cluster).filter_by(id=clusterid).first() - if not cluster: - return - - cluster.config = self.UPDATE_CLUSTER_FILTER.filter(config) - - def update_host_config(self, hostid, config): - """Update host config to db.""" - session = database.current_session() - host = session.query(ClusterHost).filter_by(id=hostid).first() - if not host: - return - - host.config = self.UPDATE_HOST_FILTER.filter(config) - - def update_adapters(self, adapters, roles_per_target_system): - """Update adapter config to db.""" - session = database.current_session() - session.query(Adapter).delete() - session.query(Role).delete() - for adapter in adapters: - session.add(Adapter(**adapter)) - - for _, roles in roles_per_target_system.items(): - for role in roles: - session.add(Role(**role)) - - def update_switch_filters(self, switch_filters): - """update switch filters.""" - session = database.current_session() - switch_filter_tuples = set([]) - session.query(SwitchConfig).delete(synchronize_session='fetch') - for switch_filter in switch_filters: - switch_filter_tuple = tuple(switch_filter.values()) - if switch_filter_tuple in switch_filter_tuples: - logging.debug('ignore adding switch filter: %s', - switch_filter) - continue - else: - logging.debug('add switch filter: %s', switch_filter) - switch_filter_tuples.add(switch_filter_tuple) - - session.add(SwitchConfig(**switch_filter)) - - def clean_host_config(self, hostid): - """clean host config.""" - self.clean_host_installing_progress(hostid) - session = database.current_session() - session.query(ClusterHost).filter_by( - id=hostid).delete(synchronize_session='fetch') - session.query(HostState).filter_by( - id=hostid).delete(synchronize_session='fetch') - - def reinstall_host(self, hostid): - """reinstall host.""" - session = database.current_session() - host = session.query(ClusterHost).filter_by(id=hostid).first() - if not host: - return - - log_dir = os.path.join( - setting.INSTALLATION_LOGDIR, - host.fullname, - '') - session.query(LogProgressingHistory).filter( - LogProgressingHistory.pathname.startswith( - log_dir)).delete(synchronize_session='fetch') - if not host.state: - host.state = HostState() - - host.mutable = False - host.state.state = 'INSTALLING' - host.state.progress = 0.0 - host.state.message = '' - host.state.severity = 'INFO' - - def reinstall_cluster(self, clusterid): - """reinstall cluster.""" - session = database.current_session() - cluster = session.query(Cluster).filter_by(id=clusterid).first() - if not cluster: - return - - if not cluster.state: - cluster.state = ClusterState() - - cluster.state.state = 'INSTALLING' - cluster.mutable = False - cluster.state.progress = 0.0 - cluster.state.message = '' - cluster.state.severity = 'INFO' - - def clean_cluster_installing_progress(self, clusterid): - """clean cluster installing progress.""" - session = database.current_session() - cluster = session.query(Cluster).filter_by(id=clusterid).first() - if not cluster: - return - - if cluster.state and cluster.state.state != 'UNINITIALIZED': - cluster.mutable = False - cluster.state.state = 'INSTALLING' - cluster.state.progress = 0.0 - cluster.state.message = '' - cluster.state.severity = 'INFO' - - def clean_host_installing_progress(self, hostid): - """clean host intalling progress.""" - session = database.current_session() - host = session.query(ClusterHost).filter_by(id=hostid).first() - if not host: - return - - log_dir = os.path.join( - setting.INSTALLATION_LOGDIR, - host.fullname, - '') - session.query(LogProgressingHistory).filter( - LogProgressingHistory.pathname.startswith( - log_dir)).delete(synchronize_session='fetch') - if host.state and host.state.state != 'UNINITIALIZED': - host.mutable = False - host.state.state = 'INSTALLING' - host.state.progress = 0.0 - host.state.message = '' - host.state.severity = 'INFO' - - def clean_cluster_config(self, clusterid): - """clean cluster config.""" - session = database.current_session() - session.query(Cluster).filter_by( - id=clusterid).delete(synchronize_session='fetch') - session.query(ClusterState).filter_by( - id=clusterid).delete(synchronize_session='fetch') - - def get_cluster_hosts(self, clusterid): - """get cluster hosts.""" - session = database.current_session() - hosts = session.query(ClusterHost).filter_by( - cluster_id=clusterid).all() - return [host.id for host in hosts] - - def get_clusters(self): - """get clusters.""" - session = database.current_session() - clusters = session.query(Cluster).all() - return [cluster.id for cluster in clusters] - - def get_switch_and_machines(self): - """get switches and machines.""" - session = database.current_session() - switches = session.query(Switch).all() - switches_data = [] - switch_machines_data = {} - for switch in switches: - switches_data.append({ - 'ip': switch.ip, - 'vendor_info': switch.vendor_info, - 'credential': switch.credential, - 'state': switch.state, - }) - switch_machines_data[switch.ip] = [] - for machine in switch.machines: - switch_machines_data[switch.ip].append({ - 'mac': machine.mac, - 'port': machine.port, - 'vlan': machine.vlan, - }) - - return switches_data, switch_machines_data - - def update_switch_and_machines( - self, switches, switch_machines - ): - """update switches and machines.""" - session = database.current_session() - session.query(Switch).delete(synchronize_session='fetch') - session.query(Machine).delete(synchronize_session='fetch') - for switch_data in switches: - switch = Switch(**switch_data) - logging.info('add switch %s', switch) - session.add(switch) - for machine_data in switch_machines.get(switch.ip, []): - machine = Machine(**machine_data) - logging.info('add machine %s under %s', machine, switch) - machine.switch = switch - session.add(machine) - - -config_provider.register_provider(DBProvider) diff --git a/compass/config_management/providers/plugins/file_config_provider.py b/compass/config_management/providers/plugins/file_config_provider.py deleted file mode 100644 index 49524db0..00000000 --- a/compass/config_management/providers/plugins/file_config_provider.py +++ /dev/null @@ -1,99 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""config provider read config from file. - - .. moduleauthor:: Xiaodong Wang -""" -import json -import logging - -from compass.config_management.providers import config_provider -from compass.utils import setting_wrapper as setting - - -class FileProvider(config_provider.ConfigProvider): - """config provider which reads config from file.""" - NAME = 'file' - - def __init__(self): - self.config_dir_ = setting.CONFIG_DIR - self.global_config_filename_ = setting.GLOBAL_CONFIG_FILENAME - self.config_file_format_ = setting.CONFIG_FILE_FORMAT - - def _global_config_filename(self): - """Get global config file name.""" - return '%s/%s' % ( - self.config_dir_, self.global_config_filename_) - - def _config_format(self): - """Get config file format.""" - return self.config_file_format_ - - @classmethod - def _config_format_python(cls, config_format): - """Check if config file is stored as python formatted.""" - if config_format == 'python': - return True - return False - - @classmethod - def _config_format_json(cls, config_format): - """Check if config file is stored as json formatted.""" - if config_format == 'json': - return True - return False - - @classmethod - def _read_config_from_file(cls, filename, config_format): - """read config from file.""" - config_globals = {} - config_locals = {} - content = '' - logging.debug('read config from %s and format is %s', - filename, config_format) - try: - with open(filename) as file_handler: - content = file_handler.read() - except Exception as error: - logging.error('failed to read file %s', filename) - logging.exception(error) - return {} - - if cls._config_format_python(config_format): - try: - exec(content, config_globals, config_locals) - except Exception as error: - logging.error('failed to exec %s', content) - logging.exception(error) - return {} - - elif cls._config_format_json(config_format): - try: - config_locals = json.loads(content) - except Exception as error: - logging.error('failed to load json data %s', content) - logging.exception(error) - return {} - - return config_locals - - def get_global_config(self): - """read global config from file.""" - return self._read_config_from_file( - self._global_config_filename(), - self._config_format()) - - -config_provider.register_provider(FileProvider) diff --git a/compass/config_management/providers/plugins/mix_config_provider.py b/compass/config_management/providers/plugins/mix_config_provider.py deleted file mode 100644 index e86f37b8..00000000 --- a/compass/config_management/providers/plugins/mix_config_provider.py +++ /dev/null @@ -1,111 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Mix provider which read config from different other providers. - - .. moduleauthor:: Xiaodong Wang -""" -from compass.config_management.providers import config_provider -from compass.utils import setting_wrapper as setting - - -class MixProvider(config_provider.ConfigProvider): - """mix provider which read config from different other providers.""" - NAME = 'mix' - - def __init__(self): - self.global_provider_ = config_provider.get_provider_by_name( - setting.GLOBAL_CONFIG_PROVIDER) - self.cluster_provider_ = config_provider.get_provider_by_name( - setting.CLUSTER_CONFIG_PROVIDER) - self.host_provider_ = config_provider.get_provider_by_name( - setting.HOST_CONFIG_PROVIDER) - - def get_global_config(self): - """get global config.""" - return self.global_provider_.get_global_config() - - def get_cluster_config(self, clusterid): - """get cluster config.""" - return self.cluster_provider_.get_cluster_config(clusterid) - - def get_host_config(self, hostid): - """get host config.""" - return self.host_provider_.get_host_config(hostid) - - def update_global_config(self, config): - """update global config.""" - self.global_provider_.update_global_config(config) - - def update_cluster_config(self, clusterid, config): - """update cluster config.""" - self.cluster_provider_.update_cluster_config( - clusterid, config) - - def update_host_config(self, hostid, config): - """update host config.""" - self.host_provider_.update_host_config(hostid, config) - - def update_adapters(self, adapters, roles_per_target_system): - """update adapters.""" - self.host_provider_.update_adapters( - adapters, roles_per_target_system) - - def update_switch_filters(self, switch_filters): - """update switch filters.""" - self.host_provider_.update_switch_filters(switch_filters) - - def clean_host_config(self, hostid): - """clean host config.""" - self.host_provider_.clean_host_config(hostid) - - def reinstall_host(self, hostid): - """reinstall host config.""" - self.host_provider_.reinstall_host(hostid) - - def reinstall_cluster(self, clusterid): - """reinstall cluster.""" - self.host_provider_.reinstall_cluster(clusterid) - - def clean_host_installing_progress(self, hostid): - """clean host installing progress.""" - self.host_provider_.clean_host_installing_progress(hostid) - - def clean_cluster_installing_progress(self, clusterid): - """clean cluster installing progress.""" - self.host_provider_.clean_cluster_installing_progress(clusterid) - - def clean_cluster_config(self, clusterid): - """clean cluster config.""" - self.host_provider_.clean_cluster_config(clusterid) - - def get_cluster_hosts(self, clusterid): - """get cluster hosts.""" - return self.host_provider_.get_cluster_hosts(clusterid) - - def get_clusters(self): - """get clusters.""" - return self.host_provider_.get_clusters() - - def get_switch_and_machines(self): - """get switch and machines.""" - return self.host_provider_.get_switch_and_machines() - - def update_switch_and_machines(self, switches, switch_machines): - """update siwtch and machines.""" - self.host_provider_.update_switch_and_machines( - switches, switch_machines) - - -config_provider.register_provider(MixProvider) diff --git a/compass/config_management/utils/config_filter.py b/compass/config_management/utils/config_filter.py deleted file mode 100644 index 922ac36f..00000000 --- a/compass/config_management/utils/config_filter.py +++ /dev/null @@ -1,154 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module to filter configuration when upddating. - - .. moduleauthor:: Xiaodong Wang -""" -import logging - -from compass.config_management.utils import config_reference - - -class AllowRule(object): - """class to define allow rule.""" - - def __init__(self, check=None): - self.check_ = check - - def allow(self, key, ref): - """Check if the ref is OK to add to filtered config.""" - if not self.check_: - return True - else: - return self.check_(key, ref) - - -class DenyRule(object): - def __init__(self, check=None): - self.check_ = check - - def deny(self, key, ref): - """Check if the ref is OK to del from filtered config.""" - if not self.check_: - return True - else: - return self.check_(key, ref) - - -class ConfigFilter(object): - """config filter based on allows and denies rules.""" - - def __init__(self, allows={'*': AllowRule()}, denies={}): - """Constructor - - :param allows: dict of glob path and allow rule to copy to the - filtered configuration. - :type allows: dict of str to AllowRule - :param denies: dict of glob path and deny rule to remove from - the filtered configuration. - :type denies: dict of str to DenyRule - """ - self.allows_ = allows - self.denies_ = denies - self._is_valid() - - def __repr__(self): - return '%s[allows=%s,denies=%s]' % ( - self.__class__.__name__, self.allows_, self.denies_) - - def _is_allows_valid(self): - """Check if allows are valid.""" - if not isinstance(self.allows_, dict): - raise TypeError( - 'allows type is %s but expected type is dict: %s' % ( - type(self.allows_), self.allows_)) - - for allow_key, allow_rule in self.allows_.items(): - if not isinstance(allow_key, basestring): - raise TypeError( - 'allow_key %s type is %s but expected type ' - 'is str or unicode' % (allow_key, type(allow_rule))) - - if not isinstance(allow_rule, AllowRule): - raise TypeError( - 'allows[%s] %s type is %s but expected type ' - 'is AllowRule' % ( - allow_key, allow_rule, type(allow_rule))) - - def _is_denies_valid(self): - """Check if denies are valid.""" - if not isinstance(self.denies_, dict): - raise TypeError( - 'denies type is %s but expected type is dict: %s' % ( - type(self.denies_), self.denies_)) - - for deny_key, deny_rule in self.denies_.items(): - if not isinstance(deny_key, basestring): - raise TypeError( - 'deny_key %s type is %s but expected type ' - 'is str or unicode: %s' % ( - deny_key, deny_rule, type(deny_rule))) - - if not isinstance(deny_rule, DenyRule): - raise TypeError( - 'denies[%s] %s type is %s but expected type ' - 'is DenyRule' % (deny_key, deny_rule, type(deny_rule))) - - def _is_valid(self): - """Check if config filter is valid.""" - self._is_allows_valid() - self._is_denies_valid() - - def filter(self, config): - """Filter config - - :param config: configuration to filter. - :type config: dict - - :returns: filtered configuration as dict - """ - ref = config_reference.ConfigReference(config) - filtered_ref = config_reference.ConfigReference({}) - self._filter_allows(ref, filtered_ref) - self._filter_denies(filtered_ref) - filtered_config = config_reference.get_clean_config( - filtered_ref.config) - logging.debug('filter config %s to %s', config, filtered_config) - return filtered_config - - def _filter_allows(self, ref, filtered_ref): - """copy ref config with the allows to filtered ref.""" - for allow_key, allow_rule in self.allows_.items(): - logging.debug('filter by allow rule %s', allow_key) - for sub_key, sub_ref in ref.ref_items(allow_key): - if allow_rule.allow(sub_key, sub_ref): - logging.debug('%s is added to filtered config', sub_key) - filtered_ref.setdefault(sub_key).update(sub_ref.config) - else: - logging.debug('%s is ignored to add to filtered config', - sub_key) - - def _filter_denies(self, filtered_ref): - """remove config from filter_ref by denies.""" - for deny_key, deny_rule in self.denies_.items(): - logging.debug('filter by deny rule %s', deny_key) - for ref_key, ref in filtered_ref.ref_items(deny_key): - if deny_rule.deny(ref_key, ref): - logging.debug('%s is removed from filtered config', - ref_key) - del filtered_ref[ref_key] - else: - logging.debug('%s is ignored to del from filtered config', - ref_key) diff --git a/compass/config_management/utils/config_manager.py b/compass/config_management/utils/config_manager.py deleted file mode 100644 index eff3de12..00000000 --- a/compass/config_management/utils/config_manager.py +++ /dev/null @@ -1,687 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -"""Module to get configs from provider and isntallers and update - them to provider and installers. - - .. moduleauthor:: Xiaodong wang ,xiaodongwang@huawei.com> -""" -import functools -import logging - -from compass.config_management import installers -from compass.config_management import providers -from compass.config_management.utils.config_merger import ConfigMapping -from compass.config_management.utils.config_merger import ConfigMerger -from compass.config_management.utils import config_merger_callbacks -from compass.config_management.utils.config_reference import ConfigReference -from compass.utils import setting_wrapper as setting -from compass.utils import util - - -CLUSTER_HOST_MERGER = ConfigMerger( - mappings=[ - ConfigMapping( - path_list=['/networking/interfaces/*'], - from_upper_keys={'ip_start': 'ip_start', 'ip_end': 'ip_end'}, - to_key='ip', - value=config_merger_callbacks.assign_ips - ), - ConfigMapping( - path_list=['/role_assign_policy'], - from_upper_keys={ - 'policy_by_host_numbers': 'policy_by_host_numbers', - 'default': 'default'}, - to_key='/roles', - value=config_merger_callbacks.assign_roles_by_host_numbers, - override=True - ), - ConfigMapping( - path_list=['/config_mapping'] - ), - ConfigMapping( - path_list=['/role_mapping'] - ), - ConfigMapping( - path_list=['/dashboard_roles'], - from_lower_keys={'lower_values': '/roles'}, - to_key='/has_dashboard_roles', - value=config_merger_callbacks.has_intersection - ), - ConfigMapping( - path_list=['/dashboard_roles'], - from_lower_keys={'lower_values': '/roles'}, - to_key='/dashboard_roles', - value=config_merger_callbacks.get_intersection - ), - ConfigMapping( - path_list=['/haproxy_roles'], - from_lower_keys={'lower_values': '/roles'}, - to_key='/haproxy_roles', - value=config_merger_callbacks.get_intersection - ), - ConfigMapping( - path_list=[ - '/networking/global/nameservers', - '/networking/global/gateway', - '/networking/global/proxy', - '/networking/global/ntp_server', - '/networking/global/ha_vip', - '/networking/interfaces/*/netmask', - '/networking/interfaces/*/nic', - '/networking/interfaces/*/promisc', - '/security/*', - '/partition', - ] - ), - ConfigMapping( - path_list=['/networking/interfaces/*'], - from_upper_keys={'pattern': 'dns_pattern', - 'clusterid': '/clusterid', - 'search_path': '/networking/global/search_path'}, - from_lower_keys={'hostname': '/hostname'}, - to_key='dns_alias', - value=functools.partial( - config_merger_callbacks.assign_from_pattern, - upper_keys=['search_path', 'clusterid'], - lower_keys=['hostname']) - ), - ConfigMapping( - path_list=['/networking/global'], - from_upper_keys={'default': 'default_no_proxy', - 'clusterid': '/clusterid', - 'noproxy_pattern': 'noproxy_pattern', - 'ha_vip': 'ha_vip'}, - from_lower_keys={'hostnames': '/hostname', - 'ips': '/networking/interfaces/management/ip'}, - to_key='ignore_proxy', - value=config_merger_callbacks.assign_noproxy - ), - ConfigMapping( - path_list=['/networking/global'], - from_upper_keys={'pattern': 'search_path_pattern', - 'search_path': 'search_path', - 'clusterid': '/clusterid'}, - to_key='search_path', - value=functools.partial( - config_merger_callbacks.assign_from_pattern, - upper_keys=['search_path', 'clusterid'] - ) - ), - ConfigMapping( - path_list=['/networking/global/ha_vip'], - to_key='/haproxy/router_id', - value=functools.partial( - config_merger_callbacks.assign_by_order, - orders=config_merger_callbacks.generate_order(0, -1) - ), - from_upper_keys={'prefix': '/haproxy/router_id_prefix'}, - from_lower_keys={'conditions': '/haproxy_roles'}, - ), - ConfigMapping( - path_list=['/networking/global/ha_vip'], - to_key='/haproxy/priority', - value=functools.partial( - config_merger_callbacks.assign_by_order, - orders=config_merger_callbacks.generate_order(0, -1), - reverse=True - ), - from_upper_keys={'prefix': '/haproxy/default_priority'}, - from_lower_keys={'conditions': '/haproxy_roles'}, - ), - ConfigMapping( - path_list=['/networking/global/ha_vip'], - to_key='/haproxy/state', - value=functools.partial( - config_merger_callbacks.assign_by_order, - prefix='' - ), - from_upper_keys={ - 'orders': '/haproxy/states_to_assign', - 'default_order': '/haproxy/default_state', - }, - from_lower_keys={'conditions': '/haproxy_roles'} - )]) - - -class ConfigManager(object): - """Class to get global/clsuter/host configs. - - .. note:: - The class is used to get global/clsuter/host configs - from provider, os installer, package installer, process them, - and update them to provider, os installer, package installer. - """ - - def __init__(self): - self.config_provider_ = providers.get_provider() - logging.debug('got config provider: %s', self.config_provider_) - self.package_installer_ = installers.get_package_installer() - logging.debug('got package installer: %s', self.package_installer_) - self.os_installer_ = installers.get_os_installer( - package_installer=self.package_installer_) - logging.debug('got os installer: %s', self.os_installer_) - - def get_adapters(self): - """Get adapter information from os installer and package installer. - - :returns: list of adapter information. - - .. note:: - For each adapter, the information is as - {'name': '...', 'os': '...', 'target_system': '...'} - """ - oses = self.os_installer_.get_oses() - logging.debug('got oses %s from %s', oses, self.os_installer_) - target_systems_per_os = self.package_installer_.get_target_systems( - oses) - logging.debug('got target_systems per os from %s: %s', - self.package_installer_, target_systems_per_os) - adapters = [] - for os_version, target_systems in target_systems_per_os.items(): - for target_system in target_systems: - adapters.append({ - 'name': '%s/%s' % (os_version, target_system), - 'os': os_version, - 'target_system': target_system}) - - logging.debug('got adapters: %s', adapters) - return adapters - - def get_roles(self, target_system): - """Get all roles of the target system from package installer. - - :param target_system: the target distributed system to deploy. - :type target_system: str - - :returns: list of role information. - - .. note:: - For each role, the information is as: - {'name': '...', 'description': '...', 'target_system': '...'} - """ - roles = self.package_installer_.get_roles(target_system) - logging.debug('got target system %s roles %s from %s', - target_system, roles, self.package_installer_) - return [ - { - 'name': role, - 'description': description, - 'target_system': target_system - } for role, description in roles.items() - ] - - def update_adapters_from_installers(self): - """update adapters from installers.""" - adapters = self.get_adapters() - target_systems = set() - roles_per_target_system = {} - for adapter in adapters: - target_systems.add(adapter['target_system']) - - for target_system in target_systems: - roles_per_target_system[target_system] = self.get_roles( - target_system) - - logging.debug('update adapters %s and ' - 'roles per target system %s to %s', - adapters, roles_per_target_system, - self.config_provider_) - self.config_provider_.update_adapters( - adapters, roles_per_target_system) - - def update_switch_filters(self): - """Update switch filter from setting.SWITCHES.""" - if not hasattr(setting, 'SWITCHES'): - logging.info('no switch configs to set') - return - - switch_filters = util.get_switch_filters(setting.SWITCHES) - logging.debug('update switch filters %s to %s', - switch_filters, self.config_provider_) - self.config_provider_.update_switch_filters(switch_filters) - - def get_switch_and_machines(self): - """Get switches and machines.""" - switches, machines_per_switch = ( - self.config_provider_.get_switch_and_machines()) - logging.debug('got switches %s from %s', - switches, self.config_provider_) - logging.debug('got machines per switch %s from %s', - machines_per_switch, self.config_provider_) - return (switches, machines_per_switch) - - def update_switch_and_machines( - self, switches, switch_machines - ): - """Update switches and machines.""" - logging.debug('update switches %s to %s', - switches, self.config_provider_) - logging.debug('update switch machines %s to %s', - switch_machines, self.config_provider_) - self.config_provider_.update_switch_and_machines( - switches, switch_machines) - - def get_global_config(self, os_version, target_system): - """Get global config.""" - config = self.config_provider_.get_global_config() - logging.debug('got global provider config from %s: %s', - self.config_provider_, config) - - os_config = self.os_installer_.get_global_config( - os_version=os_version, target_system=target_system) - logging.debug('got global os config from %s: %s', - self.os_installer_, os_config) - package_config = self.package_installer_.get_global_config( - os_version=os_version, - target_system=target_system) - logging.debug('got global package config from %s: %s', - self.package_installer_, package_config) - - util.merge_dict(config, os_config) - util.merge_dict(config, package_config) - return config - - def update_global_config(self, config, os_version, target_system): - """update global config.""" - logging.debug('update global config: %s', config) - logging.debug('update global config to %s', - self.config_provider_) - self.config_provider_.update_global_config(config) - logging.debug('update global config to %s', - self.os_installer_) - self.os_installer_.update_global_config( - config, os_version=os_version, target_system=target_system) - logging.debug('update global config to %s', - self.package_installer_) - self.package_installer_.update_global_config( - config, os_version=os_version, target_system=target_system) - - def get_cluster_config(self, clusterid, os_version, target_system): - """get cluster config.""" - config = self.config_provider_.get_cluster_config(clusterid) - logging.debug('got cluster %s config from %s: %s', - clusterid, self.config_provider_, config) - - os_config = self.os_installer_.get_cluster_config( - clusterid, os_version=os_version, - target_system=target_system) - logging.debug('got cluster %s config from %s: %s', - clusterid, self.os_installer_, os_config) - - package_config = self.package_installer_.get_cluster_config( - clusterid, os_version=os_version, - target_system=target_system) - logging.debug('got cluster %s config from %s: %s', - clusterid, self.package_installer_, package_config) - - util.merge_dict(config, os_config) - util.merge_dict(config, package_config) - return config - - def update_cluster_config(self, clusterid, config, - os_version, target_system): - """update cluster config.""" - logging.debug('update cluster %s config: %s', clusterid, config) - logging.debug('update cluster %s config to %s', - clusterid, self.config_provider_) - self.config_provider_.update_cluster_config(clusterid, config) - logging.debug('update cluster %s config to %s', - clusterid, self.os_installer_) - self.os_installer_.update_cluster_config( - clusterid, config, os_version=os_version, - target_system=target_system) - logging.debug('update cluster %s config to %s', - clusterid, self.package_installer_) - self.package_installer_.update_cluster_config( - clusterid, config, os_version=os_version, - target_system=target_system) - - def get_host_config(self, hostid, os_version, target_system): - """get host config.""" - config = self.config_provider_.get_host_config(hostid) - logging.debug('got host %s config from %s: %s', - hostid, self.config_provider_, config) - - os_config = self.os_installer_.get_host_config( - hostid, os_version=os_version, - target_system=target_system) - logging.debug('got host %s config from %s: %s', - hostid, self.os_installer_, os_config) - - package_config = self.package_installer_.get_host_config( - hostid, os_version=os_version, - target_system=target_system) - logging.debug('got host %s config from %s: %s', - hostid, self.package_installer_, package_config) - - util.merge_dict(config, os_config) - util.merge_dict(config, package_config) - return config - - def get_host_configs(self, hostids, os_version, target_system): - """get hosts' configs.""" - host_configs = {} - for hostid in hostids: - host_configs[hostid] = self.get_host_config( - hostid, os_version, target_system) - return host_configs - - def clean_host_config(self, hostid, os_version, target_system): - """clean host config.""" - config = self.config_provider_.get_host_config(hostid) - logging.debug('got host %s config from %s: %s', - hostid, self.config_provider_, config) - logging.debug('clean host %s config in %s', - hostid, self.config_provider_) - self.config_provider_.clean_host_config(hostid) - logging.debug('clean host %s config in %s', - hostid, self.os_installer_) - self.os_installer_.clean_host_config( - hostid, config, os_version=os_version, - target_system=target_system) - logging.debug('clean host %s config in %s', - hostid, self.package_installer_) - self.package_installer_.clean_host_config( - hostid, config, os_version=os_version, - target_system=target_system) - - def clean_host_configs(self, hostids, os_version, target_system): - """clean hosts' configs.""" - for hostid in hostids: - self.clean_host_config(hostid, os_version, target_system) - - def reinstall_host(self, hostid, os_version, target_system): - """reinstall host.""" - config = self.config_provider_.get_host_config(hostid) - logging.debug('got host %s config from %s: %s', - hostid, self.config_provider_, config) - logging.debug('reinstall host %s in %s', - hostid, self.config_provider_) - self.config_provider_.reinstall_host(hostid) - logging.debug('reinstall host %s in %s', - hostid, self.os_installer_) - self.os_installer_.reinstall_host( - hostid, config, os_version=os_version, - target_system=target_system) - logging.debug('reinstall host %s in %s', - hostid, self.package_installer_) - self.package_installer_.reinstall_host( - hostid, config, os_version=os_version, - target_system=target_system) - - def reinstall_cluster(self, clusterid, os_version, target_system): - """reinstall cluster.""" - config = self.config_provider_.get_cluster_config(clusterid) - logging.debug('got cluster %s config from %s: %s', - clusterid, self.config_provider_, config) - logging.debug('reinstall cluster %s in %s', - clusterid, self.config_provider_) - self.config_provider_.reinstall_cluster(clusterid) - logging.debug('reinstall cluster %s in %s', - clusterid, self.os_installer_) - self.os_installer_.reinstall_cluster( - clusterid, config, os_version=os_version, - target_system=target_system) - logging.debug('reinstall cluster %s in %s', - clusterid, self.package_installer_) - self.package_installer_.reinstall_cluster( - clusterid, config, os_version=os_version, - target_system=target_system) - - def reinstall_hosts(self, hostids, os_version, target_system): - """reinstall hosts.""" - for hostid in hostids: - self.reinstall_host(hostid, os_version, target_system) - - def clean_host_installing_progress(self, hostid, - os_version, target_system): - """clean host installing progress.""" - config = self.config_provider_.get_host_config(hostid) - logging.debug('got host %s config from %s: %s', - hostid, self.config_provider_, config) - logging.debug('clean host %s installing progress in %s', - hostid, self.config_provider_) - self.config_provider_.clean_host_installing_progress(hostid) - logging.debug('clean host %s installing progress in %s', - hostid, self.os_installer_) - self.os_installer_.clean_host_installing_progress( - hostid, config, os_version=os_version, - target_system=target_system) - logging.debug('clean host %s installing progress in %s', - hostid, self.package_installer_) - self.package_installer_.clean_host_installing_progress( - hostid, config, os_version=os_version, - target_system=target_system) - - def clean_hosts_installing_progress(self, hostids, - os_version, target_system): - """clean hosts installing progress.""" - for hostid in hostids: - self.clean_host_installing_progress( - hostid, os_version, target_system) - - def clean_cluster_installing_progress(self, clusterid, - os_version, target_system): - """clean cluster installing progress.""" - config = self.config_provider_.get_cluster_config(clusterid) - logging.debug('got host %s config from %s: %s', - clusterid, self.config_provider_, config) - logging.debug('clean cluster %s installing progress in %s', - clusterid, self.config_provider_) - self.config_provider_.clean_cluster_installing_progress(clusterid) - logging.debug('clean cluster %s installing progress in %s', - clusterid, self.os_installer_) - self.os_installer_.clean_cluster_installing_progress( - clusterid, config, os_version=os_version, - target_system=target_system) - logging.debug('clean cluster %s installing progress in %s', - clusterid, self.package_installer_) - self.package_installer_.clean_cluster_installing_progress( - clusterid, config, os_version=os_version, - target_system=target_system) - - def clean_cluster_config(self, clusterid, - os_version, target_system): - """clean cluster config.""" - config = self.config_provider_.get_cluster_config(clusterid) - logging.debug('got cluster %s config from %s: %s', - clusterid, self.config_provider_, config) - - logging.debug('clean cluster %s config in %s', - clusterid, self.config_provider_) - self.config_provider_.clean_cluster_config(clusterid) - logging.debug('clean cluster %s config in %s', - clusterid, self.os_installer_) - self.os_installer_.clean_cluster_config( - clusterid, config, os_version=os_version, - target_system=target_system) - logging.debug('clean cluster %s config in %s', - clusterid, self.package_installer_) - self.package_installer_.clean_cluster_config( - clusterid, config, os_version=os_version, - target_system=target_system) - - def update_host_config(self, hostid, config, - os_version, target_system): - """update host config.""" - logging.debug('update host %s config: %s', hostid, config) - logging.debug('update host %s config to %s', - hostid, self.config_provider_) - self.config_provider_.update_host_config(hostid, config) - logging.debug('update host %s config to %s', - hostid, self.os_installer_) - self.os_installer_.update_host_config( - hostid, config, os_version=os_version, - target_system=target_system) - logging.debug('update host %s config to %s', - hostid, self.package_installer_) - self.package_installer_.update_host_config( - hostid, config, os_version=os_version, - target_system=target_system) - - def update_host_configs(self, host_configs, os_version, target_system): - """update host configs.""" - for hostid, host_config in host_configs.items(): - self.update_host_config( - hostid, host_config, os_version, target_system) - - def get_cluster_hosts(self, clusterid): - """get cluster hosts.""" - hostids = self.config_provider_.get_cluster_hosts(clusterid) - logging.debug('got hosts of cluster %s from %s: %s', - clusterid, self.config_provider_, hostids) - return hostids - - def get_clusters(self): - """get clusters.""" - clusters = self.config_provider_.get_clusters() - logging.debug('got clusters from %s: %s', - self.config_provider_, clusters) - return clusters - - def filter_cluster_and_hosts(self, cluster_hosts, - os_versions, target_systems, - cluster_properties_match, - cluster_properties_name, - host_properties_match, - host_properties_name): - """get filtered cluster and hosts configs.""" - logging.debug('filter cluster_hosts: %s', cluster_hosts) - clusters_properties = [] - cluster_hosts_properties = {} - for clusterid, hostids in cluster_hosts.items(): - cluster_config = self.get_cluster_config( - clusterid, os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - cluster_ref = ConfigReference(cluster_config) - if cluster_ref.match(cluster_properties_match): - clusters_properties.append( - cluster_ref.filter(cluster_properties_name)) - - host_configs = self.get_host_configs( - hostids, os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - cluster_hosts_properties[clusterid] = [] - for _, host_config in host_configs.items(): - host_ref = ConfigReference(host_config) - if host_ref.match(host_properties_match): - cluster_hosts_properties[clusterid].append( - host_ref.filter(host_properties_name)) - - logging.debug('got clsuter properties: %s', - clusters_properties) - logging.debug('got cluster hosts properties: %s', - cluster_hosts_properties) - return (clusters_properties, cluster_hosts_properties) - - def reinstall_cluster_and_hosts(self, - cluster_hosts, - os_versions, - target_systems): - """reinstall clusters and hosts of each cluster.""" - logging.debug('reinstall cluster_hosts: %s', cluster_hosts) - for clusterid, hostids in cluster_hosts.items(): - self.reinstall_hosts( - hostids, - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - self.reinstall_cluster(clusterid, - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - - def clean_cluster_and_hosts(self, cluster_hosts, - os_versions, target_systems): - """clean clusters and hosts of each cluster.""" - logging.debug('clean cluster_hosts: %s', cluster_hosts) - for clusterid, hostids in cluster_hosts.items(): - all_hostids = self.get_cluster_hosts(clusterid) - self.clean_host_configs(hostids, - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - if set(all_hostids) == set(hostids): - self.clean_cluster_config( - clusterid, - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - else: - self.clean_cluster_installing_progress( - clusterid, os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - - def clean_cluster_and_hosts_installing_progress( - self, cluster_hosts, os_versions, target_systems - ): - """Clean clusters and hosts of each cluster intalling progress.""" - logging.debug('clean cluster_hosts installing progress: %s', - cluster_hosts) - for clusterid, hostids in cluster_hosts.items(): - self.clean_hosts_installing_progress( - hostids, os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - self.clean_cluster_installing_progress( - clusterid, os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - - def install_cluster_and_hosts(self, - cluster_hosts, - os_versions, - target_systems): - """update clusters and hosts of each cluster configs.""" - logging.debug('update cluster_hosts: %s', cluster_hosts) - for clusterid, hostids in cluster_hosts.items(): - global_config = self.get_global_config( - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - self.update_global_config(global_config, - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - cluster_config = self.get_cluster_config( - clusterid, os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - util.merge_dict(cluster_config, global_config, False) - self.update_cluster_config( - clusterid, cluster_config, - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - - all_hostids = self.get_cluster_hosts(clusterid) - host_configs = self.get_host_configs( - all_hostids, os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - CLUSTER_HOST_MERGER.merge(cluster_config, host_configs) - update_host_configs = dict( - [(hostid, host_config) - for hostid, host_config in host_configs.items() - if hostid in hostids]) - self.update_host_configs( - update_host_configs, - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - self.reinstall_hosts( - update_host_configs.keys(), - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - self.reinstall_cluster(clusterid, - os_version=os_versions[clusterid], - target_system=target_systems[clusterid]) - - def sync(self): - """sync os installer and package installer.""" - logging.info('config manager sync') - logging.debug('sync %s', self.config_provider_) - self.config_provider_.sync() - logging.debug('sync %s', self.os_installer_) - self.os_installer_.sync() - logging.debug('sync %s', self.package_installer_) - self.package_installer_.sync() diff --git a/compass/config_management/utils/config_merger.py b/compass/config_management/utils/config_merger.py deleted file mode 100644 index 92764394..00000000 --- a/compass/config_management/utils/config_merger.py +++ /dev/null @@ -1,351 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module to set the hosts configs from cluster config. - - .. moduleauthor:: Xiaodong Wang -""" -import copy -import logging - -from compass.config_management.utils import config_reference -from compass.utils import util - - -class ConfigMapping(object): - """Class to merge cluster config ref to host config ref by path list.""" - - def __init__(self, path_list, from_upper_keys={}, - from_lower_keys={}, to_key='.', - override=False, override_conditions={}, - value=None): - """Constructor - - :param path_list: list of path to merge from cluster ref to host refs - :type path_list: list of str - :param from_upper_keys: kwargs from cluster ref for value callback. - :type from_upper_keys: dict of kwargs name to path in cluster ref - :param from_lower_keys: kwargs from host refs for value callback. - :type from_lower_keys: dict of kwargs name to path in host refs. - :param to_key: the path in host refs to be merged to. - :type to_key: str - :param override: if the path in host ref can be overridden. - :type override: callback or bool - :param override_conditions: kwargs from host ref for override callback - :type override_conditions: dict of kwargs name to path in host ref - :param value: the value to be set in host refs. - :type value: callback or any type - """ - self.path_list_ = path_list - self.from_upper_keys_ = from_upper_keys - self.from_lower_keys_ = from_lower_keys - self.to_key_ = to_key - self.override_ = override - self.override_conditions_ = override_conditions - self.value_ = value - self._is_valid() - - def __repr__(self): - return ( - '%s[path_list=%s,from_upper_keys=%s,' - 'from_lower_keys=%s,to_key=%s,override=%s,' - 'override_conditions=%s,value=%s]' - ) % ( - self.__class__.__name__, - self.path_list_, self.from_upper_keys_, - self.from_lower_keys_, self.to_key_, - self.override_, self.override_conditions_, - self.value_) - - def _is_valid_path_list(self): - """Check path_list are valid.""" - if not isinstance(self.path_list_, list): - raise TypeError( - 'path_list %s type is %s while expected type is list' % ( - self.path_list_, type(self.path_list_))) - - for i, path in enumerate(self.path_list_): - if not isinstance(path, basestring): - raise TypeError( - 'path_list[%d] type is %s while ' - 'expected type is str or unicode: %s' % ( - i, type(path), path)) - - def _is_valid_from_upper_keys(self): - """Check from_upper_keys are valid.""" - if not isinstance(self.from_upper_keys_, dict): - raise TypeError( - 'from_upper_keys type is %s while expected is dict', - type(self.from_upper_keys_)) - - for mapping_key, from_upper_key in self.from_upper_keys_.items(): - if not isinstance(mapping_key, basestring): - raise TypeError( - 'key %s in from_upper_keys type is %s' - 'while expected type is str or unicode' % ( - mapping_key, type(mapping_key))) - - if not isinstance(from_upper_key, basestring): - raise TypeError( - 'from_upper_keys[%s] type is %s' - 'while expected type is str or unicode: %s' % ( - mapping_key, type(from_upper_key), from_upper_key)) - - if '*' in from_upper_key: - raise KeyError( - 'from_upper_keys[%s] %s contains *' % ( - mapping_key, from_upper_key)) - - def _is_valid_from_lower_keys(self): - """Check from_lower_keys are valid.""" - if not isinstance(self.from_lower_keys_, dict): - raise TypeError( - 'from_lower_keys type is %s while expected type is dict', - type(self.from_lower_keys_)) - - for mapping_key, from_lower_key in self.from_lower_keys_.items(): - if not isinstance(mapping_key, basestring): - raise TypeError( - 'key %s in from_lower_keys type is %s' - 'while expected type is str or unicode: %s' % ( - mapping_key, type(mapping_key))) - - if not isinstance(from_lower_key, basestring): - raise TypeError( - 'from_lower_keys[%s] type' - 'is %s while expected type is str or unicode: %s' % ( - mapping_key, type(from_lower_key), from_lower_key)) - - if '*' in from_lower_key: - raise KeyError( - 'from_lower_keys[%s] %s contains *' % ( - mapping_key, from_lower_key)) - - def _is_valid_from_keys(self): - """Check from keys are valid.""" - self._is_valid_from_upper_keys() - self._is_valid_from_lower_keys() - upper_keys = set(self.from_upper_keys_.keys()) - lower_keys = set(self.from_lower_keys_.keys()) - intersection = upper_keys.intersection(lower_keys) - if intersection: - raise KeyError( - 'there is intersection between from_upper_keys %s' - ' and from_lower_keys %s: %s' % ( - upper_keys, lower_keys, intersection)) - - def _is_valid_to_key(self): - """Check to_key is valid.""" - if not isinstance(self.to_key_, basestring): - raise TypeError( - 'to_key %s type is %s ' - 'while expected type is [str, unicode]' % ( - self.to_key_, type(self.to_key_))) - - if '*' in self.to_key_: - raise KeyError('to_key %s contains *' % self.to_key_) - - def _is_valid_override_conditions(self): - """Check override conditions are valid.""" - if not isinstance(self.override_conditions_, dict): - raise TypeError( - 'override_conditions type is %s while expected type is dict', - type(self.override_conditions_)) - override_items = self.override_conditions_.items() - for mapping_key, override_condition in override_items: - if not isinstance(mapping_key, basestring): - raise TypeError( - 'overrid_conditions key %s type is %s ' - 'while expected type is [str, unicode]' % ( - mapping_key, type(mapping_key))) - - if not isinstance(override_condition, basestring): - raise TypeError( - 'override_conditions[%s] type is %s ' - 'while expected type is [str, unicode]: %s' % ( - mapping_key, type(override_condition), - override_condition)) - - if '*' in override_condition: - raise KeyError( - 'override_conditions[%s] %s contains *' % ( - mapping_key, override_condition)) - - def _is_valid(self): - """Check ConfigMapping instance is valid.""" - self._is_valid_path_list() - self._is_valid_from_keys() - self._is_valid_to_key() - self._is_valid_override_conditions() - - def _get_upper_sub_refs(self, upper_ref): - """get sub_refs from upper_ref.""" - upper_refs = [] - for path in self.path_list_: - upper_refs.extend(upper_ref.ref_items(path)) - - return upper_refs - - def _get_mapping_from_upper_keys(self, ref_key, sub_ref): - """Get upper config mapping from from_upper_keys.""" - sub_configs = {} - for mapping_key, from_upper_key in self.from_upper_keys_.items(): - if from_upper_key in sub_ref: - sub_configs[mapping_key] = sub_ref[from_upper_key] - else: - logging.info('%s ignore from_upper_key %s in %s', - self, from_upper_key, ref_key) - return sub_configs - - def _get_mapping_from_lower_keys(self, ref_key, lower_sub_refs): - """Get lower config mapping from from_lower_keys.""" - sub_configs = {} - for mapping_key, from_lower_key in self.from_lower_keys_.items(): - sub_configs[mapping_key] = {} - - for lower_key, lower_sub_ref in lower_sub_refs.items(): - for mapping_key, from_lower_key in self.from_lower_keys_.items(): - if from_lower_key in lower_sub_ref: - sub_configs[mapping_key][lower_key] = ( - lower_sub_ref[from_lower_key]) - else: - logging.error( - '%s ignore from_lower_key %s in %s lower_key %s', - self, from_lower_key, ref_key, lower_key) - - return sub_configs - - def _get_values(self, ref_key, sub_ref, lower_sub_refs, sub_configs): - """Get values to set to lower configs.""" - if self.value_ is None: - lower_values = {} - for lower_key in lower_sub_refs.keys(): - lower_values[lower_key] = copy.deepcopy(sub_ref.config) - - return lower_values - - if not callable(self.value_): - lower_values = {} - for lower_key in lower_sub_refs.keys(): - lower_values[lower_key] = copy.deepcopy(self.value_) - - return lower_values - - return self.value_(sub_ref, ref_key, lower_sub_refs, self.to_key_, - **sub_configs) - - def _get_override(self, ref_key, sub_ref, to_key, lower_to_ref): - """Get override from ref_key, ref from ref_key.""" - if not callable(self.override_): - return bool(self.override_) - - override_condition_configs = {} - override_items = self.override_conditions_.items() - for mapping_key, override_condition in override_items: - if override_condition in sub_ref: - override_condition_configs[mapping_key] = ( - sub_ref[override_condition]) - else: - logging.info('%s no override condition %s in %s', - self, override_condition, ref_key) - - return self.override_(sub_ref, ref_key, lower_to_ref, to_key, - **override_condition_configs) - - def merge(self, upper_ref, lower_refs): - """merge upper config to lower configs.""" - upper_sub_refs = self._get_upper_sub_refs(upper_ref) - - for ref_key, sub_ref in upper_sub_refs: - sub_configs = self._get_mapping_from_upper_keys(ref_key, sub_ref) - - lower_sub_refs = {} - for lower_key, lower_ref in lower_refs.items(): - lower_sub_refs[lower_key] = lower_ref.setdefault(ref_key) - - lower_sub_configs = self._get_mapping_from_lower_keys( - ref_key, lower_sub_refs) - - util.merge_dict(sub_configs, lower_sub_configs) - - values = self._get_values( - ref_key, sub_ref, lower_sub_refs, sub_configs) - - logging.debug('%s set values %s to %s', - ref_key, self.to_key_, values) - for lower_key, lower_sub_ref in lower_sub_refs.items(): - if lower_key not in values: - logging.error('no key %s in %s', lower_key, values) - continue - - value = values[lower_key] - lower_to_ref = lower_sub_ref.setdefault(self.to_key_) - override = self._get_override( - ref_key, sub_ref, self.to_key_, lower_to_ref) - lower_to_ref.update(value, override) - - -class ConfigMerger(object): - """Class to merge clsuter config to host configs.""" - - def __init__(self, mappings): - """Constructor - - :param mappings: list of :class:`ConfigMapping` instance - """ - self.mappings_ = mappings - self._is_valid() - - def __repr__(self): - return '%s[mappings=%s]' % (self.__class__.__name__, self.mappings_) - - def _is_valid(self): - """Check ConfigMerger instance is valid.""" - if not isinstance(self.mappings_, list): - raise TypeError( - '%s mapping type is %s while expect type is list: %s' % ( - self.__class__.__name__, type(self.mappings_), - self.mappings_)) - - for i, mapping in enumerate(self.mappings_): - if not isinstance(mapping, ConfigMapping): - raise TypeError( - '%s mappings[%s] type is %s ' - 'while expected type is ConfigMapping' % ( - self.__class__.__name__, i, type(mapping))) - - def merge(self, upper_config, lower_configs): - """Merge cluster config to host configs. - - :param upper_config: cluster configuration to merge from. - :type upper_config: dict - :param lower_configs: host configurations to merge to. - :type lower_configs: dict of host id to host config as dict - """ - upper_ref = config_reference.ConfigReference(upper_config) - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - - for mapping in self.mappings_: - logging.debug('apply merging from the rule %s', mapping) - mapping.merge(upper_ref, lower_refs) - - for lower_key, lower_config in lower_configs.items(): - lower_configs[lower_key] = config_reference.get_clean_config( - lower_config) - - logging.debug('merged upper config\n%s\nto lower configs:\n%s', - upper_config, lower_configs) diff --git a/compass/config_management/utils/config_merger_callbacks.py b/compass/config_management/utils/config_merger_callbacks.py deleted file mode 100644 index ace1beac..00000000 --- a/compass/config_management/utils/config_merger_callbacks.py +++ /dev/null @@ -1,607 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""ConfigMerger Callbacks module. - - .. moduleauthor:: Xiaodong Wang -""" -import copy -import itertools -import logging -import netaddr -import re - -from compass.utils import util - - -def _get_role_bundle_mapping(roles, bundles): - """Get role bundles. - """ - bundle_mapping = {} - for role in roles: - bundle_mapping[role] = role - - for bundle in bundles: - bundled_role = None - for role in bundle: - if role not in roles: - continue - while role != bundle_mapping[role]: - role = bundle_mapping[role] - if not bundled_role: - bundled_role = role - else: - bundle_mapping[role] = bundled_role - - role_bundles = {} - for role in roles: - bundled_role = role - while bundled_role != bundle_mapping[bundled_role]: - bundled_role = bundle_mapping[bundled_role] - bundle_mapping[role] = bundled_role - role_bundles.setdefault(bundled_role, set()).add(role) - - logging.debug('bundle_mapping is %s', bundle_mapping) - logging.debug('role_bundles is %s', role_bundles) - return bundle_mapping, role_bundles - - -def _get_bundled_exclusives(exclusives, bundle_mapping): - """Get bundled exclusives.""" - bundled_exclusives = set() - for exclusive in exclusives: - if exclusive not in bundle_mapping: - logging.error( - 'exclusive role %s did not found in roles %s', - exclusive, bundle_mapping.keys()) - continue - bundled_exclusives.add(bundle_mapping[exclusive]) - - logging.debug('bundled exclusives: %s', bundled_exclusives) - return bundled_exclusives - - -def _get_max(lhs, rhs): - """Get max value.""" - if lhs < 0 and rhs < 0: - return min(lhs, rhs) - - if lhs < 0: - return lhs - - if rhs < 0: - return rhs - - return max(lhs, rhs) - - -def _get_min(lhs, rhs): - """Get min value.""" - if lhs < 0: - return max(rhs, 0) - - if rhs < 0: - return max(lhs, 0) - - return min(lhs, rhs) - - -def _dec_max_min(value): - """dec max and min value.""" - if value > 0: - return value - 1 - else: - return value - - -def _get_bundled_max_mins(maxs, mins, default_max, default_min, role_bundles): - """Get max and mins for each bundled role.""" - bundled_maxs = {} - bundled_mins = {} - - for bundled_role, roles in role_bundles.items(): - bundled_min = None - bundled_max = None - for role in roles: - new_max = maxs.get(role, maxs.get('default', default_max)) - new_min = mins.get(role, mins.get('default', default_min)) - new_max = _get_max(new_max, new_min) - if bundled_min is None: - bundled_min = new_min - else: - bundled_min = _get_min(bundled_min, new_min) - - if bundled_max is None: - bundled_max = new_max - else: - bundled_max = _get_min( - bundled_max, _get_max(new_max, bundled_min)) - - if bundled_min is None: - bundled_min = default_min - - if bundled_max is None: - bundled_max = _get_max(default_max, bundled_min) - - bundled_mins[bundled_role] = bundled_min - bundled_maxs[bundled_role] = bundled_max - - logging.debug('bundled_maxs are %s', bundled_maxs) - logging.debug('bundled_mins are %s', bundled_mins) - return bundled_maxs, bundled_mins - - -def _update_assigned_roles(lower_refs, to_key, bundle_mapping, - role_bundles, bundled_maxs, bundled_mins): - """Update bundled maxs/mins and assign roles to each unassigned host.""" - lower_roles = {} - unassigned_hosts = [] - for lower_key, lower_ref in lower_refs.items(): - roles_per_host = lower_ref.get(to_key, []) - roles = set() - bundled_roles = set() - for role in roles_per_host: - if role in bundle_mapping: - bundled_role = bundle_mapping[role] - bundled_roles.add(bundled_role) - roles |= set(role_bundles[bundled_role]) - else: - roles.add(role) - - for bundled_role in bundled_roles: - bundled_maxs[bundled_role] = _dec_max_min( - bundled_maxs[bundled_role]) - bundled_mins[bundled_role] = _dec_max_min( - bundled_mins[bundled_role]) - - lower_roles[lower_key] = list(roles) - if not roles: - unassigned_hosts.append(lower_key) - - logging.debug('assigned roles: %s', lower_roles) - logging.debug('unassigned_hosts: %s', unassigned_hosts) - logging.debug('bundled maxs for unassigned hosts: %s', bundled_maxs) - logging.debug('bundled mins for unassigned hosts: %s', bundled_mins) - return lower_roles, unassigned_hosts - - -def _update_exclusive_roles(bundled_exclusives, lower_roles, - unassigned_hosts, bundled_maxs, - bundled_mins, role_bundles): - """Assign exclusive roles to hosts.""" - for bundled_exclusive in bundled_exclusives: - while bundled_mins[bundled_exclusive] > 0: - if not unassigned_hosts: - raise ValueError('no enough unassigned hosts for exlusive %s', - bundled_exclusive) - host = unassigned_hosts.pop(0) - bundled_mins[bundled_exclusive] = _dec_max_min( - bundled_mins[bundled_exclusive]) - bundled_maxs[bundled_exclusive] = _dec_max_min( - bundled_maxs[bundled_exclusive]) - lower_roles[host] = list(role_bundles[bundled_exclusive]) - - del role_bundles[bundled_exclusive] - - logging.debug('assigned roles after assigning exclusives: %s', lower_roles) - logging.debug('unassigned_hosts after assigning exclusives: %s', - unassigned_hosts) - logging.debug('bundled maxs after assigning exclusives: %s', bundled_maxs) - logging.debug('bundled mins after assigning exclusives: %s', bundled_mins) - - -def _assign_roles_by_mins(role_bundles, lower_roles, unassigned_hosts, - bundled_maxs, bundled_mins): - """Assign roles to hosts by min restriction.""" - available_hosts = copy.deepcopy(unassigned_hosts) - for bundled_role, roles in role_bundles.items(): - while bundled_mins[bundled_role] > 0: - if not available_hosts: - raise ValueError('no enough available hosts to assign to %s', - bundled_role) - - host = available_hosts.pop(0) - available_hosts.append(host) - if host in unassigned_hosts: - unassigned_hosts.remove(host) - - bundled_mins[bundled_role] = _dec_max_min( - bundled_mins[bundled_role]) - bundled_maxs[bundled_role] = _dec_max_min( - bundled_maxs[bundled_role]) - if host not in lower_roles: - lower_roles[host] = list(roles) - elif set(lower_roles[host]) & roles: - duplicated_roles = set(lower_roles[host]) & roles - raise ValueError( - 'duplicated roles %s on %s' % (duplicated_roles, host)) - else: - lower_roles[host].extend(list(roles)) - - logging.debug('assigned roles after assigning mins: %s', lower_roles) - logging.debug('unassigned_hosts after assigning mins: %s', - unassigned_hosts) - logging.debug('bundled maxs after assigning mins: %s', bundled_maxs) - - -def _assign_roles_by_maxs(role_bundles, lower_roles, unassigned_hosts, - bundled_maxs): - """Assign roles to host by max restriction.""" - available_lists = [] - default_roles_lists = [] - for bundled_role in role_bundles.keys(): - if bundled_maxs[bundled_role] > 0: - available_lists.append( - [bundled_role] * bundled_maxs[bundled_role]) - elif bundled_maxs[bundled_role] < 0: - default_roles_lists.append( - [bundled_role] * (-bundled_maxs[bundled_role])) - - available_list = util.flat_lists_with_possibility(available_lists) - - for bundled_role in available_list: - if not unassigned_hosts: - break - - host = unassigned_hosts.pop(0) - lower_roles[host] = list(role_bundles[bundled_role]) - - logging.debug('assigned roles after assigning max: %s', lower_roles) - logging.debug('unassigned_hosts after assigning maxs: %s', - unassigned_hosts) - - default_roles = util.flat_lists_with_possibility( - default_roles_lists) - - if default_roles: - default_iter = itertools.cycle(default_roles) - while unassigned_hosts: - host = unassigned_hosts.pop(0) - bundled_role = default_iter.next() - lower_roles[host] = list(role_bundles[bundled_role]) - - logging.debug('assigned roles are %s', lower_roles) - logging.debug('unassigned hosts: %s', unassigned_hosts) - - -def _sort_roles(lower_roles, roles): - """Sort roles with the same order as in all roles.""" - for lower_key, lower_value in lower_roles.items(): - updated_roles = [] - for role in roles: - if role in lower_value: - updated_roles.append(role) - - for role in lower_value: - if role not in updated_roles: - logging.debug('found role %s not in roles %s', role, roles) - updated_roles.append(role) - - lower_roles[lower_key] = updated_roles - - logging.debug('sorted roles are %s', lower_roles) - - -def _update_dependencies(lower_roles, default_dependencies, dependencies): - """update dependencies to lower roles.""" - for lower_key, roles in lower_roles.items(): - new_roles = [] - for role in roles: - new_dependencies = dependencies.get( - role, dependencies.get('default', default_dependencies) - ) - for new_dependency in new_dependencies: - if new_dependency not in new_roles: - new_roles.append(new_dependency) - - if role not in new_roles: - new_roles.append(role) - - lower_roles[lower_key] = new_roles - - logging.debug( - 'roles after adding dependencies %s default dependencies %s are: %s', - dependencies, default_dependencies, lower_roles) - - -def _update_post_roles(lower_roles, default_post_roles, post_roles): - """update post roles to lower roles.""" - for lower_key, roles in lower_roles.items(): - new_roles = [] - for role in reversed(roles): - new_post_roles = post_roles.get( - role, post_roles.get('default', default_post_roles) - ) - for new_post_role in reversed(new_post_roles): - if new_post_role not in new_roles: - new_roles.append(new_post_role) - - if role not in new_roles: - new_roles.append(role) - - lower_roles[lower_key] = list(reversed(new_roles)) - - logging.debug( - 'roles after adding post roles %s default %s are: %s', - post_roles, default_post_roles, lower_roles) - - -def assign_roles(_upper_ref, _from_key, lower_refs, to_key, - roles=[], maxs={}, mins={}, default_max=-1, - default_min=0, exclusives=[], bundles=[], - default_dependencies=[], dependencies={}, - default_post_roles=[], post_roles={}, **_kwargs): - """Assign roles to lower configs.""" - logging.debug( - 'assignRoles with roles=%s, maxs=%s, mins=%s, ' - 'default_max=%s, default_min=%s, exclusives=%s, bundles=%s' - 'default_dependencies=%s, dependencies=%s' - 'default_post_roles=%s, post_roles=%s', - roles, maxs, mins, default_max, - default_min, exclusives, bundles, - default_dependencies, dependencies, - default_post_roles, post_roles) - bundle_mapping, role_bundles = _get_role_bundle_mapping(roles, bundles) - bundled_exclusives = _get_bundled_exclusives(exclusives, bundle_mapping) - bundled_maxs, bundled_mins = _get_bundled_max_mins( - maxs, mins, default_max, default_min, role_bundles) - - lower_roles, unassigned_hosts = _update_assigned_roles( - lower_refs, to_key, bundle_mapping, role_bundles, - bundled_maxs, bundled_mins) - if not unassigned_hosts: - logging.debug( - 'there is not unassigned hosts, assigned roles by host is: %s', - lower_roles) - else: - _update_exclusive_roles( - bundled_exclusives, lower_roles, unassigned_hosts, - bundled_maxs, bundled_mins, role_bundles) - _assign_roles_by_mins( - role_bundles, lower_roles, unassigned_hosts, - bundled_maxs, bundled_mins) - _assign_roles_by_maxs( - role_bundles, lower_roles, unassigned_hosts, - bundled_maxs) - - _sort_roles(lower_roles, roles) - _update_dependencies(lower_roles, default_dependencies, dependencies) - _update_post_roles(lower_roles, default_post_roles, post_roles) - - return lower_roles - - -def assign_roles_by_host_numbers(upper_ref, from_key, lower_refs, to_key, - policy_by_host_numbers={}, default={}, - **kwargs): - """Assign roles by role assign policy.""" - host_numbers = str(len(lower_refs)) - policy_kwargs = copy.deepcopy(kwargs) - util.merge_dict(policy_kwargs, default) - if host_numbers in policy_by_host_numbers: - util.merge_dict(policy_kwargs, policy_by_host_numbers[host_numbers]) - else: - logging.debug('didnot find policy %s by host numbers %s', - policy_by_host_numbers, host_numbers) - - return assign_roles(upper_ref, from_key, lower_refs, - to_key, **policy_kwargs) - - -def has_intersection(upper_ref, from_key, _lower_refs, _to_key, - lower_values={}, **_kwargs): - """Check if upper config has intersection with lower values.""" - has = {} - for lower_key, lower_value in lower_values.items(): - values = set(lower_value) - intersection = values.intersection(set(upper_ref.config)) - logging.debug( - 'lower_key %s values %s intersection' - 'with from_key %s value %s: %s', - lower_key, values, from_key, upper_ref.config, intersection) - if intersection: - has[lower_key] = True - else: - has[lower_key] = False - - return has - - -def get_intersection(upper_ref, from_key, _lower_refs, _to_key, - lower_values={}, **_kwargs): - """Get intersection of upper config and lower values.""" - intersections = {} - for lower_key, lower_value in lower_values.items(): - values = set(lower_value) - intersection = values.intersection(set(upper_ref.config)) - logging.debug( - 'lower_key %s values %s intersection' - 'with from_key %s value %s: %s', - lower_key, values, from_key, upper_ref.config, intersection) - if intersection: - intersections[lower_key] = list(intersection) - - return intersections - - -def assign_ips(_upper_ref, _from_key, lower_refs, to_key, - ip_start='192.168.0.1', ip_end='192.168.0.254', - **_kwargs): - """Assign ips to hosts' configurations.""" - if not ip_start or not ip_end: - raise ValueError( - 'ip_start %s or ip_end %s is empty' % (ip_start, ip_end)) - - if not re.match(r'^\d+\.\d+\.\d+\.\d+$', ip_start): - raise ValueError( - 'ip_start %s formmat is not correct' % ip_start) - - if not re.match(r'^\d+\.\d+\.\d+\.\d+$', ip_end): - raise ValueError( - 'ip_end %s format is not correct' % ip_end) - - host_ips = {} - unassigned_hosts = [] - try: - ips = netaddr.IPSet(netaddr.IPRange(ip_start, ip_end)) - except Exception: - raise ValueError( - 'failed to create ip block [%s, %s]' % (ip_start, ip_end)) - - for lower_key, lower_ref in lower_refs.items(): - ip_addr = lower_ref.get(to_key, '') - if ip_addr: - host_ips[lower_key] = ip_addr - ips.remove(ip_addr) - else: - unassigned_hosts.append(lower_key) - - for ip_addr in ips: - if not unassigned_hosts: - break - - host = unassigned_hosts.pop(0) - host_ips[host] = str(ip_addr) - - if unassigned_hosts: - raise ValueError( - 'there is no enough ips to assign to %s: [%s-%s]' % ( - unassigned_hosts, ip_start, ip_end)) - - logging.debug('assign %s: %s', to_key, host_ips) - return host_ips - - -def generate_order(start=0, end=-1): - """generate order num.""" - while start < end or end < 0: - yield start - start += 1 - - -def assign_by_order(_upper_ref, _from_key, lower_refs, _to_key, - prefix='', - orders=[], default_order=0, reverse=False, - conditions={}, **kwargs): - """assign to_key by order.""" - host_values = {} - orders = iter(orders) - lower_keys = lower_refs.keys() - if reverse: - lower_keys = reversed(lower_keys) - - for lower_key in lower_keys: - if lower_key in conditions and conditions[lower_key]: - try: - order = orders.next() - except StopIteration: - order = default_order - - host_values[lower_key] = prefix + type(prefix)(order) - - logging.debug('assign orders: %s', host_values) - return host_values - - -def assign_from_pattern(_upper_ref, _from_key, lower_refs, to_key, - upper_keys=[], lower_keys=[], pattern='', **kwargs): - """assign to_key by pattern.""" - host_values = {} - upper_configs = {} - if set(upper_keys) & set(lower_keys): - raise KeyError( - 'overlap between upper_keys %s and lower_keys %s' % ( - upper_keys, lower_keys)) - - for key in upper_keys: - if key not in kwargs: - raise KeyError( - 'param %s is missing' % key) - - upper_configs[key] = kwargs[key] - - for lower_key, _ in lower_refs.items(): - group = copy.deepcopy(upper_configs) - for key in lower_keys: - if key not in kwargs: - raise KeyError('param %s is missing' % key) - - if not isinstance(kwargs[key], dict): - raise KeyError( - 'param %s type is %s while expected type is dict' % ( - kwargs[key], type(kwargs[key]))) - - group[key] = kwargs[key][lower_key] - - try: - host_values[lower_key] = pattern % group - except KeyError as error: - logging.error('failed to assign %s[%s] = %s %% %s', - lower_key, to_key, pattern, group) - raise error - - return host_values - - -def assign_noproxy(_upper_ref, _from_key, lower_refs, - to_key, default=[], clusterid=None, - noproxy_pattern='', - hostnames={}, ips={}, **kwargs): - """Assign no proxy to hosts.""" - no_proxy_list = copy.deepcopy(default) - for _, value in kwargs.items(): - if value: - no_proxy_list.append(value) - - if not clusterid: - raise KeyError( - 'clusterid %s is empty' % clusterid) - - for lower_key, _ in lower_refs.items(): - if lower_key not in hostnames: - raise KeyError( - 'lower_key %s is not in hostnames %s' % ( - lower_key, hostnames)) - - if lower_key not in ips: - raise KeyError( - 'lower_key %s is not in ips %s' % ( - lower_key, ips)) - - mapping = { - 'clusterid': clusterid, - 'hostname': hostnames[lower_key], - 'ip': ips[lower_key] - } - try: - no_proxy_list.append(noproxy_pattern % mapping) - except KeyError as error: - logging.error('failed to assign %s[%s] = %s %% %s', - lower_key, to_key, noproxy_pattern, mapping) - raise error - - no_proxy = ','.join([no_proxy for no_proxy in no_proxy_list if no_proxy]) - host_no_proxy = {} - for lower_key, _ in lower_refs.items(): - host_no_proxy[lower_key] = no_proxy - - return host_no_proxy - - -def override_if_empty(_upper_ref, _ref_key, lower_ref, _to_key): - """Override if the configuration value is empty.""" - if not lower_ref.config: - return True - - return False diff --git a/compass/config_management/utils/config_reference.py b/compass/config_management/utils/config_reference.py deleted file mode 100644 index c26b0293..00000000 --- a/compass/config_management/utils/config_reference.py +++ /dev/null @@ -1,343 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module to provide util class to access item in nested dict easily. - - .. moduleauthor:: Xiaodong Wang -""" -import copy -import fnmatch -import os.path -import re - -from compass.utils import util - - -def get_clean_config(config): - """Get cleaned config from original config. - - :param config: configuration to be cleaned. - - :returns: clean configuration without key referring to None or empty dict. - """ - if config is None: - return None - - if isinstance(config, dict): - extracted_config = {} - for key, value in config.items(): - sub_config = get_clean_config(value) - if sub_config is not None: - extracted_config[key] = sub_config - - if not extracted_config: - return None - - return extracted_config - else: - return config - - -class ConfigReference(object): - """Helper class to acess item in nested dict.""" - - def __init__(self, config, parent=None, parent_key=None): - """Construct ConfigReference from configuration. - - :param config: configuration to build the ConfigRerence instance. - :type config: dict - :param parent: parent ConfigReference instance. - :param parent_key: the key refers to the config in parent. - :type parent_key: str - - :raises: TypeError - """ - if parent and not isinstance(parent, ConfigReference): - raise TypeError('parent %s type should be %s' - % (parent, ConfigReference)) - - if parent_key and not isinstance(parent_key, basestring): - raise TypeError('parent_key %s type should be [str, unicode]' - % parent_key) - - self.config = config - self.refs_ = {'.': self} - self.parent_ = parent - self.parent_key_ = parent_key - if parent is not None: - self.refs_['..'] = parent - self.refs_['/'] = parent.refs_['/'] - parent.refs_[parent_key] = self - if parent.config is None or not isinstance(parent.config, dict): - parent.__init__({}, parent=parent.parent_, - parent_key=parent.parent_key_) - - parent.config[parent_key] = self.config - else: - self.refs_['..'] = self - self.refs_['/'] = self - - if config and isinstance(config, dict): - for key, value in config.items(): - if not isinstance(key, basestring): - msg = 'key type is %s while expected is [str, unicode]: %s' - raise TypeError(msg % (type(key), key)) - ConfigReference(value, self, key) - - def items(self, prefix=''): - """Return key value pair of all nested items. - - :param prefix: iterate key value pair under prefix. - :type prefix: str - - :returns: list of (key, value) - """ - to_list = [] - for key, ref in self.refs_.items(): - if not self._special_path(key): - key_prefix = os.path.join(prefix, key) - to_list.append((key_prefix, ref.config)) - to_list.extend(ref.items(key_prefix)) - return to_list - - def keys(self): - """Return keys of :func:`ConfigReference.items`.""" - return [key for key, _ in self.items()] - - def values(self): - """Return values of :func:`ConfigReference.items`.""" - return [ref for _, ref in self.items()] - - def __nonzero__(self): - return bool(self.config) - - def __iter__(self): - return iter(self.keys()) - - def __len__(self): - return len(self.keys()) - - @classmethod - def _special_path(cls, path): - """Check if path is special.""" - return path in ['/', '.', '..'] - - def ref_items(self, path): - """Return the refs matching the path glob. - - :param path: glob pattern to match the path to the ref. - :type path: str - - :returns: dict of key to :class:`ConfigReference` instance. - :raises: KeyError - """ - if not path: - raise KeyError('key %s is empty' % path) - - parts = [] - - if isinstance(path, basestring): - parts = path.split('/') - else: - parts = path - - if not parts[0]: - parts = parts[1:] - refs = [('/', self.refs_['/'])] - else: - refs = [('', self)] - - for part in parts: - if not part: - continue - - next_refs = [] - for prefix, ref in refs: - if self._special_path(part): - sub_prefix = os.path.join(prefix, part) - next_refs.append((sub_prefix, ref.refs_[part])) - continue - - for sub_key, sub_ref in ref.refs_.items(): - if self._special_path(sub_key): - continue - - matched = fnmatch.fnmatch(sub_key, part) - if not matched: - continue - - sub_prefix = os.path.join(prefix, sub_key) - next_refs.append((sub_prefix, sub_ref)) - - refs = next_refs - - return refs - - def ref_keys(self, path): - """Return keys of :func:`ConfigReference.ref_items`.""" - return [key for key, _ in self.ref_items(path)] - - def ref_values(self, path): - """Return values of :func:`ConfigReference.ref_items`.""" - return [ref for _, ref in self.ref_items(path)] - - def ref(self, path, create_if_not_exist=False): - """Get ref of the path. - - :param path: str. The path to the ref. - :type path: str - :param create_if_not_exists: create ref if does not exist on path. - :type create_if_not_exist: bool - - :returns: :class:`ConfigReference` instance to the path. - - :raises: KeyError, TypeError - """ - if not path: - raise KeyError('key %s is empty' % path) - - if '*' in path or '?' in path: - raise TypeError('key %s should not contain *') - - parts = [] - if isinstance(path, list): - parts = path - else: - parts = path.split('/') - - if not parts[0]: - ref = self.refs_['/'] - parts = parts[1:] - else: - ref = self - - for part in parts: - if not part: - continue - - if part in ref.refs_: - ref = ref.refs_[part] - elif create_if_not_exist: - ref = ConfigReference(None, ref, part) - else: - raise KeyError('key %s is not exist' % path) - - return ref - - def __repr__(self): - return '' % ( - self.config, self.refs_.keys(), self.parent_) - - def __getitem__(self, path): - return self.ref(path).config - - def __contains__(self, path): - try: - self.ref(path) - return True - except KeyError: - return False - - def __setitem__(self, path, value): - ref = self.ref(path, True) - ref.__init__(value, ref.parent_, ref.parent_key_) - return ref.config - - def __delitem__(self, path): - ref = self.ref(path) - if ref.parent_: - del ref.parent_.refs_[ref.parent_key_] - del ref.parent_.config[ref.parent_key_] - ref.__init__(None) - - def update(self, config, override=True): - """Update with config. - - :param config: config to update. - :param override: if the instance config should be overrided - :type override: bool - """ - if (self.config is not None and - isinstance(self.config, dict) and - isinstance(config, dict)): - - util.merge_dict(self.config, config, override) - elif self.config is None or override: - self.config = copy.deepcopy(config) - else: - return - - self.__init__(self.config, self.parent_, self.parent_key_) - - def get(self, path, default=None): - """Get config of the path or default if does not exist. - - :param path: path to the item - :type path: str - :param default: default value to return - - :returns: item in path or default. - """ - try: - return self[path] - except KeyError: - return default - - def setdefault(self, path, value=None): - """Set default value to path. - - :param path: path to the item. - :type path: str - :param value: the default value to set to the path. - - :returns: the :class:`ConfigReference` to path - """ - ref = self.ref(path, True) - if ref.config is None: - ref.__init__(value, ref.parent_, ref.parent_key_) - return ref - - def match(self, properties_match): - """Check if config match the given properties.""" - for property_name, property_value in properties_match.items(): - config_value = self.get(property_name) - if config_value is None: - return False - - if isinstance(config_value, list): - found = False - for config_value_item in config_value: - if re.match(property_value, str(config_value_item)): - found = True - - if not found: - return False - - else: - if not re.match(property_value, str(config_value)): - return False - - return True - - def filter(self, properties_name): - """filter config by properties name.""" - filtered_properties = {} - for property_name in properties_name: - config_value = self.get(property_name) - if config_value is None: - continue - - filtered_properties[property_name] = config_value - - return filtered_properties diff --git a/compass/config_management/utils/config_translator.py b/compass/config_management/utils/config_translator.py deleted file mode 100644 index 1e6c3356..00000000 --- a/compass/config_management/utils/config_translator.py +++ /dev/null @@ -1,329 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Config Translator module to translate orign config to dest config. - - .. moduleauthor:: Xiaodong Wang -""" -import logging - -from compass.config_management.utils import config_reference - - -class KeyTranslator(object): - """Class to translate origin ref to dest ref.""" - - def __init__(self, translated_keys=[], from_keys={}, translated_value=None, - from_values={}, override=False, override_conditions={}): - """Constructor - - :param translated_keys: keys in dest ref to be translated to. - :type translated_keys: callable or list of (str or callable) - :param from_keys: extra kwargs parsed to translated key callback. - :type: from_keys: dict mapping name of kwargs to path in origin ref - :param translated_value: value or callback to get translated value. - :type translated_value: callback or any type - :param from_values: extra kwargs parsed to translated value callback. - :type from_vlaues: dictr mapping name of kwargs to path in origin ref. - :param override: if the translated value can be overridden. - :type override: callback or bool - :param override_conditions: extra kwargs parsed to override callback. - :type override_conditions: dict of kwargs name to origin ref path. - """ - self.translated_keys_ = translated_keys - self.from_keys_ = from_keys - self.translated_value_ = translated_value - self.from_values_ = from_values - self.override_ = override - self.override_conditions_ = override_conditions - self._is_valid() - - def __repr__(self): - return ( - '%s[translated_keys=%s,from_keys=%s,translated_value=%s,' - 'from_values=%s,override=%s,override_conditions=%s]' - ) % ( - self.__class__.__name__, self.translated_keys_, - self.from_keys_, self.translated_value_, self.from_values_, - self.override_, self.override_conditions_ - ) - - def _is_valid_translated_keys(self): - """Check translated keys are valid.""" - if callable(self.translated_keys_): - return - - if not isinstance(self.translated_keys_, list): - raise TypeError( - 'translated_keys %s type is %s while expected type is ' - 'list or callable' % ( - self.translated_keys_, type(self.translated_keys_))) - - for i, translated_key in enumerate(self.translated_keys_): - if isinstance(translated_key, basestring): - if '*' in translated_key: - raise KeyError( - 'transalted_keys[%d] %s should not contain *' % ( - i, translated_key)) - elif not callable(translated_key): - raise TypeError( - 'translated_keys[%d] type is %s while expected ' - 'types are str or callable: %s' % ( - i, type(translated_key), translated_key)) - - def _is_valid_from_keys(self): - """Check from keys are valid.""" - if not isinstance(self.from_keys_, dict): - raise TypeError( - 'from_keys %s type is %s while expected type is dict' % ( - self.from_keys_, type(self.from_keys_))) - - for mapping_key, from_key in self.from_keys_.items(): - if not isinstance(mapping_key, basestring): - raise TypeError( - 'from_keys key %s type is %s while ' - 'expected type is [str, unicode]' % ( - mapping_key, type(mapping_key))) - - if not isinstance(from_key, basestring): - raise TypeError( - 'from_keys[%s] type is %s while ' - 'expected type is [str, unicode]: %s' % ( - mapping_key, type(from_key), from_key)) - - if '*' in from_key: - raise KeyError( - 'from_keys[%s] %s contains *' % ( - mapping_key, from_key)) - - def _is_valid_from_values(self): - """Check from values are valid.""" - if not isinstance(self.from_values_, dict): - raise TypeError( - 'from_values %s type is %s while expected type is dict' % ( - self.from_values_, type(self.from_values_))) - - for mapping_key, from_value in self.from_values_.items(): - if not isinstance(mapping_key, basestring): - raise TypeError( - 'from_values key %s type is %s while ' - 'expected type is [str, unicode]' % ( - mapping_key, type(mapping_key))) - - if not isinstance(from_value, basestring): - raise TypeError( - 'from_values[%s] type is %s while ' - 'expected type is [str, unicode]: %s' % ( - mapping_key, type(from_value), from_value)) - - if '*' in from_value: - raise KeyError( - 'from_values[%s] %s contains *' % ( - mapping_key, from_value)) - - def _is_valid_override_conditions(self): - """Check override conditions are valid.""" - if not isinstance(self.override_conditions_, dict): - raise TypeError( - 'override_conditions %s type is %s ' - 'while expected type is dict' % ( - self.override_conditions_, - type(self.override_conditions_))) - - override_items = self.override_conditions_.items() - for mapping_key, override_condition in override_items: - if not isinstance(mapping_key, basestring): - raise TypeError( - 'override_conditions key %s type is %s while ' - 'expected type is [str, unicode]' % ( - mapping_key, type(mapping_key))) - - if not isinstance(override_condition, basestring): - raise TypeError( - 'override_conditions[%s] type is %s ' - 'while expected type is [str, unicode]: %s' % ( - mapping_key, type(override_condition), - override_condition)) - - if '*' in override_condition: - raise KeyError( - 'override_conditions[%s] %s contains *' % ( - mapping_key, override_condition)) - - def _is_valid(self): - """Check key translator is valid.""" - self._is_valid_translated_keys() - self._is_valid_from_keys() - self._is_valid_from_values() - self._is_valid_override_conditions() - - def _get_translated_keys(self, ref_key, sub_ref): - """Get translated keys.""" - key_configs = {} - for mapping_key, from_key in self.from_keys_.items(): - if from_key in sub_ref: - key_configs[mapping_key] = sub_ref[from_key] - else: - logging.error('%s from_key %s missing in %s', - self, from_key, sub_ref) - - if callable(self.translated_keys_): - translated_keys = self.translated_keys_( - sub_ref, ref_key, **key_configs) - return translated_keys - - translated_keys = [] - for translated_key in self.translated_keys_: - if callable(translated_key): - translated_key = translated_key( - sub_ref, ref_key, **key_configs) - - if not translated_key: - logging.debug('%s ignore empty translated key', self) - continue - - if not isinstance(translated_key, basestring): - logging.error( - '%s translated key %s should be [str, unicode]', - self, translated_key) - continue - - translated_keys.append(translated_key) - - return translated_keys - - def _get_translated_value(self, ref_key, sub_ref, - translated_key, translated_sub_ref): - """Get translated value.""" - if self.translated_value_ is None: - return sub_ref.config - elif not callable(self.translated_value_): - return self.translated_value_ - - value_configs = {} - - for mapping_key, from_value in self.from_values_.items(): - if from_value in sub_ref: - value_configs[mapping_key] = sub_ref[from_value] - else: - logging.info('%s ignore from value %s for key %s', - self, from_value, ref_key) - - return self.translated_value_( - sub_ref, ref_key, translated_sub_ref, - translated_key, **value_configs) - - def _get_override(self, ref_key, sub_ref, - translated_key, translated_sub_ref): - """Get override.""" - if not callable(self.override_): - return bool(self.override_) - - override_condition_configs = {} - override_items = self.override_conditions_.items() - for mapping_key, override_condition in override_items: - if override_condition in sub_ref: - override_condition_configs[mapping_key] = ( - sub_ref[override_condition]) - else: - logging.error('%s no override condition %s in %s', - self, override_condition, ref_key) - - return self.override_(sub_ref, ref_key, - translated_sub_ref, - translated_key, - **override_condition_configs) - - def translate(self, ref, key, translated_ref): - """Translate content in ref[key] to translated_ref.""" - logging.debug('translate %s', key) - for ref_key, sub_ref in ref.ref_items(key): - translated_keys = self._get_translated_keys(ref_key, sub_ref) - for translated_key in translated_keys: - translated_sub_ref = translated_ref.setdefault( - translated_key) - translated_value = self._get_translated_value( - ref_key, sub_ref, translated_key, translated_sub_ref) - - if translated_value is None: - logging.debug( - 'translated key %s will be ignored ' - 'since translated value is None', translated_key) - continue - - override = self._get_override( - ref_key, sub_ref, translated_key, translated_sub_ref) - logging.debug('%s translate to %s value %s', ref_key, - translated_key, translated_value) - translated_sub_ref.update(translated_value, override) - - -class ConfigTranslator(object): - """Class to translate origin config to expected dest config.""" - - def __init__(self, mapping): - """Constructor - - :param mapping: dict of config path to :class:`KeyTranslator` instance - """ - self.mapping_ = mapping - self._is_valid() - - def __repr__(self): - return '%s[mapping=%s]' % (self.__class__.__name__, self.mapping_) - - def _is_valid(self): - """Check if ConfigTranslator is valid.""" - if not isinstance(self.mapping_, dict): - raise TypeError( - 'mapping type is %s while expected type is dict: %s' % ( - type(self.mapping_), self.mapping_)) - - for key, values in self.mapping_.items(): - if not isinstance(key, basestring): - raise TypeError( - 'mapping key %s type is %s while expected ' - 'is str or unicode' % (key, type(key))) - - if not isinstance(values, list): - raise TypeError( - 'mapping[%s] type is %s ' - 'while expected type is list: %s' % ( - key, type(values), values)) - - for i, value in enumerate(values): - if not isinstance(value, KeyTranslator): - raise TypeError( - 'mapping[%s][%d] type is %s ' - 'while expected type is KeyTranslator: %s' % ( - key, i, type(value), value)) - - def translate(self, config): - """Translate config. - - :param config: configuration to translate. - - :returns: the translated configuration. - """ - ref = config_reference.ConfigReference(config) - translated_ref = config_reference.ConfigReference({}) - for key, values in self.mapping_.items(): - for value in values: - value.translate(ref, key, translated_ref) - - translated_config = config_reference.get_clean_config( - translated_ref.config) - logging.debug('translate config\n%s\nto\n%s', - config, translated_config) - return translated_config diff --git a/compass/config_management/utils/config_translator_callbacks.py b/compass/config_management/utils/config_translator_callbacks.py deleted file mode 100644 index b92380c9..00000000 --- a/compass/config_management/utils/config_translator_callbacks.py +++ /dev/null @@ -1,245 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""callback lib for config translator callbacks.""" -import crypt -import logging -import re - -from compass.utils import util - - -def get_key_from_pattern( - _ref, path, from_pattern='.*', - to_pattern='', **kwargs -): - """Get translated key from pattern.""" - match = re.match(from_pattern, path) - if not match: - return None - - group = match.groupdict() - util.merge_dict(group, kwargs) - try: - translated_key = to_pattern % group - except KeyError as error: - logging.error('failed to get translated key from %s %% %s', - to_pattern, group) - raise error - - logging.debug('got translated key %s for %s', translated_key, path) - return translated_key - - -def get_keys_from_config_mapping(ref, _path, **kwargs): - """get translated keys from config.""" - config = ref.config - translated_keys = config.keys() - logging.debug('got translated_keys %s from config mapping %s', - translated_keys, config) - return translated_keys - - -def get_keys_from_role_mapping(ref, _path, mapping={}, **_kwargs): - """get translated keys from roles.""" - roles = ref.config - translated_keys = [] - for role in roles: - if role not in mapping: - continue - - translated_keys.extend(mapping[role].keys()) - - logging.debug('got translated_keys %s from roles %s and mapping %s', - translated_keys, roles, mapping) - return translated_keys - - -def get_value_from_config_mapping( - ref, _path, _translated_ref, translated_path, **kwargs -): - """get translated_value from config and translated_path.""" - config = ref.config - if translated_path not in config: - return None - - value = config[translated_path] - if isinstance(value, basestring): - translated_value = ref.get(value) - logging.debug('got translated_value %s from %s', - translated_value, value) - elif isinstance(value, list): - for value_in_list in value: - translated_value = ref.get(value_in_list) - logging.debug('got translated_value %s from %s', - translated_value, value_in_list) - if translated_value is not None: - break - - else: - logging.error('unexpected type %s: %s', - type(value), value) - translated_value = None - - logging.debug('got translated_value %s from translated_path %s', - translated_value, translated_path) - return translated_value - - -def get_value_from_role_mapping( - ref, _path, _translated_ref, translated_path, - mapping={}, **_kwargs -): - """get translated value from roles and translated_path.""" - roles = ref.config - for role in roles: - if role not in mapping: - continue - - if translated_path not in mapping[role]: - continue - - value = mapping[role][translated_path] - if isinstance(value, basestring): - translated_value = ref.get(value) - logging.debug('got translated_value %s from %s', - translated_value, value) - elif isinstance(value, list): - for value_in_list in value: - translated_value = ref.get(value_in_list) - logging.debug('got translated_value %s from %s', - translated_value, value_in_list) - if translated_value is not None: - break - else: - logging.error('unexpected type %s: %s', - type(value), value) - translated_value = None - - logging.debug('got translated_value %s from roles %s ' - 'and translated_path %s', - translated_value, roles, translated_path) - return translated_value - - return None - - -def get_encrypted_value(ref, _path, _translated_ref, _translated_path, - crypt_method=None, **_kwargs): - """Get encrypted value.""" - if not crypt_method: - if hasattr(crypt, 'METHOD_MD5'): - crypt_method = crypt.METHOD_MD5 - else: - # for python2.7, copy python2.6 METHOD_MD5 logic here. - from random import choice - import string - - _saltchars = string.ascii_letters + string.digits + './' - - def _mksalt(): - """generate salt.""" - salt = '$1$' - salt += ''.join(choice(_saltchars) for _ in range(8)) - return salt - - crypt_method = _mksalt() - - return crypt.crypt(ref.config, crypt_method) - - -def set_value(ref, _path, _translated_ref, - _translated_path, - return_value_callback=None, **kwargs): - """Set value into translated config.""" - condition = True - for _, arg in kwargs.items(): - if not arg: - condition = False - - if condition: - translated_value = ref.config - else: - translated_value = None - - if not return_value_callback: - return translated_value - else: - return return_value_callback(translated_value) - - -def add_value(ref, _path, translated_ref, - translated_path, - get_value_callback=None, - check_value_callback=None, - add_value_callback=None, - return_value_callback=None, **kwargs): - """Append value into translated config.""" - if not translated_ref.config: - value_list = [] - else: - if not get_value_callback: - value_list = translated_ref.config - else: - value_list = get_value_callback(translated_ref.config) - - logging.debug('%s value list is %s', translated_path, value_list) - if not isinstance(value_list, list): - raise TypeError( - '%s value %s type %s but expected type is list' % ( - translated_path, value_list, type(value_list))) - - condition = True - for _, arg in kwargs.items(): - if not arg: - condition = False - - logging.debug('%s add_value condition is %s', translated_path, condition) - if condition: - if not check_value_callback: - value_in_list = ref.config in value_list - else: - value_in_list = check_value_callback(ref.config, value_list) - - if value_in_list: - logging.debug('%s found value %s in %s', - translated_path, value_list, value_in_list) - - if not value_in_list: - if not add_value_callback: - value_list.append(ref.config) - else: - add_value_callback(ref.config, value_list) - - logging.debug('%s value %s after added', translated_path, value_list) - if not return_value_callback: - return value_list - else: - return return_value_callback(value_list) - - -def override_if_any(_ref, _path, _translated_ref, _translated_path, **kwargs): - """override if any kwargs is True.""" - return any(kwargs.values()) - - -def override_if_all(_ref, _path, _translated_ref, _translated_path, **kwargs): - """override if all kwargs are True.""" - return all(kwargs.values()) - - -def override_path_has(_ref, path, _translated_ref, _translated_path, - should_exist='', **_kwargs): - """override if expect part exists in path.""" - return should_exist in path.split('/') diff --git a/compass/db/api/__init__.py b/compass/db/api/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/db/api/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/db/api/adapter.py b/compass/db/api/adapter.py new file mode 100644 index 00000000..4a81056a --- /dev/null +++ b/compass/db/api/adapter.py @@ -0,0 +1,197 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Adapter related database operations.""" +import logging +import re + +from compass.db.api import database +from compass.db.api import utils +from compass.db import exception +from compass.db import models + +from compass.utils import setting_wrapper as setting +from compass.utils import util + + +def _add_system(session, model, configs, exception_when_existing=True): + parents = {} + for config in configs: + logging.info( + 'add config %s to %s', + config, model + ) + object = utils.add_db_object( + session, model, + exception_when_existing, config['NAME'], + deployable=config.get('DEPLOYABLE', False) + ) + parents[config['NAME']] = ( + object, config.get('PARENT', None) + ) + for name, (object, parent_name) in parents.items(): + if parent_name: + parent, _ = parents[parent_name] + else: + parent = None + utils.update_db_object(session, object, parent=parent) + + +def add_oses_internal(session, exception_when_existing=True): + configs = util.load_configs(setting.OS_DIR) + _add_system( + session, models.OperatingSystem, configs, + exception_when_existing=exception_when_existing + ) + + +def add_distributed_systems_internal(session, exception_when_existing=True): + configs = util.load_configs(setting.DISTRIBUTED_SYSTEM_DIR) + _add_system( + session, models.DistributedSystem, configs, + exception_when_existing=exception_when_existing + ) + + +def add_adapters_internal(session, exception_when_existing=True): + parents = {} + configs = util.load_configs(setting.ADAPTER_DIR) + for config in configs: + logging.info('add config %s to adapter', config) + if 'DISTRIBUTED_SYSTEM' in config: + distributed_system = utils.get_db_object( + session, models.DistributedSystem, + name=config['DISTRIBUTED_SYSTEM'] + ) + else: + distributed_system = None + if 'OS_INSTALLER' in config: + os_installer = utils.get_db_object( + session, models.OSInstaller, + alias=config['OS_INSTALLER'] + ) + else: + os_installer = None + if 'PACKAGE_INSTALLER' in config: + package_installer = utils.get_db_object( + session, models.PackageInstaller, + alias=config['PACKAGE_INSTALLER'] + ) + else: + package_installer = None + adapter = utils.add_db_object( + session, models.Adapter, + exception_when_existing, + config['NAME'], + display_name=config.get('DISPLAY_NAME', None), + distributed_system=distributed_system, + os_installer=os_installer, + package_installer=package_installer, + deployable=config.get('DEPLOYABLE', False) + ) + supported_os_patterns = [ + re.compile(supported_os_pattern) + for supported_os_pattern in config.get('SUPPORTED_OS_PATTERNS', []) + ] + oses = utils.list_db_objects( + session, models.OperatingSystem + ) + for os in oses: + if not os.deployable: + continue + os_name = os.name + for supported_os_pattern in supported_os_patterns: + if supported_os_pattern.match(os_name): + utils.add_db_object( + session, models.AdapterOS, + exception_when_existing, + os.id, adapter.id + ) + break + parents[config['NAME']] = (adapter, config.get('PARENT', None)) + + for name, (adapter, parent_name) in parents.items(): + if parent_name: + parent, _ = parents[parent_name] + else: + parent = None + utils.update_db_object(session, adapter, parent=parent) + + +def add_roles_internal(session, exception_when_existing=True): + configs = util.load_configs(setting.ADAPTER_ROLE_DIR) + for config in configs: + logging.info( + 'add config %s to role', config + ) + adapter = utils.get_db_object( + session, models.Adapter, + name=config['ADAPTER_NAME'] + ) + for role_dict in config['ROLES']: + utils.add_db_object( + session, models.AdapterRole, + exception_when_existing, role_dict['role'], adapter.id, + display_name=role_dict.get('display_name', None), + description=role_dict.get('description', None), + optional=role_dict.get('optional', False) + ) + + +def add_flavors_internal(session, exception_when_existing=True): + configs = util.load_configs(setting.ADAPTER_FLAVOR_DIR) + for config in configs: + logging.info('add config %s to flavor', config) + adapter = utils.get_db_object( + session, models.Adapter, + name=config['ADAPTER_NAME'] + ) + for flavor_dict in config['FLAVORS']: + flavor = utils.add_db_object( + session, models.AdapterFlavor, + exception_when_existing, flavor_dict['flavor'], adapter.id, + display_name=flavor_dict.get('display_name', None), + template=flavor_dict.get('template', None) + ) + role_names = flavor_dict.get('roles', []) + for role_name in role_names: + role = utils.get_db_object( + session, models.AdapterRole, + name=role_name, adapter_id=adapter.id + ) + utils.add_db_object( + session, models.AdapterFlavorRole, + exception_when_existing, flavor.id, role.id + ) + utils.update_db_object( + session, flavor, + patched_ordered_flavor_roles=[role_name] + ) + + +def get_adapters_internal(session): + adapter_mapping = {} + adapters = utils.list_db_objects( + session, models.Adapter + ) + for adapter in adapters: + if adapter.deployable: + adapter_dict = adapter.to_dict() + adapter_mapping[adapter.id] = adapter_dict + else: + logging.info( + 'ignore adapter %s since it is not deployable', + adapter.to_dict() + ) + return adapter_mapping diff --git a/compass/db/api/adapter_holder.py b/compass/db/api/adapter_holder.py new file mode 100644 index 00000000..185eeb74 --- /dev/null +++ b/compass/db/api/adapter_holder.py @@ -0,0 +1,130 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Adapter related object holder.""" +import logging + +from compass.db.api import adapter as adapter_api +from compass.db.api import database +from compass.db.api import permission +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import exception + + +SUPPORTED_FIELDS = [ + 'name', + 'distributed_system_name', +] +RESP_FIELDS = [ + 'id', 'name', 'roles', 'flavors', + 'os_installer', 'package_installer', + 'distributed_system_id', + 'distributed_system_name', + 'supported_oses', 'display_name' +] +RESP_OS_FIELDS = [ + 'id', 'os_id', 'name' +] +RESP_ROLES_FIELDS = [ + 'id', 'name', 'display_name', 'description', 'optional' +] +RESP_FLAVORS_FIELDS = [ + 'id', 'name', 'display_name', 'template', 'roles' +] + + +@database.run_in_session() +def load_adapters(session): + load_adapters_internal(session) + + +def load_adapters_internal(session): + global ADAPTER_MAPPING + logging.info('load adapters into memory') + ADAPTER_MAPPING = adapter_api.get_adapters_internal(session) + + +ADAPTER_MAPPING = {} + + +def _filter_adapters(adapter_config, filter_name, filter_value): + if filter_name not in adapter_config: + return False + if isinstance(filter_value, list): + return bool( + adapter_config[filter_name] in filter_value + ) + elif isinstance(filter_value, dict): + return all([ + _filter_adapters( + adapter_config[filter_name], + sub_filter_key, sub_filter_value + ) + for sub_filter_key, sub_filter_value in filter_value.items() + ]) + else: + return adapter_config[filter_name] == filter_value + + +@utils.supported_filters(optional_support_keys=SUPPORTED_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_ADAPTERS +) +@utils.output_filters( + name=utils.general_filter_callback, + distributed_system_name=utils.general_filter_callback, + os_installer_name=utils.general_filter_callback, + package_installer_name=utils.general_filter_callback +) +@utils.wrap_to_dict( + RESP_FIELDS, + supported_oses=RESP_OS_FIELDS, + roles=RESP_ROLES_FIELDS, + flavors=RESP_FLAVORS_FIELDS +) +def list_adapters(session, lister, **filters): + """list adapters.""" + if not ADAPTER_MAPPING: + load_adapters_internal(session) + return ADAPTER_MAPPING.values() + + +def get_adapter_internal(session, adapter_id): + """get adapter.""" + if not ADAPTER_MAPPING: + load_adapters_internal(session) + + if adapter_id not in ADAPTER_MAPPING: + raise exception.RecordNotExists( + 'adpater %s does not exist' % adapter_id + ) + return ADAPTER_MAPPING[adapter_id] + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_ADAPTERS +) +@utils.wrap_to_dict( + RESP_FIELDS, + supported_oses=RESP_OS_FIELDS, + roles=RESP_ROLES_FIELDS, + flavors=RESP_FLAVORS_FIELDS +) +def get_adapter(session, getter, adapter_id, **kwargs): + """get adapter.""" + return get_adapter_internal(session, adapter_id) diff --git a/compass/db/api/cluster.py b/compass/db/api/cluster.py new file mode 100644 index 00000000..75cb1a20 --- /dev/null +++ b/compass/db/api/cluster.py @@ -0,0 +1,1707 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, + +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Cluster database operations.""" +import copy +import functools +import logging + +from compass.db.api import database +from compass.db.api import metadata_holder as metadata_api +from compass.db.api import permission +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import exception +from compass.db import models +from compass.utils import util + + +SUPPORTED_FIELDS = [ + 'name', 'os_name', 'distributed_system_name', 'owner', + 'adapter_name', 'flavor_name' +] +SUPPORTED_CLUSTERHOST_FIELDS = [] +RESP_FIELDS = [ + 'id', 'name', 'os_name', 'os_id', 'distributed_system_id', + 'reinstall_distributed_system', 'flavor', + 'distributed_system_name', 'distributed_system_installed', + 'owner', 'adapter_id', 'adapter_name', 'flavor_name', + 'created_at', 'updated_at' +] +RESP_CLUSTERHOST_FIELDS = [ + 'id', 'host_id', 'clusterhost_id', 'machine_id', + 'name', 'hostname', 'roles', 'os_installer', + 'cluster_id', 'clustername', 'location', 'tag', + 'networks', 'mac', 'switch_ip', 'port', 'switches', + 'os_installed', 'distributed_system_installed', + 'os_name', 'distributed_system_name', 'ip', + 'reinstall_os', 'reinstall_distributed_system', + 'owner', 'cluster_id', + 'created_at', 'updated_at' +] +RESP_CONFIG_FIELDS = [ + 'os_config', + 'package_config', + 'config_step', + 'config_validated', + 'created_at', + 'updated_at' +] +RESP_DEPLOYED_CONFIG_FIELDS = [ + 'deployed_os_config', + 'deployed_package_config', + 'created_at', + 'updated_at' +] +RESP_METADATA_FIELDS = [ + 'os_config', 'package_config' +] +RESP_CLUSTERHOST_CONFIG_FIELDS = [ + 'package_config', + 'os_config', + 'config_step', + 'config_validated', + 'networks', + 'created_at', + 'updated_at' +] +RESP_CLUSTERHOST_DEPLOYED_CONFIG_FIELDS = [ + 'deployed_os_config', + 'deployed_package_config', + 'created_at', + 'updated_at' +] +RESP_STATE_FIELDS = [ + 'id', 'state', 'percentage', 'message', 'severity', + 'status', + 'created_at', 'updated_at' +] +RESP_CLUSTERHOST_STATE_FIELDS = [ + 'id', 'state', 'percentage', 'message', 'severity', + 'created_at', 'updated_at' +] +RESP_REVIEW_FIELDS = [ + 'cluster', 'hosts' +] +RESP_DEPLOY_FIELDS = [ + 'status', 'cluster', 'hosts' +] +IGNORE_FIELDS = ['id', 'created_at', 'updated_at'] +ADDED_FIELDS = ['name', 'adapter_id', 'os_id'] +OPTIONAL_ADDED_FIELDS = ['flavor_id'] +UPDATED_FIELDS = ['name', 'reinstall_distributed_system'] +ADDED_HOST_FIELDS = ['machine_id'] +UPDATED_HOST_FIELDS = ['name', 'reinstall_os'] +UPDATED_CLUSTERHOST_FIELDS = ['roles'] +PATCHED_CLUSTERHOST_FIELDS = ['patched_roles'] +UPDATED_CONFIG_FIELDS = [ + 'put_os_config', 'put_package_config', 'config_step' +] +UPDATED_DEPLOYED_CONFIG_FIELDS = [ + 'deployed_os_config', 'deployed_package_config' +] +PATCHED_CONFIG_FIELDS = [ + 'patched_os_config', 'patched_package_config', 'config_step' +] +UPDATED_CLUSTERHOST_CONFIG_FIELDS = [ + 'put_os_config', + 'put_package_config' +] +PATCHED_CLUSTERHOST_CONFIG_FIELDS = [ + 'patched_os_config', + 'patched_package_config' +] +UPDATED_CLUSTERHOST_DEPLOYED_CONFIG_FIELDS = [ + 'deployed_os_config', + 'deployed_package_config' +] +UPDATED_CLUSTERHOST_STATE_FIELDS = [ + 'state', 'percentage', 'message', 'severity' +] +UPDATED_CLUSTER_STATE_FIELDS = [ + 'state' +] +RESP_CLUSTERHOST_LOG_FIELDS = [ + 'clusterhost_id', 'id', 'host_id', 'cluster_id', + 'filename', 'position', 'partial_line', + 'percentage', + 'message', 'severity', 'line_matcher_name' +] +ADDED_CLUSTERHOST_LOG_FIELDS = [ + 'filename' +] +UPDATED_CLUSTERHOST_LOG_FIELDS = [ + 'position', 'partial_line', 'percentage', + 'message', 'severity', 'line_matcher_name' +] + + +@utils.supported_filters(optional_support_keys=SUPPORTED_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERS +) +@utils.wrap_to_dict(RESP_FIELDS) +def list_clusters(session, lister, **filters): + """List clusters.""" + return utils.list_db_objects( + session, models.Cluster, **filters + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERS +) +@utils.wrap_to_dict(RESP_FIELDS) +def get_cluster( + session, getter, cluster_id, + exception_when_missing=True, **kwargs +): + """Get cluster info.""" + return utils.get_db_object( + session, models.Cluster, exception_when_missing, id=cluster_id + ) + + +def _conditional_exception(cluster, exception_when_not_editable): + if exception_when_not_editable: + raise exception.Forbidden( + 'cluster %s is not editable' % cluster.name + ) + else: + return False + + +def is_cluster_validated( + session, cluster +): + if not cluster.config_validated: + raise exception.Forbidden( + 'cluster %s is not validated' % cluster.name + ) + + +def is_clusterhost_validated( + session, clusterhost +): + if not clusterhost.config_validated: + raise exception.Forbidden( + 'clusterhost %s is not validated' % clusterhost.name + ) + + +def is_cluster_editable( + session, cluster, user, + reinstall_distributed_system_set=False, + exception_when_not_editable=True +): + if reinstall_distributed_system_set: + if cluster.state.state == 'INSTALLING': + return _conditional_exception( + cluster, exception_when_not_editable + ) + elif ( + cluster.distributed_system and + not cluster.reinstall_distributed_system + ): + return _conditional_exception( + cluster, exception_when_not_editable + ) + if not user.is_admin and cluster.creator_id != user.id: + return _conditional_exception( + cluster, exception_when_not_editable + ) + return True + + +@utils.supported_filters( + ADDED_FIELDS, + optional_support_keys=OPTIONAL_ADDED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(name=utils.check_name) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_CLUSTER +) +@utils.wrap_to_dict(RESP_FIELDS) +def add_cluster( + session, creator, + exception_when_existing=True, + name=None, **kwargs +): + """Create a cluster.""" + return utils.add_db_object( + session, models.Cluster, exception_when_existing, + name, creator_id=creator.id, + **kwargs + ) + + +@utils.supported_filters( + optional_support_keys=UPDATED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(name=utils.check_name) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_CLUSTER +) +@utils.wrap_to_dict(RESP_FIELDS) +def update_cluster(session, updater, cluster_id, **kwargs): + """Update a cluster.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + is_cluster_editable( + session, cluster, updater, + reinstall_distributed_system_set=( + kwargs.get('reinstall_distributed_system', False) + ) + ) + if 'name' in kwargs: + clustername = kwargs['name'] + cluster_by_name = utils.get_db_object( + session, models.Cluster, False, name=clustername + ) + if cluster_by_name and cluster_by_name.id != cluster.id: + raise exception.InvalidParameter( + 'cluster name %s is already exists in cluster %s' % ( + clustername, cluster_by_name.id + ) + ) + return utils.update_db_object(session, cluster, **kwargs) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_CLUSTER +) +@utils.wrap_to_dict(RESP_FIELDS) +def del_cluster(session, deleter, cluster_id, **kwargs): + """Delete a cluster.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + is_cluster_editable( + session, cluster, deleter, + reinstall_distributed_system_set=True + ) + return utils.del_db_object(session, cluster) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTER_CONFIG +) +@utils.wrap_to_dict(RESP_CONFIG_FIELDS) +def get_cluster_config(session, getter, cluster_id, **kwargs): + """Get cluster config.""" + return utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTER_CONFIG +) +@utils.wrap_to_dict(RESP_DEPLOYED_CONFIG_FIELDS) +def get_cluster_deployed_config(session, getter, cluster_id, **kwargs): + """Get cluster deployed config.""" + return utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_METADATAS +) +@utils.wrap_to_dict(RESP_METADATA_FIELDS) +def get_cluster_metadata(session, getter, cluster_id, **kwargs): + """Get cluster metadata.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + metadatas = {} + os = cluster.os + if os: + metadatas['os_config'] = metadata_api.get_os_metadata_internal( + session, os.id + ) + adapter = cluster.adapter + if adapter: + metadatas['package_config'] = ( + metadata_api.get_package_metadata_internal( + session, adapter.id + ) + ) + return metadatas + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_CLUSTER_CONFIG +) +@utils.wrap_to_dict(RESP_CONFIG_FIELDS) +def _update_cluster_config(session, updater, cluster, **kwargs): + """Update a cluster config.""" + is_cluster_editable(session, cluster, updater) + return utils.update_db_object( + session, cluster, **kwargs + ) + + +@utils.replace_filters( + os_config='deployed_os_config', + package_config='deployed_package_config' +) +@utils.supported_filters( + optional_support_keys=UPDATED_DEPLOYED_CONFIG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_CLUSTER_CONFIG +) +@utils.wrap_to_dict(RESP_DEPLOYED_CONFIG_FIELDS) +def update_cluster_deployed_config( + session, updater, cluster_id, **kwargs +): + """Update cluster deployed config.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + is_cluster_editable(session, cluster, updater) + is_cluster_validated(session, cluster) + return utils.update_db_object( + session, cluster, **kwargs + ) + + +@utils.replace_filters( + os_config='put_os_config', + package_config='put_package_config' +) +@utils.supported_filters( + optional_support_keys=UPDATED_CONFIG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +def update_cluster_config(session, updater, cluster_id, **kwargs): + """Update cluster config.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + + def os_config_validates(config): + metadata_api.validate_os_config( + session, config, os_id=cluster.os_id + ) + + def package_config_validates(config): + metadata_api.validate_package_config( + session, config, adapter_id=cluster.adapter_id + ) + + @utils.input_validates( + put_os_config=os_config_validates, + put_package_config=package_config_validates + ) + def update_config_internal( + cluster, **in_kwargs + ): + return _update_cluster_config( + session, updater, cluster, **in_kwargs + ) + + return update_config_internal( + cluster, **kwargs + ) + + +@utils.replace_filters( + os_config='patched_os_config', + package_config='patched_package_config' +) +@utils.supported_filters( + optional_support_keys=PATCHED_CONFIG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +def patch_cluster_config(session, updater, cluster_id, **kwargs): + """patch cluster config.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + + def os_config_validates(config): + metadata_api.validate_os_config( + session, config, os_id=cluster.os_id + ) + + def package_config_validates(config): + metadata_api.validate_package_config( + session, config, adapter_id=cluster.adapter_id + ) + + @utils.output_validates( + os_config=os_config_validates, + package_config=package_config_validates + ) + def update_config_internal(cluster, **in_kwargs): + return _update_cluster_config( + session, updater, cluster, **in_kwargs + ) + + return update_config_internal( + cluster, **kwargs + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_CLUSTER_CONFIG +) +@utils.wrap_to_dict(RESP_CONFIG_FIELDS) +def del_cluster_config(session, deleter, cluster_id): + """Delete a cluster config.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + is_cluster_editable(session, cluster, deleter) + return utils.update_db_object( + session, cluster, os_config={}, + package_config={}, config_validated=False + ) + + +@utils.supported_filters( + ADDED_HOST_FIELDS, + optional_support_keys=(UPDATED_HOST_FIELDS + UPDATED_CLUSTERHOST_FIELDS), + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(name=utils.check_name) +def add_clusterhost_internal( + session, cluster, + exception_when_existing=False, + machine_id=None, **kwargs +): + from compass.db.api import host as host_api + clusterhost_dict = {} + host_dict = {} + for key, value in kwargs.items(): + if key in UPDATED_CLUSTERHOST_FIELDS: + clusterhost_dict[key] = value + else: + host_dict[key] = value + host = utils.get_db_object( + session, models.Host, False, id=machine_id + ) + if host: + if host_api.is_host_editable( + session, host, cluster.creator, + reinstall_os_set=kwargs.get('reinstall_os', False), + exception_when_not_editable=False + ): + if 'name' in host_dict: + hostname = host_dict['name'] + host_by_name = utils.get_db_object( + session, models.Host, False, name=hostname + ) + if host_by_name and host_by_name.id != host.id: + raise exception.InvalidParameter( + 'host name %s exists in host %s' % ( + hostname, host_by_name.id + ) + ) + utils.update_db_object( + session, host, + **host_dict + ) + else: + logging.info('host %s is not editable', host.name) + else: + if 'name' in host_dict: + hostname = host_dict['name'] + host = utils.get_db_object( + session, models.Host, False, name=hostname + ) + if host and host.machine_id != machine_id: + raise exception.InvalidParameter( + 'host name %s exists in host %s' % ( + hostname, host.id + ) + ) + host = utils.add_db_object( + session, models.Host, False, machine_id, + os=cluster.os, + os_installer=cluster.adapter.adapter_os_installer, + creator=cluster.creator, + **host_dict + ) + + if 'roles' in kwargs: + roles = kwargs['roles'] + if not roles: + flavor = cluster.flavor + if flavor and flavor.flavor_roles: + raise exception.InvalidParameter( + 'roles %s is empty' % roles + ) + + return utils.add_db_object( + session, models.ClusterHost, exception_when_existing, + cluster.id, host.id, **clusterhost_dict + ) + + +def _add_clusterhosts(session, cluster, machines): + for machine_dict in machines: + add_clusterhost_internal( + session, cluster, **machine_dict + ) + + +def _remove_clusterhosts(session, cluster, hosts): + utils.del_db_objects( + session, models.ClusterHost, + cluster_id=cluster.id, host_id=hosts + ) + + +def _set_clusterhosts(session, cluster, machines): + utils.del_db_objects( + session, models.ClusterHost, + cluster_id=cluster.id + ) + for machine_dict in machines: + add_clusterhost_internal( + session, cluster, True, **machine_dict + ) + + +@utils.supported_filters(optional_support_keys=SUPPORTED_CLUSTERHOST_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERHOSTS +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +def list_cluster_hosts(session, lister, cluster_id, **filters): + """Get cluster host info.""" + return utils.list_db_objects( + session, models.ClusterHost, cluster_id=cluster_id, + **filters + ) + + +@utils.supported_filters(optional_support_keys=SUPPORTED_CLUSTERHOST_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERHOSTS +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +def list_clusterhosts(session, lister, **filters): + """Get cluster host info.""" + return utils.list_db_objects( + session, models.ClusterHost, **filters + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERHOSTS +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +def get_cluster_host( + session, getter, cluster_id, host_id, + exception_when_missing=True, **kwargs +): + """Get clusterhost info.""" + return utils.get_db_object( + session, models.ClusterHost, + exception_when_missing, + cluster_id=cluster_id, host_id=host_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERHOSTS +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +def get_clusterhost( + session, getter, clusterhost_id, + exception_when_missing=True, **kwargs +): + """Get clusterhost info.""" + return utils.get_db_object( + session, models.ClusterHost, + exception_when_missing, + clusterhost_id=clusterhost_id + ) + + +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_CLUSTER_HOSTS +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +def add_cluster_host( + session, creator, cluster_id, + exception_when_existing=True, **kwargs +): + """Add cluster host.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + is_cluster_editable(session, cluster, creator) + return add_clusterhost_internal( + session, cluster, exception_when_existing, + **kwargs + ) + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_CLUSTER_HOSTS +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +def _update_clusterhost(session, updater, clusterhost, **kwargs): + def roles_validates(roles): + cluster_roles = [] + cluster = clusterhost.cluster + flavor = cluster.flavor + if not roles: + if flavor: + raise exception.InvalidParameter( + 'roles %s is empty' % roles + ) + else: + if not flavor: + raise exception.InvalidParameter( + 'not flavor in cluster %s' % cluster.name + ) + for flavor_roles in flavor.flavor_roles: + cluster_roles.append(flavor_roles.role.name) + for role in roles: + if role not in cluster_roles: + raise exception.InvalidParameter( + 'role %s is not in cluster roles %s' % ( + role, cluster_roles + ) + ) + + @utils.input_validates( + roles=roles_validates, + patched_roles=roles_validates + ) + def update_internal(clusterhost, **in_kwargs): + return utils.update_db_object( + session, clusterhost, **in_kwargs + ) + + is_cluster_editable(session, clusterhost.cluster, updater) + return update_internal( + clusterhost, **kwargs + ) + + +@utils.supported_filters( + optional_support_keys=UPDATED_CLUSTERHOST_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +def update_cluster_host( + session, updater, cluster_id, host_id, + **kwargs +): + """Update cluster host.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, cluster_id=cluster_id, host_id=host_id + ) + return _update_clusterhost(session, updater, clusterhost, **kwargs) + + +@utils.supported_filters( + optional_support_keys=UPDATED_CLUSTERHOST_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +def update_clusterhost( + session, updater, clusterhost_id, + **kwargs +): + """Update cluster host.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, clusterhost_id=clusterhost_id + ) + return _update_clusterhost(session, updater, clusterhost, **kwargs) + + +@utils.replace_filters( + roles='patched_roles' +) +@utils.supported_filters( + optional_support_keys=PATCHED_CLUSTERHOST_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +def patch_cluster_host( + session, updater, cluster_id, host_id, + **kwargs +): + """Update cluster host.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, cluster_id=cluster_id, host_id=host_id + ) + return _update_clusterhost(session, updater, clusterhost, **kwargs) + + +@utils.replace_filters( + roles='patched_roles' +) +@utils.supported_filters( + optional_support_keys=PATCHED_CLUSTERHOST_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +def patch_clusterhost( + session, updater, clusterhost_id, + **kwargs +): + """Update cluster host.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, clusterhost_id=clusterhost_id + ) + return _update_clusterhost(session, updater, clusterhost, **kwargs) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_CLUSTER_HOST +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +def del_cluster_host(session, deleter, cluster_id, host_id, **kwargs): + """Delete cluster host.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + is_cluster_editable( + session, clusterhost.cluster, deleter, + reinstall_distributed_system_set=True + ) + return utils.del_db_object( + session, clusterhost + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_CLUSTER_HOST +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +def del_clusterhost(session, deleter, clusterhost_id, **kwargs): + """Delete cluster host.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + clusterhost_id=clusterhost_id + ) + is_cluster_editable( + session, clusterhost.cluster, deleter, + reinstall_distributed_system_set=True + ) + return utils.del_db_object( + session, clusterhost + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERHOST_CONFIG +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_CONFIG_FIELDS) +def get_cluster_host_config(session, getter, cluster_id, host_id, **kwargs): + """Get clusterhost config.""" + return utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERHOST_CONFIG +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_DEPLOYED_CONFIG_FIELDS) +def get_cluster_host_deployed_config( + session, getter, cluster_id, host_id, **kwargs +): + """Get clusterhost deployed config.""" + return utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERHOST_CONFIG +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_CONFIG_FIELDS) +def get_clusterhost_config(session, getter, clusterhost_id, **kwargs): + """Get clusterhost config.""" + return utils.get_db_object( + session, models.ClusterHost, clusterhost_id=clusterhost_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_CLUSTERHOST_CONFIG +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_DEPLOYED_CONFIG_FIELDS) +def get_clusterhost_deployed_config(session, getter, clusterhost_id, **kwargs): + """Get clusterhost deployed config.""" + return utils.get_db_object( + session, models.ClusterHost, clusterhost_id=clusterhost_id + ) + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_CLUSTERHOST_CONFIG +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_CONFIG_FIELDS) +def _update_clusterhost_config(session, updater, clusterhost, **kwargs): + from compass.db.api import host as host_api + ignore_keys = [] + if not host_api.is_host_editable( + session, clusterhost.host, updater, + exception_when_not_editable=False + ): + ignore_keys.append('put_os_config') + + def os_config_validates(os_config): + host = clusterhost.host + metadata_api.validate_os_config( + session, os_config, host.os_id) + + def package_config_validates(package_config): + cluster = clusterhost.cluster + is_cluster_editable(session, cluster, updater) + metadata_api.validate_package_config( + session, package_config, cluster.adapter_id + ) + + @utils.supported_filters( + optional_support_keys=UPDATED_CLUSTERHOST_CONFIG_FIELDS, + ignore_support_keys=ignore_keys + ) + @utils.input_validates( + put_os_config=os_config_validates, + put_package_config=package_config_validates + ) + def update_config_internal(clusterihost, **in_kwargs): + return utils.update_db_object( + session, clusterhost, **in_kwargs + ) + + return update_config_internal( + clusterhost, **kwargs + ) + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_CLUSTERHOST_CONFIG +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_DEPLOYED_CONFIG_FIELDS) +def _update_clusterhost_deployed_config( + session, updater, clusterhost, **kwargs +): + from compass.db.api import host as host_api + ignore_keys = [] + if not host_api.is_host_editable( + session, clusterhost.host, updater, + exception_when_not_editable=False + ): + ignore_keys.append('deployed_os_config') + + def os_config_validates(os_config): + host = clusterhost.host + host_api.is_host_validated(session, host) + + def package_config_validates(package_config): + cluster = clusterhost.cluster + is_cluster_editable(session, cluster, updater) + is_clusterhost_validated(session, clusterhost) + + @utils.supported_filters( + optional_support_keys=UPDATED_CLUSTERHOST_DEPLOYED_CONFIG_FIELDS, + ignore_support_keys=ignore_keys + ) + @utils.input_validates( + deployed_os_config=os_config_validates, + deployed_package_config=package_config_validates + ) + def update_config_internal(clusterhost, **in_kwargs): + return utils.update_db_object( + session, clusterhost, **in_kwargs + ) + + return update_config_internal( + clusterhost, **kwargs + ) + + +@utils.replace_filters( + os_config='put_os_config', + package_config='put_package_config' +) +@database.run_in_session() +def update_cluster_host_config( + session, updater, cluster_id, host_id, **kwargs +): + """Update clusterhost config.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + return _update_clusterhost_config( + session, updater, clusterhost, **kwargs + ) + + +@utils.replace_filters( + os_config='deployed_os_config', + package_config='deployed_package_config' +) +@database.run_in_session() +def update_cluster_host_deployed_config( + session, updater, cluster_id, host_id, **kwargs +): + """Update clusterhost deployed config.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + return _update_clusterhost_deployed_config( + session, updater, clusterhost, **kwargs + ) + + +@utils.replace_filters( + os_config='put_os_config', + package_config='put_package_config' +) +@database.run_in_session() +def update_clusterhost_config( + session, updater, clusterhost_id, **kwargs +): + """Update clusterhost config.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, clusterhost_id=clusterhost_id + ) + return _update_clusterhost_config( + session, updater, clusterhost, **kwargs + ) + + +@utils.replace_filters( + os_config='deployed_os_config', + package_config='deployed_package_config' +) +@database.run_in_session() +def update_clusterhost_deployed_config( + session, updater, clusterhost_id, **kwargs +): + """Update clusterhost deployed config.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, clusterhost_id=clusterhost_id + ) + return _update_clusterhost_deployed_config( + session, updater, clusterhost, **kwargs + ) + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_CLUSTERHOST_CONFIG +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_CONFIG_FIELDS) +def _patch_clusterhost_config(session, updater, clusterhost, **kwargs): + from compass.db.api import host as host_api + ignore_keys = [] + if not host_api.is_host_editable( + session, clusterhost.host, updater, + exception_when_not_editable=False + ): + ignore_keys.append('patched_os_config') + + def os_config_validates(os_config): + host = clusterhost.host + metadata_api.validate_os_config(session, os_config, host.os_id) + + def package_config_validates(package_config): + cluster = clusterhost.cluster + is_cluster_editable(session, cluster, updater) + metadata_api.validate_package_config( + session, package_config, cluster.adapter_id + ) + + @utils.supported_filters( + optional_support_keys=PATCHED_CLUSTERHOST_CONFIG_FIELDS, + ignore_support_keys=ignore_keys + ) + @utils.output_validates( + os_config=os_config_validates, + package_config=package_config_validates + ) + def patch_config_internal(clusterhost, **in_kwargs): + return utils.update_db_object( + session, clusterhost, **in_kwargs + ) + + return patch_config_internal( + clusterhost, **kwargs + ) + + +@utils.replace_filters( + os_config='patched_os_config', + package_config='patched_package_config' +) +@database.run_in_session() +def patch_cluster_host_config( + session, updater, cluster_id, host_id, **kwargs +): + """patch clusterhost config.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + return _patch_clusterhost_config( + session, updater, clusterhost, **kwargs + ) + + +@utils.replace_filters( + os_config='patched_os_config', + package_config='patched_package_config' +) +@database.run_in_session() +def patch_clusterhost_config( + session, updater, clusterhost_id, **kwargs +): + """patch clusterhost config.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, clusterhost_id=clusterhost_id + ) + return _patch_clusterhost_config( + session, updater, clusterhost, **kwargs + ) + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_CLUSTERHOST_CONFIG +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_CONFIG_FIELDS) +def _delete_clusterhost_config( + session, deleter, clusterhost +): + from compass.db.api import host as host_api + ignore_keys = [] + if not host_api.is_host_editable( + session, clusterhost.host, deleter, + exception_when_not_editable=False + ): + ignore_keys.append('os_config') + + def package_config_validates(package_config): + is_cluster_editable(session, clusterhost.cluster, deleter) + + @utils.supported_filters( + optional_support_keys=['os_config', 'package_config'], + ignore_support_keys=ignore_keys + ) + @utils.output_validates( + package_config=package_config_validates + ) + def delete_config_internal(clusterhost, **in_kwargs): + return utils.update_db_object( + session, clusterhost, config_validated=False, + **in_kwargs + ) + + return delete_config_internal( + clusterhost, os_config={}, + package_config={} + ) + + +@utils.supported_filters([]) +@database.run_in_session() +def delete_cluster_host_config( + session, deleter, cluster_id, host_id +): + """Delete a clusterhost config.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + return _delete_clusterhost_config( + session, deleter, clusterhost + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_CLUSTERHOST_CONFIG +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_CONFIG_FIELDS) +def delete_clusterhost_config(session, deleter, clusterhost_id): + """Delet a clusterhost config.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, clusterhost_id=clusterhost_id + ) + return _delete_clusterhost_config( + session, deleter, clusterhost + ) + + +@utils.supported_filters( + optional_support_keys=['add_hosts', 'remove_hosts', 'set_hosts'] +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_CLUSTER_HOSTS +) +@utils.wrap_to_dict( + ['hosts'], + hosts=RESP_CLUSTERHOST_FIELDS +) +def update_cluster_hosts( + session, updater, cluster_id, add_hosts={}, set_hosts=None, + remove_hosts={} +): + """Update cluster hosts.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + is_cluster_editable(session, cluster, updater) + if remove_hosts: + _remove_clusterhosts(session, cluster, **remove_hosts) + if add_hosts: + _add_clusterhosts(session, cluster, **add_hosts) + if set_hosts is not None: + _set_clusterhosts(session, cluster, **set_hosts) + return { + 'hosts': cluster.clusterhosts + } + + +def validate_clusterhost(session, clusterhost): + roles = clusterhost.roles + if not roles: + flavor = clusterhost.cluster.flavor + if flavor and flavor.flavor_roles: + raise exception.InvalidParameter( + 'empty roles for clusterhost %s' % clusterhost.name + ) + + +def validate_cluster(session, cluster): + if not cluster.clusterhosts: + raise exception.InvalidParameter( + 'cluster %s does not have any hosts' % cluster.name + ) + flavor = cluster.flavor + if flavor: + cluster_roles = [ + flavor_role.role + for flavor_role in flavor.flavor_roles + ] + else: + cluster_roles = [] + necessary_roles = set([ + role.name for role in cluster_roles if not role.optional + ]) + clusterhost_roles = set([]) + interface_subnets = {} + for clusterhost in cluster.clusterhosts: + roles = clusterhost.roles + for role in roles: + clusterhost_roles.add(role.name) + host = clusterhost.host + for host_network in host.host_networks: + interface_subnets.setdefault( + host_network.interface, set([]) + ).add(host_network.subnet.subnet) + missing_roles = necessary_roles - clusterhost_roles + if missing_roles: + raise exception.InvalidParameter( + 'cluster %s have some roles %s not assigned to any host' % ( + cluster.name, list(missing_roles) + ) + ) + for interface, subnets in interface_subnets.items(): + if len(subnets) > 1: + raise exception.InvalidParameter( + 'cluster %s multi subnets %s in interface %s' % ( + cluster.name, list(subnets), interface + ) + ) + + +@utils.supported_filters(optional_support_keys=['review']) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_REVIEW_CLUSTER +) +@utils.wrap_to_dict( + RESP_REVIEW_FIELDS, + cluster=RESP_CONFIG_FIELDS, + hosts=RESP_CLUSTERHOST_CONFIG_FIELDS +) +def review_cluster(session, reviewer, cluster_id, review={}, **kwargs): + """review cluster.""" + from compass.db.api import host as host_api + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + is_cluster_editable(session, cluster, reviewer) + host_ids = review.get('hosts', []) + clusterhost_ids = review.get('clusterhosts', []) + clusterhosts = [] + for clusterhost in cluster.clusterhosts: + if ( + clusterhost.clusterhost_id in clusterhost_ids or + clusterhost.host_id in host_ids + ): + clusterhosts.append(clusterhost) + os_config = copy.deepcopy(cluster.os_config) + os_config = metadata_api.autofill_os_config( + session, os_config, cluster.os_id, + cluster=cluster + ) + if os_config: + metadata_api.validate_os_config( + session, os_config, cluster.os_id, True + ) + for clusterhost in clusterhosts: + host = clusterhost.host + if not host_api.is_host_editable( + session, host, reviewer, False + ): + logging.info( + 'ignore update host %s config ' + 'since it is not editable' % host.name + ) + continue + host_os_config = copy.deepcopy(host.os_config) + host_os_config = metadata_api.autofill_os_config( + session, host_os_config, host.os_id, + host=host + ) + deployed_os_config = util.merge_dict( + os_config, host_os_config + ) + metadata_api.validate_os_config( + session, deployed_os_config, host.os_id, True + ) + host_api.validate_host(session, host) + utils.update_db_object( + session, host, os_config=host_os_config, config_validated=True + ) + package_config = copy.deepcopy(cluster.package_config) + package_config = metadata_api.autofill_package_config( + session, package_config, cluster.adapter_id, + cluster=cluster + ) + if package_config: + metadata_api.validate_package_config( + session, package_config, cluster.adapter_id, True + ) + for clusterhost in clusterhosts: + clusterhost_package_config = copy.deepcopy( + clusterhost.package_config + ) + clusterhost_package_config = metadata_api.autofill_package_config( + session, clusterhost_package_config, + cluster.adapter_id, clusterhost=clusterhost + ) + deployed_package_config = util.merge_dict( + package_config, clusterhost_package_config + ) + metadata_api.validate_package_config( + session, deployed_package_config, + cluster.adapter_id, True + ) + validate_clusterhost(session, clusterhost) + utils.update_db_object( + session, clusterhost, + package_config=clusterhost_package_config, + config_validated=True + ) + validate_cluster(session, cluster) + utils.update_db_object( + session, cluster, os_config=os_config, package_config=package_config, + config_validated=True + ) + return { + 'cluster': cluster, + 'hosts': clusterhosts + } + + +@utils.supported_filters(optional_support_keys=['deploy']) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEPLOY_CLUSTER +) +@utils.wrap_to_dict( + RESP_DEPLOY_FIELDS, + cluster=RESP_CONFIG_FIELDS, + hosts=RESP_CLUSTERHOST_FIELDS +) +def deploy_cluster( + session, deployer, cluster_id, deploy={}, **kwargs +): + """deploy cluster.""" + from compass.db.api import host as host_api + from compass.tasks import client as celery_client + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + host_ids = deploy.get('hosts', []) + clusterhost_ids = deploy.get('clusterhosts', []) + clusterhosts = [] + for clusterhost in cluster.clusterhosts: + if ( + clusterhost.clusterhost_id in clusterhost_ids or + clusterhost.host_id in host_ids + ): + clusterhosts.append(clusterhost) + is_cluster_editable(session, cluster, deployer) + is_cluster_validated(session, cluster) + utils.update_db_object(session, cluster.state, state='INITIALIZED') + for clusterhost in clusterhosts: + host = clusterhost.host + if host_api.is_host_editable( + session, host, deployer, + exception_when_not_editable=False + ): + host_api.is_host_validated( + session, host + ) + utils.update_db_object(session, host.state, state='INITIALIZED') + if cluster.distributed_system: + is_clusterhost_validated(session, clusterhost) + utils.update_db_object( + session, clusterhost.state, state='INITIALIZED' + ) + + celery_client.celery.send_task( + 'compass.tasks.deploy_cluster', + ( + deployer.email, cluster_id, + [clusterhost.host_id for clusterhost in clusterhosts] + ) + ) + return { + 'status': 'deploy action sent', + 'cluster': cluster, + 'hosts': clusterhosts + } + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_GET_CLUSTER_STATE +) +@utils.wrap_to_dict(RESP_STATE_FIELDS) +def get_cluster_state(session, getter, cluster_id, **kwargs): + """Get cluster state info.""" + return utils.get_db_object( + session, models.Cluster, id=cluster_id + ).state_dict() + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_GET_CLUSTERHOST_STATE +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_STATE_FIELDS) +def get_cluster_host_state( + session, getter, cluster_id, host_id, **kwargs +): + """Get clusterhost state info.""" + return utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ).state_dict() + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_GET_CLUSTERHOST_STATE +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_STATE_FIELDS) +def get_cluster_host_self_state( + session, getter, cluster_id, host_id, **kwargs +): + """Get clusterhost state info.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + return utils.get_db_object( + session, models.ClusterHostState, + id=clusterhost.clusterhost_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_GET_CLUSTERHOST_STATE +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_STATE_FIELDS) +def get_clusterhost_state( + session, getter, clusterhost_id, **kwargs +): + """Get clusterhost state info.""" + return utils.get_db_object( + session, models.ClusterHost, + clusterhost_id=clusterhost_id + ).state_dict() + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_GET_CLUSTERHOST_STATE +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_STATE_FIELDS) +def get_clusterhost_self_state( + session, getter, clusterhost_id, **kwargs +): + """Get clusterhost state info.""" + return utils.get_db_object( + session, models.ClusterHost, + clusterhost_id=clusterhost_id + ).state + + +@utils.supported_filters( + optional_support_keys=UPDATED_CLUSTERHOST_STATE_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_CLUSTERHOST_STATE +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_STATE_FIELDS) +def update_cluster_host_state( + session, updater, cluster_id, host_id, **kwargs +): + """Update a clusterhost state.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + utils.update_db_object(session, clusterhost.state, **kwargs) + return clusterhost.state_dict() + + +@utils.supported_filters( + optional_support_keys=UPDATED_CLUSTERHOST_STATE_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_CLUSTERHOST_STATE +) +@utils.wrap_to_dict(RESP_CLUSTERHOST_STATE_FIELDS) +def update_clusterhost_state( + session, updater, clusterhost_id, **kwargs +): + """Update a clusterhost state.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + clusterhost_id=clusterhost_id + ) + utils.update_db_object(session, clusterhost.state, **kwargs) + return clusterhost.state_dict() + + +@utils.supported_filters( + optional_support_keys=UPDATED_CLUSTER_STATE_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_CLUSTER_STATE +) +@utils.wrap_to_dict(RESP_STATE_FIELDS) +def update_cluster_state( + session, updater, cluster_id, **kwargs +): + """Update a cluster state.""" + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) + utils.update_db_object(session, cluster.state, **kwargs) + return cluster.state_dict() + + +@utils.supported_filters([]) +@database.run_in_session() +@utils.wrap_to_dict(RESP_CLUSTERHOST_LOG_FIELDS) +def get_cluster_host_log_histories( + session, getter, cluster_id, host_id, **kwargs +): + """Get clusterhost log history.""" + return utils.list_db_objects( + session, models.ClusterHostLogHistory, + cluster_id=cluster_id, host_id=host_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@utils.wrap_to_dict(RESP_CLUSTERHOST_LOG_FIELDS) +def get_clusterhost_log_histories(session, getter, clusterhost_id, **kwargs): + """Get clusterhost log history.""" + return utils.list_db_objects( + session, models.ClusterHostLogHistory, clusterhost_id=clusterhost_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@utils.wrap_to_dict(RESP_CLUSTERHOST_LOG_FIELDS) +def get_cluster_host_log_history( + session, getter, cluster_id, host_id, filename, **kwargs +): + """Get clusterhost log history.""" + return utils.get_db_object( + session, models.ClusterHostLogHistory, + cluster_id=cluster_id, host_id=host_id, filename=filename + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@utils.wrap_to_dict(RESP_CLUSTERHOST_LOG_FIELDS) +def get_clusterhost_log_history( + session, getter, clusterhost_id, filename, **kwargs +): + """Get host log history.""" + return utils.get_db_object( + session, models.ClusterHostLogHistory, + clusterhost_id=clusterhost_id, filename=filename + ) + + +@utils.supported_filters( + optional_support_keys=UPDATED_CLUSTERHOST_LOG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@utils.wrap_to_dict(RESP_CLUSTERHOST_LOG_FIELDS) +def update_cluster_host_log_history( + session, updater, cluster_id, host_id, filename, **kwargs +): + """Update a host log history.""" + cluster_host_log_history = utils.get_db_object( + session, models.ClusterHostLogHistory, + cluster_id=cluster_id, host_id=host_id, filename=filename + ) + return utils.update_db_object(session, cluster_host_log_history, **kwargs) + + +@utils.supported_filters( + optional_support_keys=UPDATED_CLUSTERHOST_LOG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@utils.wrap_to_dict(RESP_CLUSTERHOST_LOG_FIELDS) +def update_clusterhost_log_history( + session, updater, clusterhost_id, filename, **kwargs +): + """Update a host log history.""" + clusterhost_log_history = utils.get_db_object( + session, models.ClusterHostLogHistory, + clusterhost_id=clusterhost_id, filename=filename + ) + return utils.update_db_object(session, clusterhost_log_history, **kwargs) + + +@utils.supported_filters( + ADDED_CLUSTERHOST_LOG_FIELDS, + optional_support_keys=UPDATED_CLUSTERHOST_LOG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@utils.wrap_to_dict(RESP_CLUSTERHOST_LOG_FIELDS) +def add_clusterhost_log_history( + session, creator, clusterhost_id, exception_when_existing=False, + filename=None, **kwargs +): + """add a host log history.""" + return utils.add_db_object( + session, models.ClusterHostLogHistory, exception_when_existing, + clusterhost_id, filename, **kwargs + ) + + +@utils.supported_filters( + ADDED_CLUSTERHOST_LOG_FIELDS, + optional_support_keys=UPDATED_CLUSTERHOST_LOG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@utils.wrap_to_dict(RESP_CLUSTERHOST_LOG_FIELDS) +def add_cluster_host_log_history( + session, creator, cluster_id, host_id, exception_when_existing=False, + filename=None, **kwargs +): + """add a host log history.""" + clusterhost = utils.get_db_object( + session, models.ClusterHost, + cluster_id=cluster_id, host_id=host_id + ) + return utils.add_db_object( + session, models.ClusterHostLogHistory, exception_when_existing, + clusterhost.clusterhost_id, filename, **kwargs + ) diff --git a/compass/db/api/database.py b/compass/db/api/database.py new file mode 100644 index 00000000..67e5289e --- /dev/null +++ b/compass/db/api/database.py @@ -0,0 +1,314 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Provider interface to manipulate database.""" +import functools +import logging +import netaddr + +from contextlib import contextmanager +from sqlalchemy import create_engine +from sqlalchemy.exc import IntegrityError +from sqlalchemy.exc import OperationalError +from sqlalchemy.orm import scoped_session +from sqlalchemy.orm import sessionmaker +from sqlalchemy.pool import NullPool +from sqlalchemy.pool import QueuePool +from sqlalchemy.pool import SingletonThreadPool +from sqlalchemy.pool import StaticPool +from threading import local + +from compass.db import exception +from compass.db import models +from compass.utils import logsetting +from compass.utils import setting_wrapper as setting + + +ENGINE = None +SESSION = sessionmaker(autocommit=False, autoflush=False) +SCOPED_SESSION = None +SESSION_HOLDER = local() + +POOL_MAPPING = { + 'instant': NullPool, + 'static': StaticPool, + 'queued': QueuePool, + 'thread_single': SingletonThreadPool +} + + +def init(database_url=None): + """Initialize database. + + :param database_url: string, database url. + """ + global ENGINE + global SCOPED_SESSION + if not database_url: + database_url = setting.SQLALCHEMY_DATABASE_URI + logging.info('init database %s', database_url) + root_logger = logging.getLogger() + fine_debug = root_logger.isEnabledFor(logsetting.LOGLEVEL_MAPPING['fine']) + if fine_debug: + logging.getLogger('sqlalchemy.engine').setLevel(logging.INFO) + finest_debug = root_logger.isEnabledFor( + logsetting.LOGLEVEL_MAPPING['finest'] + ) + if finest_debug: + logging.getLogger('sqlalchemy.dialects').setLevel(logging.INFO) + logging.getLogger('sqlalchemy.pool').setLevel(logging.INFO) + logging.getLogger('sqlalchemy.orm').setLevel(logging.INFO) + poolclass = POOL_MAPPING[setting.SQLALCHEMY_DATABASE_POOL_TYPE] + ENGINE = create_engine( + database_url, convert_unicode=True, + poolclass=poolclass + ) + SESSION.configure(bind=ENGINE) + SCOPED_SESSION = scoped_session(SESSION) + models.BASE.query = SCOPED_SESSION.query_property() + + +def in_session(): + """check if in database session scope.""" + if hasattr(SESSION_HOLDER, 'session'): + return True + else: + return False + + +@contextmanager +def session(): + """database session scope. + + .. note:: + To operate database, it should be called in database session. + """ + if not ENGINE: + init() + + if hasattr(SESSION_HOLDER, 'session'): + logging.error('we are already in session') + raise exception.DatabaseException('session already exist') + else: + new_session = SCOPED_SESSION() + setattr(SESSION_HOLDER, 'session', new_session) + + try: + yield new_session + new_session.commit() + except Exception as error: + new_session.rollback() + logging.error('failed to commit session') + logging.exception(error) + if isinstance(error, IntegrityError): + raise exception.NotAcceptable( + 'operation error in database' + ) + elif isinstance(error, OperationalError): + raise exception.DatabaseExcedption( + 'operation error in database' + ) + elif isinstance(error, exception.DatabaseException): + raise error + else: + raise exception.DatabaseException(str(error)) + finally: + new_session.close() + SCOPED_SESSION.remove() + delattr(SESSION_HOLDER, 'session') + + +def current_session(): + """Get the current session scope when it is called. + + :return: database session. + """ + try: + return SESSION_HOLDER.session + except Exception as error: + logging.error('It is not in the session scope') + logging.exception(error) + if isinstance(error, exception.DatabaseException): + raise error + else: + raise exception.DatabaseException(str(error)) + + +def run_in_session(): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **kwargs): + with session() as my_session: + return func(my_session, *args, **kwargs) + return wrapper + return decorator + + +def _setup_user_table(user_session): + """Initialize default user.""" + logging.info('setup user table') + from compass.db.api import user + user.add_user_internal( + user_session, + email=setting.COMPASS_ADMIN_EMAIL, + password=setting.COMPASS_ADMIN_PASSWORD, + is_admin=True + ) + + +def _setup_permission_table(permission_session): + """Initialize permission table.""" + logging.info('setup permission table.') + from compass.db.api import permission + permission.add_permissions_internal( + permission_session + ) + + +def _setup_switch_table(switch_session): + """Initialize switch table.""" + logging.info('setup switch table') + from compass.db.api import switch + switch.add_switch_internal( + switch_session, long(netaddr.IPAddress(setting.DEFAULT_SWITCH_IP)), + True, filters=['deny ports all'] + ) + + +def _setup_os_installers(installer_session): + """Initialize os_installer table.""" + logging.info('setup os installer table') + from compass.db.api import installer + installer.add_os_installers_internal( + installer_session + ) + + +def _setup_package_installers(installer_session): + """Initialize package_installer table.""" + logging.info('setup package installer table') + from compass.db.api import installer + installer.add_package_installers_internal( + installer_session + ) + + +def _setup_oses(os_session): + """Initialize os table.""" + logging.info('setup os table') + from compass.db.api import adapter + adapter.add_oses_internal( + os_session + ) + + +def _setup_distributed_systems(distributed_system_session): + """Initialize distributed system table.""" + logging.info('setup distributed system table') + from compass.db.api import adapter + adapter.add_distributed_systems_internal( + distributed_system_session + ) + + +def _setup_adapters(adapter_session): + """Initialize package adapter table.""" + logging.info('setup adapter table') + from compass.db.api import adapter + adapter.add_adapters_internal( + adapter_session) + + +def _setup_os_fields(field_session): + """Initialize os field table.""" + logging.info('setup os field table') + from compass.db.api import metadata + metadata.add_os_field_internal(field_session) + + +def _setup_package_fields(field_session): + """Initialize package field table.""" + logging.info('setup package field table') + from compass.db.api import metadata + metadata.add_package_field_internal(field_session) + + +def _setup_os_metadatas(metadata_session): + """Initialize os metadata table.""" + logging.info('setup os metadata table') + from compass.db.api import metadata + metadata.add_os_metadata_internal(metadata_session) + + +def _setup_package_metadatas(metadata_session): + """Initialize package metadata table.""" + logging.info('setup package metadata table') + from compass.db.api import metadata + metadata.add_package_metadata_internal(metadata_session) + + +def _setup_adapter_roles(role_session): + """Initialize adapter role table.""" + logging.info('setup adapter role table') + from compass.db.api import adapter + adapter.add_roles_internal(role_session) + + +def _setup_adapter_flavors(flavor_session): + """Initialize adapter flavor table.""" + logging.info('setup adapter flavor table') + from compass.db.api import adapter + adapter.add_flavors_internal(flavor_session) + + +def _update_others(other_session): + """Update other tables.""" + logging.info('update other tables') + from compass.db.api import utils + from compass.db import models + utils.update_db_objects( + other_session, models.Cluster + ) + utils.update_db_objects( + other_session, models.Host + ) + utils.update_db_objects( + other_session, models.ClusterHost + ) + + +@run_in_session() +def create_db(my_session): + """Create database.""" + models.BASE.metadata.create_all(bind=ENGINE) + _setup_permission_table(my_session) + _setup_user_table(my_session) + _setup_switch_table(my_session) + _setup_os_installers(my_session) + _setup_package_installers(my_session) + _setup_oses(my_session) + _setup_distributed_systems(my_session) + _setup_adapters(my_session) + _setup_adapter_roles(my_session) + _setup_adapter_flavors(my_session) + _setup_os_fields(my_session) + _setup_package_fields(my_session) + _setup_os_metadatas(my_session) + _setup_package_metadatas(my_session) + _update_others(my_session) + + +def drop_db(): + """Drop database.""" + models.BASE.metadata.drop_all(bind=ENGINE) diff --git a/compass/db/api/host.py b/compass/db/api/host.py new file mode 100644 index 00000000..a039e424 --- /dev/null +++ b/compass/db/api/host.py @@ -0,0 +1,919 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Host database operations.""" +import functools +import logging +import netaddr + +from compass.db.api import database +from compass.db.api import metadata_holder as metadata_api +from compass.db.api import permission +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import exception +from compass.db import models + + +SUPPORTED_FIELDS = ['name', 'os_name', 'owner', 'mac'] +SUPPORTED_MACHINE_HOST_FIELDS = ['mac', 'tag', 'location', 'os_name', 'os_id'] +SUPPORTED_NETOWORK_FIELDS = [ + 'interface', 'ip', 'is_mgmt', 'is_promiscuous' +] +RESP_FIELDS = [ + 'id', 'name', 'hostname', 'os_name', 'os_id', 'owner', 'mac', + 'switch_ip', 'port', 'switches', 'os_installer', 'ip', + 'reinstall_os', 'os_installed', 'tag', 'location', 'networks', + 'created_at', 'updated_at' +] +RESP_CLUSTER_FIELDS = [ + 'id', 'name', 'os_name', 'reinstall_distributed_system', + 'distributed_system_name', 'owner', 'adapter_id', + 'distributed_system_installed', + 'adapter_id', 'created_at', 'updated_at' +] +RESP_NETWORK_FIELDS = [ + 'id', 'ip', 'interface', 'netmask', 'is_mgmt', 'is_promiscuous', + 'created_at', 'updated_at' +] +RESP_CONFIG_FIELDS = [ + 'os_config', + 'config_setp', + 'config_validated', + 'networks', + 'created_at', + 'updated_at' +] +RESP_DEPLOYED_CONFIG_FIELDS = [ + 'deployed_os_config' +] +RESP_DEPLOY_FIELDS = [ + 'status', 'host' +] +UPDATED_FIELDS = ['host_id', 'name', 'reinstall_os'] +UPDATED_CONFIG_FIELDS = [ + 'put_os_config' +] +PATCHED_CONFIG_FIELDS = [ + 'patched_os_config' +] +UPDATED_DEPLOYED_CONFIG_FIELDS = [ + 'deployed_os_config' +] +ADDED_NETWORK_FIELDS = [ + 'interface', 'ip', 'subnet_id' +] +OPTIONAL_ADDED_NETWORK_FIELDS = ['is_mgmt', 'is_promiscuous'] +UPDATED_NETWORK_FIELDS = [ + 'interface', 'ip', 'subnet_id', 'subnet', 'is_mgmt', + 'is_promiscuous' +] +IGNORE_FIELDS = [ + 'id', 'created_at', 'updated_at' +] +RESP_STATE_FIELDS = [ + 'id', 'state', 'percentage', 'message', 'severity' +] +UPDATED_STATE_FIELDS = [ + 'state', 'percentage', 'message', 'severity' +] +RESP_LOG_FIELDS = [ + 'id', 'filename', 'position', 'partial_line', 'percentage', + 'message', 'severity', 'line_matcher_name' +] +ADDED_LOG_FIELDS = [ + 'filename' +] +UPDATED_LOG_FIELDS = [ + 'position', 'partial_line', 'percentage', + 'message', 'severity', 'line_matcher_name' +] + + +@utils.supported_filters(optional_support_keys=SUPPORTED_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOSTS +) +@utils.wrap_to_dict(RESP_FIELDS) +def list_hosts(session, lister, **filters): + """List hosts.""" + return utils.list_db_objects( + session, models.Host, **filters + ) + + +@utils.supported_filters( + optional_support_keys=SUPPORTED_MACHINE_HOST_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOSTS +) +@utils.output_filters( + missing_ok=True, + tag=utils.general_filter_callback, + location=utils.general_filter_callback, + os_name=utils.general_filter_callback, + os_id=utils.general_filter_callback +) +@utils.wrap_to_dict(RESP_FIELDS) +def list_machines_or_hosts(session, lister, **filters): + """List hosts.""" + machines = utils.list_db_objects( + session, models.Machine, **filters + ) + machines_or_hosts = [] + for machine in machines: + host = machine.host + if host: + machines_or_hosts.append(host) + else: + machines_or_hosts.append(machine) + return machines_or_hosts + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOSTS +) +@utils.wrap_to_dict(RESP_FIELDS) +def get_host( + session, getter, host_id, + exception_when_missing=True, **kwargs +): + """get host info.""" + return utils.get_db_object( + session, models.Host, + exception_when_missing, id=host_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOSTS +) +@utils.wrap_to_dict(RESP_FIELDS) +def get_machine_or_host( + session, getter, host_id, + exception_when_missing=True, **kwargs +): + """get host info.""" + machine = utils.get_db_object( + session, models.Machine, + exception_when_missing, id=host_id + ) + if not machine: + return None + host = machine.host + if host: + return host + else: + return machine + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOST_CLUSTERS +) +@utils.wrap_to_dict(RESP_CLUSTER_FIELDS) +def get_host_clusters(session, getter, host_id, **kwargs): + """get host clusters.""" + host = utils.get_db_object( + session, models.Host, id=host_id + ) + return [clusterhost.cluster for clusterhost in host.clusterhosts] + + +def _conditional_exception(host, exception_when_not_editable): + if exception_when_not_editable: + raise exception.Forbidden( + 'host %s is not editable' % host.name + ) + else: + return False + + +def is_host_validated(session, host): + if not host.config_validated: + raise exception.Forbidden( + 'host %s is not validated' % host.name + ) + + +def is_host_editable( + session, host, user, + reinstall_os_set=False, exception_when_not_editable=True +): + if reinstall_os_set: + if host.state.state == 'INSTALLING': + return _conditional_exception( + host, exception_when_not_editable + ) + elif not host.reinstall_os: + return _conditional_exception( + host, exception_when_not_editable + ) + if not user.is_admin and host.creator_id != user.id: + return _conditional_exception( + host, exception_when_not_editable + ) + return True + + +def validate_host(session, host): + if not host.hostname: + raise exception.Invalidparameter( + 'host %s does not set hostname' % host.name + ) + if not host.host_networks: + raise exception.InvalidParameter( + 'host %s does not have any network' % host.name + ) + mgmt_interface_set = False + for host_network in host.host_networks: + if host_network.is_mgmt: + if mgmt_interface_set: + raise exception.InvalidParameter( + 'host %s multi interfaces set mgmt ' % host.name + ) + if host_network.is_promiscuous: + raise exception.InvalidParameter( + 'host %s interface %s is mgmt but promiscuous' % ( + host.name, host_network.interface + ) + ) + mgmt_interface_set = True + if not mgmt_interface_set: + raise exception.InvalidParameter( + 'host %s has no mgmt interface' % host.name + ) + + +@utils.supported_filters( + optional_support_keys=UPDATED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(name=utils.check_name) +@utils.wrap_to_dict(RESP_FIELDS) +def _update_host(session, updater, host_id, **kwargs): + """Update a host internal.""" + host = utils.get_db_object( + session, models.Host, id=host_id + ) + is_host_editable( + session, host, updater, + reinstall_os_set=kwargs.get('reinstall_os', False) + ) + if 'name' in kwargs: + hostname = kwargs['name'] + host_by_name = utils.get_db_object( + session, models.Host, False, name=hostname + ) + if host_by_name and host_by_name.id != host.id: + raise exception.InvalidParameter( + 'hostname %s is already exists in host %s' % ( + hostname, host_by_name.id + ) + ) + return utils.update_db_object(session, host, **kwargs) + + +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_HOST +) +def update_host(session, updater, host_id, **kwargs): + """Update a host.""" + return _update_host(session, updater, host_id=host_id, **kwargs) + + +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_HOST +) +def update_hosts(session, updater, data=[]): + hosts = [] + for host_data in data: + hosts.append(_update_host(session, updater, **host_data)) + return hosts + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_HOST +) +@utils.wrap_to_dict(RESP_FIELDS) +def del_host(session, deleter, host_id, **kwargs): + """Delete a host.""" + host = utils.get_db_object( + session, models.Host, id=host_id + ) + is_host_editable( + session, host, deleter, + reinstall_os_set=True + ) + return utils.del_db_object(session, host) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOST_CONFIG +) +@utils.wrap_to_dict(RESP_CONFIG_FIELDS) +def get_host_config(session, getter, host_id, **kwargs): + """Get host config.""" + return utils.get_db_object( + session, models.Host, id=host_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOST_CONFIG +) +@utils.wrap_to_dict(RESP_DEPLOYED_CONFIG_FIELDS) +def get_host_deployed_config(session, getter, host_id, **kwargs): + """Get host deployed config.""" + return utils.get_db_object( + session, models.Host, id=host_id + ) + + +@utils.replace_filters( + os_config='deployed_os_config' +) +@utils.supported_filters( + UPDATED_DEPLOYED_CONFIG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_HOST_CONFIG +) +@utils.wrap_to_dict(RESP_CONFIG_FIELDS) +def update_host_deployed_config(session, updater, host_id, **kwargs): + """Update host deployed config.""" + host = utils.get_db_object( + session, models.Host, id=host_id + ) + is_host_editable(session, host, updater) + is_host_validated(session, host) + return utils.update_db_object(session, host, **kwargs) + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_HOST_CONFIG +) +@utils.wrap_to_dict(RESP_CONFIG_FIELDS) +def _update_host_config(session, updater, host, **kwargs): + """Update host config.""" + is_host_editable(session, host, updater) + return utils.update_db_object(session, host, **kwargs) + + +@utils.replace_filters( + os_config='put_os_config' +) +@utils.supported_filters( + UPDATED_CONFIG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +def update_host_config(session, updater, host_id, **kwargs): + host = utils.get_db_object( + session, models.Host, id=host_id + ) + + def os_config_validates(config): + metadata_api.validate_os_config( + session, config, os_id=host.os_id + ) + + @utils.input_validates( + put_os_config=os_config_validates, + ) + def update_config_internal(host, **in_kwargs): + return _update_host_config( + session, updater, host, **kwargs + ) + + return update_config_internal( + host, **kwargs + ) + + +@utils.replace_filters( + os_config='patched_os_config' +) +@utils.supported_filters( + PATCHED_CONFIG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +def patch_host_config(session, updater, host_id, **kwargs): + host = utils.get_db_object( + session, models.Host, id=host_id + ) + + def os_config_validates(config): + metadata_api.validate_os_config( + session, config, os_id=host.os_id + ) + + @utils.output_validates( + os_config=os_config_validates, + ) + def patch_config_internal(host, **in_kwargs): + return _update_host_config( + session, updater, host, **in_kwargs + ) + + return patch_config_internal( + host, **kwargs + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_HOST_CONFIG +) +@utils.wrap_to_dict(RESP_CONFIG_FIELDS) +def del_host_config(session, deleter, host_id): + """delete a host config.""" + host = utils.get_db_object( + session, models.Host, id=host_id + ) + is_host_editable(session, host, deleter) + return utils.update_db_object( + session, host, os_config={}, config_validated=False + ) + + +@utils.supported_filters( + optional_support_keys=SUPPORTED_NETOWORK_FIELDS +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOST_NETWORKS +) +@utils.wrap_to_dict(RESP_NETWORK_FIELDS) +def list_host_networks(session, lister, host_id, **filters): + """Get host networks.""" + return utils.list_db_objects( + session, models.HostNetwork, + host_id=host_id, **filters + ) + + +@utils.supported_filters( + optional_support_keys=SUPPORTED_NETOWORK_FIELDS +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOST_NETWORKS +) +@utils.wrap_to_dict(RESP_NETWORK_FIELDS) +def list_hostnetworks(session, lister, **filters): + """Get host networks.""" + return utils.list_db_objects( + session, models.HostNetwork, **filters + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOST_NETWORKS +) +@utils.wrap_to_dict(RESP_NETWORK_FIELDS) +def get_host_network( + session, getter, host_id, + host_network_id, **kwargs +): + """Get host network.""" + host_network = utils.get_db_object( + session, models.HostNetwork, + id=host_network_id + ) + if host_network.host_id != host_id: + raise exception.RecordNotExists( + 'host %s does not own host network %s' % ( + host_id, host_network_id + ) + ) + return host_network + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_HOST_NETWORKS +) +@utils.wrap_to_dict(RESP_NETWORK_FIELDS) +def get_hostnetwork(session, getter, host_network_id, **kwargs): + """Get host network.""" + return utils.get_db_object( + session, models.HostNetwork, + id=host_network_id + ) + + +@utils.supported_filters( + ADDED_NETWORK_FIELDS, + optional_support_keys=OPTIONAL_ADDED_NETWORK_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates( + ip=utils.check_ip +) +@utils.wrap_to_dict(RESP_NETWORK_FIELDS) +def _add_host_network( + session, creator, host_id, exception_when_existing=True, + interface=None, ip=None, **kwargs +): + host = utils.get_db_object( + session, models.Host, id=host_id + ) + ip_int = long(netaddr.IPAddress(ip)) + host_network = utils.get_db_object( + session, models.HostNetwork, False, + ip_int=ip_int + ) + if ( + host_network and not ( + host_network.host_id == host_id and + host_network.interface == interface + ) + ): + raise exception.InvalidParameter( + 'ip %s exists in host network %s' % ( + ip, host_network.id + ) + ) + is_host_editable(session, host, creator) + return utils.add_db_object( + session, models.HostNetwork, + exception_when_existing, + host_id, interface, ip=ip, **kwargs + ) + + +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_HOST_NETWORK +) +def add_host_network( + session, creator, host_id, + exception_when_existing=True, + interface=None, **kwargs +): + """Create a host network.""" + return _add_host_network( + session, creator, host_id, exception_when_existing, + interface=interface, **kwargs + ) + + +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_HOST_NETWORK +) +def add_host_networks( + session, creator, + exception_when_existing=False, + data=[] +): + """Create host networks.""" + hosts = [] + failed_hosts = [] + for host_data in data: + host_id = host_data['host_id'] + networks = host_data['networks'] + host_networks = [] + failed_host_networks = [] + for network in networks: + try: + host_networks.append(_add_host_network( + session, creator, host_id, exception_when_existing, + **network + )) + except exception.DatabaseException as error: + logging.exception(error) + failed_host_networks.append(network) + if host_networks: + hosts.append({'host_id': host_id, 'networks': host_networks}) + if failed_host_networks: + failed_hosts.append({ + 'host_id': host_id, 'networks': failed_host_networks + }) + return { + 'hosts': hosts, + 'failed_hosts': failed_hosts + } + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_HOST_NETWORK +) +@utils.wrap_to_dict(RESP_NETWORK_FIELDS) +def _update_host_network( + session, updater, host_network, **kwargs +): + if 'interface' in kwargs: + interface = kwargs['interface'] + host_network_by_interface = utils.get_db_object( + session, models.HostNetwork, False, + host_id=host_network.host_id, + interface=interface + ) + if ( + host_network_by_interface and + host_network_by_interface.id != host_network.id + ): + raise exception.InvalidParameter( + 'interface %s exists in host network %s' % ( + interface, host_network_by_interface.id + ) + ) + if 'ip' in kwargs: + ip = kwargs['ip'] + ip_int = long(netaddr.IPAddress(ip)) + host_network_by_ip = utils.get_db_object( + session, models.HostNetwork, False, + ip_int=ip_int + ) + if host_network_by_ip and host_network_by_ip.id != host_network.id: + raise exception.InvalidParameter( + 'ip %s exist in host network %s' % ( + ip, host_network_by_ip.id + ) + ) + is_host_editable(session, host_network.host, updater) + return utils.update_db_object(session, host_network, **kwargs) + + +@utils.supported_filters( + optional_support_keys=UPDATED_NETWORK_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates( + ip=utils.check_ip +) +@database.run_in_session() +def update_host_network( + session, updater, host_id, host_network_id, **kwargs +): + """Update a host network.""" + host_network = utils.get_db_object( + session, models.HostNetwork, + id=host_network_id + ) + if host_network.host_id != host_id: + raise exception.RecordNotExists( + 'host %s does not own host network %s' % ( + host_id, host_network_id + ) + ) + return _update_host_network( + session, updater, host_network, **kwargs + ) + + +@utils.supported_filters( + optional_support_keys=UPDATED_NETWORK_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates( + ip=utils.check_ip +) +@database.run_in_session() +def update_hostnetwork(session, updater, host_network_id, **kwargs): + """Update a host network.""" + host_network = utils.get_db_object( + session, models.HostNetwork, id=host_network_id + ) + return _update_host_network( + session, updater, host_network, **kwargs + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_HOST_NETWORK +) +@utils.wrap_to_dict(RESP_NETWORK_FIELDS) +def del_host_network(session, deleter, host_id, host_network_id, **kwargs): + """Delete a host network.""" + host_network = utils.get_db_object( + session, models.HostNetwork, + id=host_network_id + ) + if host_network.host_id != host_id: + raise exception.RecordNotExists( + 'host %s does not own host network %s' % ( + host_id, host_network_id + ) + ) + is_host_editable(session, host_network.host, deleter) + return utils.del_db_object(session, host_network) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_HOST_NETWORK +) +@utils.wrap_to_dict(RESP_NETWORK_FIELDS) +def del_hostnetwork(session, deleter, host_network_id, **kwargs): + """Delete a host network.""" + host_network = utils.get_db_object( + session, models.HostNetwork, id=host_network_id + ) + is_host_editable(session, host_network.host, deleter) + return utils.del_db_object(session, host_network) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_GET_HOST_STATE +) +@utils.wrap_to_dict(RESP_STATE_FIELDS) +def get_host_state(session, getter, host_id, **kwargs): + """Get host state info.""" + return utils.get_db_object( + session, models.Host, id=host_id + ).state_dict() + + +@utils.supported_filters( + optional_support_keys=UPDATED_STATE_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_HOST_STATE +) +@utils.wrap_to_dict(RESP_STATE_FIELDS) +def update_host_state(session, updater, host_id, **kwargs): + """Update a host state.""" + host = utils.get_db_object( + session, models.Host, id=host_id + ) + utils.update_db_object(session, host.state, **kwargs) + return host.state_dict() + + +@utils.supported_filters([]) +@database.run_in_session() +@utils.wrap_to_dict(RESP_LOG_FIELDS) +def get_host_log_histories(session, getter, host_id, **kwargs): + """Get host log history.""" + return utils.list_db_objects( + session, models.HostLogHistory, id=host_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@utils.wrap_to_dict(RESP_LOG_FIELDS) +def get_host_log_history(session, getter, host_id, filename, **kwargs): + """Get host log history.""" + return utils.get_db_object( + session, models.HostLogHistory, id=host_id, filename=filename + ) + + +@utils.supported_filters( + optional_support_keys=UPDATED_LOG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@utils.wrap_to_dict(RESP_LOG_FIELDS) +def update_host_log_history(session, updater, host_id, filename, **kwargs): + """Update a host log history.""" + host_log_history = utils.get_db_object( + session, models.HostLogHistory, id=host_id, filename=filename + ) + return utils.update_db_object(session, host_log_history, **kwargs) + + +@utils.supported_filters( + ADDED_LOG_FIELDS, + optional_support_keys=UPDATED_LOG_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@utils.wrap_to_dict(RESP_LOG_FIELDS) +def add_host_log_history( + session, creator, host_id, exception_when_existing=False, + filename=None, **kwargs +): + """add a host log history.""" + return utils.add_db_object( + session, models.HostLogHistory, exception_when_existing, + host_id, filename, **kwargs + ) + + +@utils.supported_filters(optional_support_keys=['poweron']) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEPLOY_HOST +) +@utils.wrap_to_dict( + RESP_DEPLOY_FIELDS, + host=RESP_CONFIG_FIELDS +) +def poweron_host( + session, deployer, host_id, poweron={}, **kwargs +): + """power on host.""" + from compass.tasks import client as celery_client + host = utils.get_db_object( + session, models.Host, id=host_id + ) + is_host_validated(session, host) + celery_client.celery.send_task( + 'compass.tasks.poweron_host', + (host_id,) + ) + return { + 'status': 'poweron %s action sent' % host.name, + 'host': host + } + + +@utils.supported_filters(optional_support_keys=['poweroff']) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEPLOY_HOST +) +@utils.wrap_to_dict( + RESP_DEPLOY_FIELDS, + host=RESP_CONFIG_FIELDS +) +def poweroff_host( + session, deployer, host_id, poweroff={}, **kwargs +): + """power off host.""" + from compass.tasks import client as celery_client + host = utils.get_db_object( + session, models.Host, id=host_id + ) + is_host_validated(session, host) + celery_client.celery.send_task( + 'compass.tasks.poweroff_host', + (host_id,) + ) + return { + 'status': 'poweroff %s action sent' % host.name, + 'host': host + } + + +@utils.supported_filters(optional_support_keys=['reset']) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEPLOY_HOST +) +@utils.wrap_to_dict( + RESP_DEPLOY_FIELDS, + host=RESP_CONFIG_FIELDS +) +def reset_host( + session, deployer, host_id, reset={}, **kwargs +): + """reset host.""" + from compass.tasks import client as celery_client + host = utils.get_db_object( + session, models.Host, id=host_id + ) + is_host_validated(session, host) + celery_client.celery.send_task( + 'compass.tasks.reset_host', + (host_id,) + ) + return { + 'status': 'reset %s action sent' % host.name, + 'host': host + } diff --git a/compass/db/api/installer.py b/compass/db/api/installer.py new file mode 100644 index 00000000..59ab19b9 --- /dev/null +++ b/compass/db/api/installer.py @@ -0,0 +1,53 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Adapter database operations.""" +import logging +import os + +from compass.db.api import database +from compass.db.api import utils +from compass.db import exception +from compass.db import models + +from compass.utils import setting_wrapper as setting +from compass.utils import util + + +def _add_installers(session, model, configs, exception_when_existing=True): + installers = [] + for config in configs: + installers.append(utils.add_db_object( + session, model, + exception_when_existing, config['INSTANCE_NAME'], + name=config['NAME'], + settings=config.get('SETTINGS', {}) + )) + return installers + + +def add_os_installers_internal(session, exception_when_existing=True): + configs = util.load_configs(setting.OS_INSTALLER_DIR) + return _add_installers( + session, models.OSInstaller, configs, + exception_when_existing=exception_when_existing + ) + + +def add_package_installers_internal(session, exception_when_existing=True): + configs = util.load_configs(setting.PACKAGE_INSTALLER_DIR) + return _add_installers( + session, models.PackageInstaller, configs, + exception_when_existing=exception_when_existing + ) diff --git a/compass/db/api/machine.py b/compass/db/api/machine.py new file mode 100644 index 00000000..b94c63f4 --- /dev/null +++ b/compass/db/api/machine.py @@ -0,0 +1,212 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Switch database operations.""" +import logging + +from compass.db.api import database +from compass.db.api import permission +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import exception +from compass.db import models + +from compass.utils import setting_wrapper as setting +from compass.utils import util + + +SUPPORTED_FIELDS = ['mac', 'tag', 'location'] +IGNORE_FIELDS = ['id', 'created_at', 'updated_at'] +UPDATED_FIELDS = ['ipmi_credentials', 'tag', 'location'] +PATCHED_FIELDS = [ + 'patched_ipmi_credentials', 'patched_tag', + 'patched_location' +] +RESP_FIELDS = [ + 'id', 'mac', 'ipmi_credentials', 'switches', 'switch_ip', + 'port', 'vlans', + 'tag', 'location', 'created_at', 'updated_at' +] +RESP_DEPLOY_FIELDS = [ + 'status', 'machine' +] + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_MACHINES +) +@utils.wrap_to_dict(RESP_FIELDS) +def get_machine( + session, getter, machine_id, + exception_when_missing=True, + **kwargs +): + """get field dict of a machine.""" + return utils.get_db_object( + session, models.Machine, + exception_when_missing, id=machine_id + ) + + +@utils.supported_filters( + optional_support_keys=SUPPORTED_FIELDS +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_MACHINES +) +@utils.output_filters( + tag=utils.general_filter_callback, + location=utils.general_filter_callback +) +@utils.wrap_to_dict(RESP_FIELDS) +def list_machines(session, lister, **filters): + """List machines.""" + return utils.list_db_objects( + session, models.Machine, **filters + ) + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_MACHINE +) +@utils.wrap_to_dict(RESP_FIELDS) +def _update_machine(session, updater, machine_id, **kwargs): + """Update a machine.""" + machine = utils.get_db_object(session, models.Machine, id=machine_id) + return utils.update_db_object(session, machine, **kwargs) + + +@utils.supported_filters( + optional_support_keys=UPDATED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(ipmi_credentials=utils.check_ipmi_credentials) +@database.run_in_session() +def update_machine(session, updater, machine_id, **kwargs): + return _update_machine( + session, updater, machine_id, **kwargs + ) + + +@utils.replace_filters( + ipmi_credentials='patched_ipmi_credentials', + tag='patched_tag', + location='patched_location' +) +@utils.supported_filters( + optional_support_keys=PATCHED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@database.run_in_session() +@utils.output_validates(ipmi_credentials=utils.check_ipmi_credentials) +def patch_machine(session, updater, machine_id, **kwargs): + return _update_machine( + session, updater, machine_id, **kwargs + ) + + +@utils.supported_filters() +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_MACHINE +) +@utils.wrap_to_dict(RESP_FIELDS) +def del_machine(session, deleter, machine_id, **kwargs): + """Delete a machine.""" + machine = utils.get_db_object(session, models.Machine, id=machine_id) + return utils.del_db_object(session, machine) + + +@utils.supported_filters(optional_support_keys=['poweron']) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEPLOY_HOST +) +@utils.wrap_to_dict( + RESP_DEPLOY_FIELDS, + machine=RESP_FIELDS +) +def poweron_machine( + session, deployer, machine_id, poweron={}, **kwargs +): + """power on machine.""" + from compass.tasks import client as celery_client + machine = utils.get_db_object( + session, models.Machine, id=machine_id + ) + celery_client.celery.send_task( + 'compass.tasks.poweron_machine', + (machine_id,) + ) + return { + 'status': 'poweron %s action sent' % machine.mac, + 'machine': machine + } + + +@utils.supported_filters(optional_support_keys=['poweroff']) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEPLOY_HOST +) +@utils.wrap_to_dict( + RESP_DEPLOY_FIELDS, + machine=RESP_FIELDS +) +def poweroff_machine( + session, deployer, machine_id, poweroff={}, **kwargs +): + """power off machine.""" + from compass.tasks import client as celery_client + machine = utils.get_db_object( + session, models.Machine, id=machine_id + ) + celery_client.celery.send_task( + 'compass.tasks.poweroff_machine', + (machine_id,) + ) + return { + 'status': 'poweroff %s action sent' % machine.mac, + 'machine': machine + } + + +@utils.supported_filters(optional_support_keys=['reset']) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEPLOY_HOST +) +@utils.wrap_to_dict( + RESP_DEPLOY_FIELDS, + machine=RESP_FIELDS +) +def reset_machine( + session, deployer, machine_id, reset={}, **kwargs +): + """reset machine.""" + from compass.tasks import client as celery_client + machine = utils.get_db_object( + session, models.Machine, id=machine_id + ) + celery_client.celery.send_task( + 'compass.tasks.reset_machine', + (machine_id,) + ) + return { + 'status': 'reset %s action sent' % machine.mac, + 'machine': machine + } diff --git a/compass/db/api/metadata.py b/compass/db/api/metadata.py new file mode 100644 index 00000000..dfa0813f --- /dev/null +++ b/compass/db/api/metadata.py @@ -0,0 +1,505 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Metadata related database operations.""" +import copy +import logging +import string + +from compass.db.api import database +from compass.db.api import utils +from compass.db import callback as metadata_callback +from compass.db import exception +from compass.db import models +from compass.db import validator as metadata_validator + + +from compass.utils import setting_wrapper as setting +from compass.utils import util + + +def _add_field_internal(session, model, configs): + fields = [] + for config in configs: + if not isinstance(config, dict): + raise exception.InvalidParameter( + 'config %s is not dict' % config + ) + fields.append(utils.add_db_object( + session, model, False, + config['NAME'], + field_type=config.get('FIELD_TYPE', basestring), + display_type=config.get('DISPLAY_TYPE', 'text'), + validator=config.get('VALIDATOR', None), + js_validator=config.get('JS_VALIDATOR', None), + description=config.get('DESCRIPTION', None) + )) + return fields + + +def add_os_field_internal(session): + env_locals = {} + env_locals.update(metadata_validator.VALIDATOR_LOCALS) + env_locals.update(metadata_callback.CALLBACK_LOCALS) + configs = util.load_configs( + setting.OS_FIELD_DIR, + env_locals=env_locals + ) + return _add_field_internal( + session, models.OSConfigField, configs + ) + + +def add_package_field_internal(session): + env_locals = {} + env_locals.update(metadata_validator.VALIDATOR_LOCALS) + env_locals.update(metadata_callback.CALLBACK_LOCALS) + configs = util.load_configs( + setting.PACKAGE_FIELD_DIR, + env_locals=env_locals + ) + return _add_field_internal( + session, models.PackageConfigField, configs + ) + + +def _add_metadata( + session, field_model, metadata_model, id, path, name, config, + exception_when_existing=True, parent=None, **kwargs +): + if not isinstance(config, dict): + raise exception.InvalidParameter( + '%s config %s is not dict' % (path, config) + ) + metadata_self = config.get('_self', {}) + if 'field' in metadata_self: + field = utils.get_db_object( + session, field_model, field=metadata_self['field'] + ) + else: + field = None + mapping_to_template = metadata_self.get('mapping_to', None) + if mapping_to_template: + mapping_to = string.Template( + mapping_to_template + ).safe_substitute( + **kwargs + ) + else: + mapping_to = None + metadata = utils.add_db_object( + session, metadata_model, exception_when_existing, + id, path, name=name, parent=parent, field=field, + display_name=metadata_self.get('display_name', name), + description=metadata_self.get('description', None), + is_required=metadata_self.get('is_required', False), + required_in_whole_config=metadata_self.get( + 'required_in_whole_config', False), + mapping_to=mapping_to, + validator=metadata_self.get('validator', None), + js_validator=metadata_self.get('js_validator', None), + default_value=metadata_self.get('default_value', None), + default_callback=metadata_self.get('default_callback', None), + default_callback_params=metadata_self.get( + 'default_callback_params', {}), + options=metadata_self.get('options', None), + options_callback=metadata_self.get('options_callback', None), + options_callback_params=metadata_self.get( + 'options_callback_params', {}), + autofill_callback=metadata_self.get( + 'autofill_callback', None), + autofill_callback_params=metadata_self.get( + 'autofill_callback_params', {}), + required_in_options=metadata_self.get( + 'required_in_options', False), + **kwargs + ) + key_extensions = metadata_self.get('key_extensions', {}) + general_keys = [] + for key, value in config.items(): + if key.startswith('_'): + continue + if key in key_extensions: + if not key.startswith('$'): + raise exception.InvalidParameter( + '%s subkey %s should start with $' % ( + path, key + ) + ) + extended_keys = key_extensions[key] + for extended_key in extended_keys: + if extended_key.startswith('$'): + raise exception.InvalidParameter( + '%s extended key %s should not start with $' % ( + path, extended_key + ) + ) + sub_kwargs = dict(kwargs) + sub_kwargs[key[1:]] = extended_key + _add_metadata( + session, field_model, metadata_model, + id, '%s/%s' % (path, extended_key), extended_key, value, + exception_when_existing=exception_when_existing, + parent=metadata, **sub_kwargs + ) + else: + if key.startswith('$'): + general_keys.append(key) + _add_metadata( + session, field_model, metadata_model, + id, '%s/%s' % (path, key), key, value, + exception_when_existing=exception_when_existing, + parent=metadata, **kwargs + ) + if len(general_keys) > 1: + raise exception.InvalidParameter( + 'foud multi general keys in %s: %s' % ( + path, general_keys + ) + ) + return metadata + + +def add_os_metadata_internal(session, exception_when_existing=True): + os_metadatas = [] + env_locals = {} + env_locals.update(metadata_validator.VALIDATOR_LOCALS) + env_locals.update(metadata_callback.CALLBACK_LOCALS) + configs = util.load_configs( + setting.OS_METADATA_DIR, + env_locals=env_locals + ) + for config in configs: + os = utils.get_db_object( + session, models.OperatingSystem, name=config['OS'] + ) + for key, value in config['METADATA'].items(): + os_metadatas.append(_add_metadata( + session, models.OSConfigField, + models.OSConfigMetadata, + os.id, key, key, value, + exception_when_existing=exception_when_existing, + parent=None + )) + return os_metadatas + + +def add_package_metadata_internal(session, exception_when_existing=True): + package_metadatas = [] + env_locals = {} + env_locals.update(metadata_validator.VALIDATOR_LOCALS) + env_locals.update(metadata_callback.CALLBACK_LOCALS) + configs = util.load_configs( + setting.PACKAGE_METADATA_DIR, + env_locals=env_locals + ) + for config in configs: + adapter = utils.get_db_object( + session, models.Adapter, name=config['ADAPTER'] + ) + for key, value in config['METADATA'].items(): + package_metadatas.append(_add_metadata( + session, models.PackageConfigField, + models.PackageConfigMetadata, + adapter.id, key, key, value, + exception_when_existing=exception_when_existing, + parent=None + )) + return package_metadatas + + +def _filter_metadata(metadata, **kwargs): + if not isinstance(metadata, dict): + return metadata + filtered_metadata = {} + for key, value in metadata.items(): + if key == '_self': + default_value = value.get('default_value', None) + if default_value is None: + default_callback_params = value.get( + 'default_callback_params', {} + ) + callback_params = dict(kwargs) + if default_callback_params: + callback_params.update(default_callback_params) + default_callback = value.get('default_callback', None) + if default_callback: + default_value = default_callback(key, **callback_params) + options = value.get('options', None) + if options is None: + options_callback_params = value.get( + 'options_callback_params', {} + ) + callback_params = dict(kwargs) + if options_callback_params: + callback_params.update(options_callback_params) + + options_callback = value.get('options_callback', None) + if options_callback: + options = options_callback(key, **callback_params) + filtered_metadata[key] = value + if default_value is not None: + filtered_metadata[key]['default_value'] = default_value + if options is not None: + filtered_metadata[key]['options'] = options + else: + filtered_metadata[key] = _filter_metadata(value, **kwargs) + return filtered_metadata + + +def get_package_metadatas_internal(session): + metadata_mapping = {} + adapters = utils.list_db_objects( + session, models.Adapter + ) + for adapter in adapters: + if adapter.deployable: + metadata_dict = adapter.metadata_dict() + metadata_mapping[adapter.id] = _filter_metadata( + metadata_dict, session=session + ) + else: + logging.info( + 'ignore metadata since its adapter %s is not deployable', + adapter.id + ) + return metadata_mapping + + +def get_os_metadatas_internal(session): + metadata_mapping = {} + oses = utils.list_db_objects( + session, models.OperatingSystem + ) + for os in oses: + if os.deployable: + metadata_dict = os.metadata_dict() + metadata_mapping[os.id] = _filter_metadata( + metadata_dict, session=session + ) + else: + logging.info( + 'ignore metadata since its os %s is not deployable', + os.id + ) + return metadata_mapping + + +def _validate_self( + config_path, config_key, config, + metadata, whole_check, + **kwargs +): + if '_self' not in metadata: + if isinstance(config, dict): + _validate_config( + config_path, config, metadata, whole_check, **kwargs + ) + return + field_type = metadata['_self'].get('field_type', 'basestring') + if not isinstance(config, field_type): + raise exception.InvalidParameter( + '%s config type is not %s' % (config_path, field_type) + ) + required_in_options = metadata['_self'].get( + 'required_in_options', False + ) + options = metadata['_self'].get('options', None) + if required_in_options: + if field_type in [int, basestring, float, bool]: + if options and config not in options: + raise exception.InvalidParameter( + '%s config is not in %s' % (config_path, options) + ) + elif field_type in [list, tuple]: + if options and not set(config).issubset(set(options)): + raise exception.InvalidParameter( + '%s config is not in %s' % (config_path, options) + ) + elif field_type == dict: + if options and not set(config.keys()).issubset(set(options)): + raise exception.InvalidParameter( + '%s config is not in %s' % (config_path, options) + ) + validator = metadata['_self'].get('validator', None) + if validator: + if not validator(config_key, config, **kwargs): + raise exception.InvalidParameter( + '%s config is invalid' % config_path + ) + if isinstance(config, dict): + _validate_config( + config_path, config, metadata, whole_check, **kwargs + ) + + +def _validate_config( + config_path, config, metadata, whole_check, + **kwargs +): + generals = {} + specified = {} + for key, value in metadata.items(): + if key.startswith('$'): + generals[key] = value + elif key.startswith('_'): + pass + else: + specified[key] = value + config_keys = set(config.keys()) + specified_keys = set(specified.keys()) + intersect_keys = config_keys & specified_keys + not_found_keys = config_keys - specified_keys + redundant_keys = specified_keys - config_keys + for key in redundant_keys: + if '_self' not in specified[key]: + continue + if specified[key]['_self'].get('is_required', False): + raise exception.InvalidParameter( + '%s/%s does not find but it is required' % ( + config_path, key + ) + ) + if ( + whole_check and + specified[key]['_self'].get( + 'required_in_whole_config', False + ) + ): + raise exception.InvalidParameter( + '%s/%s does not find but it is required in whole config' % ( + config_path, key + ) + ) + for key in intersect_keys: + _validate_self( + '%s/%s' % (config_path, key), + key, config[key], specified[key], whole_check, + **kwargs + ) + for key in not_found_keys: + if not generals: + raise exception.InvalidParameter( + 'key %s missing in metadata %s' % ( + key, config_path + ) + ) + for general_key, general_value in generals.items(): + _validate_self( + '%s/%s' % (config_path, key), + key, config[key], general_value, whole_check, + **kwargs + ) + + +def _autofill_self_config( + config_path, config_key, config, + metadata, + **kwargs +): + if '_self' not in metadata: + if isinstance(config, dict): + _autofill_config( + config_path, config, metadata, **kwargs + ) + return config + logging.debug( + 'autofill %s by metadata %s', config_path, metadata['_self'] + ) + autofill_callback = metadata['_self'].get( + 'autofill_callback', None + ) + autofill_callback_params = metadata['_self'].get( + 'autofill_callback_params', {} + ) + callback_params = dict(kwargs) + if autofill_callback_params: + callback_params.update(autofill_callback_params) + default_value = metadata['_self'].get( + 'default_value', None + ) + if default_value is not None: + callback_params['default_value'] = default_value + options = metadata['_self'].get( + 'options', None + ) + if options is not None: + callback_params['options'] = options + if autofill_callback: + config = autofill_callback( + config_key, config, **callback_params + ) + if config is None: + new_config = {} + else: + new_config = config + if isinstance(new_config, dict): + _autofill_config( + config_path, new_config, metadata, **kwargs + ) + if new_config: + config = new_config + return config + + +def _autofill_config( + config_path, config, metadata, **kwargs +): + generals = {} + specified = {} + for key, value in metadata.items(): + if key.startswith('$'): + generals[key] = value + elif key.startswith('_'): + pass + else: + specified[key] = value + config_keys = set(config.keys()) + specified_keys = set(specified.keys()) + intersect_keys = config_keys & specified_keys + not_found_keys = config_keys - specified_keys + redundant_keys = specified_keys - config_keys + for key in redundant_keys: + self_config = _autofill_self_config( + '%s/%s' % (config_path, key), + key, None, specified[key], **kwargs + ) + if self_config is not None: + config[key] = self_config + for key in intersect_keys: + config[key] = _autofill_self_config( + '%s/%s' % (config_path, key), + key, config[key], specified[key], + **kwargs + ) + for key in not_found_keys: + for general_key, general_value in generals.items(): + config[key] = _autofill_self_config( + '%s/%s' % (config_path, key), + key, config[key], general_value, + **kwargs + ) + return config + + +def validate_config_internal( + config, metadata, whole_check, **kwargs +): + _validate_config('', config, metadata, whole_check, **kwargs) + + +def autofill_config_internal( + config, metadata, **kwargs +): + return _autofill_config('', config, metadata, **kwargs) diff --git a/compass/db/api/metadata_holder.py b/compass/db/api/metadata_holder.py new file mode 100644 index 00000000..231b4801 --- /dev/null +++ b/compass/db/api/metadata_holder.py @@ -0,0 +1,227 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Metadata related object holder.""" +import logging + +from compass.db.api import database +from compass.db.api import metadata as metadata_api +from compass.db.api import permission +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import exception + + +RESP_METADATA_FIELDS = [ + 'os_config', 'package_config' +] + + +@database.run_in_session() +def load_metadatas(session): + load_os_metadatas_internal(session) + load_package_metadatas_internal(session) + + +def load_os_metadatas_internal(session): + global OS_METADATA_MAPPING + logging.info('load os metadatas into memory') + OS_METADATA_MAPPING = metadata_api.get_os_metadatas_internal(session) + + +def load_package_metadatas_internal(session): + global PACKAGE_METADATA_MAPPING + logging.info('load package metadatas into memory') + PACKAGE_METADATA_MAPPING = ( + metadata_api.get_package_metadatas_internal(session) + ) + + +OS_METADATA_MAPPING = {} +PACKAGE_METADATA_MAPPING = {} + + +def _validate_config( + config, id, id_name, metadata_mapping, whole_check, **kwargs +): + if id not in metadata_mapping: + raise exception.InvalidParameter( + '%s id %s is not found in metadata mapping' % (id_name, id) + ) + metadatas = metadata_mapping[id] + metadata_api.validate_config_internal( + config, metadatas, whole_check, **kwargs + ) + + +def validate_os_config( + session, config, os_id, whole_check=False, **kwargs +): + if not OS_METADATA_MAPPING: + load_os_metadatas_internal(session) + _validate_config( + config, os_id, 'os', OS_METADATA_MAPPING, + whole_check, session=session, **kwargs + ) + + +def validate_package_config( + session, config, adapter_id, whole_check=False, **kwargs +): + if not PACKAGE_METADATA_MAPPING: + load_package_metadatas_internal(session) + _validate_config( + config, adapter_id, 'adapter', PACKAGE_METADATA_MAPPING, + whole_check, session=session, **kwargs + ) + + +def _filter_metadata(metadata, **kwargs): + if not isinstance(metadata, dict): + return metadata + filtered_metadata = {} + for key, value in metadata.items(): + if key == '_self': + filtered_metadata[key] = { + 'name': value['name'], + 'description': value.get('description', None), + 'default_value': value.get('default_value', None), + 'is_required': value.get('is_required', False), + 'required_in_whole_config': value.get( + 'required_in_whole_config', False), + 'js_validator': value.get('js_validator', None), + 'options': value.get('options', None), + 'required_in_options': value.get( + 'required_in_options', False), + 'field_type': value.get( + 'field_type_data', 'str'), + 'display_type': value.get('display_type', None), + 'mapping_to': value.get('mapping_to', None) + } + else: + filtered_metadata[key] = _filter_metadata(value, **kwargs) + return filtered_metadata + + +def get_package_metadata_internal(session, adapter_id): + """get package metadata internal.""" + if not PACKAGE_METADATA_MAPPING: + load_package_metadatas_internal(session) + if adapter_id not in PACKAGE_METADATA_MAPPING: + raise exception.RecordNotExists( + 'adpater %s does not exist' % adapter_id + ) + return _filter_metadata( + PACKAGE_METADATA_MAPPING[adapter_id], session=session + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_METADATAS +) +@utils.wrap_to_dict(RESP_METADATA_FIELDS) +def get_package_metadata(session, getter, adapter_id, **kwargs): + return { + 'package_config': get_package_metadata_internal(session, adapter_id) + } + + +def get_os_metadata_internal(session, os_id): + """get os metadata internal.""" + if not OS_METADATA_MAPPING: + load_os_metadatas_internal(session) + if os_id not in OS_METADATA_MAPPING: + raise exception.RecordNotExists( + 'os %s does not exist' % os_id + ) + return _filter_metadata( + OS_METADATA_MAPPING[os_id], session=session + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_METADATAS +) +@utils.wrap_to_dict(RESP_METADATA_FIELDS) +def get_os_metadata(session, getter, os_id, **kwargs): + """get os metadatas.""" + return {'os_config': get_os_metadata_internal(session, os_id)} + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_METADATAS +) +@utils.wrap_to_dict(RESP_METADATA_FIELDS) +def get_package_os_metadata(session, getter, adapter_id, os_id, **kwargs): + from compass.db.api import adapter_holder as adapter_api + adapter = adapter_api.get_adapter_internal(session, adapter_id) + os_ids = [os['os_id'] for os in adapter['supported_oses']] + if os_id not in os_ids: + raise exception.InvalidParameter( + 'os %s is not in the supported os list of adapter %s' % ( + os_id, adapter_id + ) + ) + metadatas = {} + metadatas['os_config'] = get_os_metadata_internal( + session, os_id + ) + metadatas['package_config'] = get_package_metadata_internal( + session, adapter_id + ) + return metadatas + + +def _autofill_config( + config, id, id_name, metadata_mapping, **kwargs +): + if id not in metadata_mapping: + raise exception.InvalidParameter( + '%s id %s is not found in metadata mapping' % (id_name, id) + ) + metadatas = metadata_mapping[id] + logging.debug( + 'auto fill %s config %s by params %s', + id_name, config, kwargs + ) + return metadata_api.autofill_config_internal( + config, metadatas, **kwargs + ) + + +def autofill_os_config( + session, config, os_id, **kwargs +): + if not OS_METADATA_MAPPING: + load_os_metadatas_internal(session) + return _autofill_config( + config, os_id, 'os', OS_METADATA_MAPPING, session=session, **kwargs + ) + + +def autofill_package_config( + session, config, adapter_id, **kwargs +): + if not PACKAGE_METADATA_MAPPING: + load_package_metadatas_internal(session) + return _autofill_config( + config, adapter_id, 'adapter', PACKAGE_METADATA_MAPPING, + session=session, **kwargs + ) diff --git a/compass/db/api/network.py b/compass/db/api/network.py new file mode 100644 index 00000000..3eedb26f --- /dev/null +++ b/compass/db/api/network.py @@ -0,0 +1,128 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Network related database operations.""" +import logging +import netaddr + +from compass.db.api import database +from compass.db.api import permission +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import exception +from compass.db import models + + +SUPPORTED_FIELDS = ['subnet', 'name'] +RESP_FIELDS = [ + 'id', 'name', 'subnet', 'created_at', 'updated_at' +] +ADDED_FIELDS = ['subnet'] +OPTIONAL_ADDED_FIELDS = ['name'] +IGNORE_FIELDS = [ + 'id', 'created_at', 'updated_at' +] +UPDATED_FIELDS = ['subnet', 'name'] + + +def _check_subnet(subnet): + try: + netaddr.IPNetwork(subnet) + except Exception as error: + logging.exception(error) + raise exception.InvalidParameter( + 'subnet %s format unrecognized' % subnet) + + +@utils.supported_filters(optional_support_keys=SUPPORTED_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SUBNETS +) +@utils.wrap_to_dict(RESP_FIELDS) +def list_subnets(session, lister, **filters): + """List subnets.""" + return utils.list_db_objects( + session, models.Subnet, **filters + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SUBNETS +) +@utils.wrap_to_dict(RESP_FIELDS) +def get_subnet( + session, getter, subnet_id, + exception_when_missing=True, **kwargs +): + """Get subnet info.""" + return utils.get_db_object( + session, models.Subnet, + exception_when_missing, id=subnet_id + ) + + +@utils.supported_filters( + ADDED_FIELDS, optional_support_keys=OPTIONAL_ADDED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(subnet=_check_subnet) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_SUBNET +) +@utils.wrap_to_dict(RESP_FIELDS) +def add_subnet( + session, creator, exception_when_existing=True, + subnet=None, **kwargs +): + """Create a subnet.""" + return utils.add_db_object( + session, models.Subnet, + exception_when_existing, subnet, **kwargs + ) + + +@utils.supported_filters( + optional_support_keys=UPDATED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(subnet=_check_subnet) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_SUBNET +) +@utils.wrap_to_dict(RESP_FIELDS) +def update_subnet(session, updater, subnet_id, **kwargs): + """Update a subnet.""" + subnet = utils.get_db_object( + session, models.Subnet, id=subnet_id + ) + return utils.update_db_object(session, subnet, **kwargs) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_SUBNET +) +@utils.wrap_to_dict(RESP_FIELDS) +def del_subnet(session, deleter, subnet_id, **kwargs): + """Delete a subnet.""" + subnet = utils.get_db_object( + session, models.Subnet, id=subnet_id + ) + return utils.del_db_object(session, subnet) diff --git a/compass/db/api/permission.py b/compass/db/api/permission.py new file mode 100644 index 00000000..4def53c4 --- /dev/null +++ b/compass/db/api/permission.py @@ -0,0 +1,309 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Permission database operations.""" +from compass.db.api import database +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import exception +from compass.db import models + + +SUPPORTED_FIELDS = ['name', 'alias', 'description'] +RESP_FIELDS = ['id', 'name', 'alias', 'description'] + + +class PermissionWrapper(object): + def __init__(self, name, alias, description): + self.name = name + self.alias = alias + self.description = description + + def to_dict(self): + return { + 'name': self.name, + 'alias': self.alias, + 'description': self.description + } + + +PERMISSION_LIST_PERMISSIONS = PermissionWrapper( + 'list_permissions', 'list permissions', 'list all permissions' +) +PERMISSION_LIST_SWITCHES = PermissionWrapper( + 'list_switches', 'list switches', 'list all switches' +) +PERMISSION_LIST_SWITCH_FILTERS = PermissionWrapper( + 'list_switch_filters', + 'list switch filters', + 'list switch filters' +) +PERMISSION_ADD_SWITCH = PermissionWrapper( + 'add_switch', 'add switch', 'add switch' +) +PERMISSION_UPDATE_SWITCH_FILTERS = PermissionWrapper( + 'update_switch_filters', + 'update switch filters', + 'update switch filters' +) +PERMISSION_DEL_SWITCH = PermissionWrapper( + 'delete_switch', 'delete switch', 'delete switch' +) +PERMISSION_LIST_SWITCH_MACHINES = PermissionWrapper( + 'list_switch_machines', 'list switch machines', 'list switch machines' +) +PERMISSION_ADD_SWITCH_MACHINE = PermissionWrapper( + 'add_switch_machine', 'add switch machine', 'add switch machine' +) +PERMISSION_DEL_SWITCH_MACHINE = PermissionWrapper( + 'del_switch_machine', 'delete switch machine', 'del switch machine' +) +PERMISSION_UPDATE_SWITCH_MACHINES = PermissionWrapper( + 'update_switch_machines', + 'update switch machines', + 'update switch machines' +) +PERMISSION_LIST_MACHINES = PermissionWrapper( + 'list_machines', 'list machines', 'list machines' +) +PERMISSION_ADD_MACHINE = PermissionWrapper( + 'add_machine', 'add machine', 'add machine' +) +PERMISSION_DEL_MACHINE = PermissionWrapper( + 'delete_machine', 'delete machine', 'delete machine' +) +PERMISSION_LIST_ADAPTERS = PermissionWrapper( + 'list_adapters', 'list adapters', 'list adapters' +) +PERMISSION_LIST_METADATAS = PermissionWrapper( + 'list_metadatas', 'list metadatas', 'list metadatas' +) +PERMISSION_LIST_SUBNETS = PermissionWrapper( + 'list_subnets', 'list subnets', 'list subnets' +) +PERMISSION_ADD_SUBNET = PermissionWrapper( + 'add_subnet', 'add subnet', 'add subnet' +) +PERMISSION_DEL_SUBNET = PermissionWrapper( + 'del_subnet', 'del subnet', 'del subnet' +) +PERMISSION_LIST_CLUSTERS = PermissionWrapper( + 'list_clusters', 'list clusters', 'list clusters' +) +PERMISSION_ADD_CLUSTER = PermissionWrapper( + 'add_cluster', 'add cluster', 'add cluster' +) +PERMISSION_DEL_CLUSTER = PermissionWrapper( + 'del_cluster', 'del cluster', 'del cluster' +) +PERMISSION_LIST_CLUSTER_CONFIG = PermissionWrapper( + 'list_cluster_config', 'list cluster config', 'list cluster config' +) +PERMISSION_ADD_CLUSTER_CONFIG = PermissionWrapper( + 'add_cluster_config', 'add cluster config', 'add cluster config' +) +PERMISSION_DEL_CLUSTER_CONFIG = PermissionWrapper( + 'del_cluster_config', 'del cluster config', 'del cluster config' +) +PERMISSION_UPDATE_CLUSTER_HOSTS = PermissionWrapper( + 'update_cluster_hosts', + 'update cluster hosts', + 'update cluster hosts' +) +PERMISSION_DEL_CLUSTER_HOST = PermissionWrapper( + 'del_clusterhost', 'delete clusterhost', 'delete clusterhost' +) +PERMISSION_REVIEW_CLUSTER = PermissionWrapper( + 'review_cluster', 'review cluster', 'review cluster' +) +PERMISSION_DEPLOY_CLUSTER = PermissionWrapper( + 'deploy_cluster', 'deploy cluster', 'deploy cluster' +) +PERMISSION_DEPLOY_HOST = PermissionWrapper( + 'deploy_host', 'deploy host', 'deploy host' +) +PERMISSION_GET_CLUSTER_STATE = PermissionWrapper( + 'get_cluster_state', 'get cluster state', 'get cluster state' +) +PERMISSION_UPDATE_CLUSTER_STATE = PermissionWrapper( + 'update_cluster_state', 'update cluster state', + 'update cluster state' +) +PERMISSION_LIST_HOSTS = PermissionWrapper( + 'list_hosts', 'list hosts', 'list hosts' +) +PERMISSION_LIST_HOST_CLUSTERS = PermissionWrapper( + 'list_host_clusters', + 'list host clusters', + 'list host clusters' +) +PERMISSION_UPDATE_HOST = PermissionWrapper( + 'update_host', 'update host', 'update host' +) +PERMISSION_DEL_HOST = PermissionWrapper( + 'del_host', 'del host', 'del host' +) +PERMISSION_LIST_HOST_CONFIG = PermissionWrapper( + 'list_host_config', 'list host config', 'list host config' +) +PERMISSION_ADD_HOST_CONFIG = PermissionWrapper( + 'add_host_config', 'add host config', 'add host config' +) +PERMISSION_DEL_HOST_CONFIG = PermissionWrapper( + 'del_host_config', 'del host config', 'del host config' +) +PERMISSION_LIST_HOST_NETWORKS = PermissionWrapper( + 'list_host_networks', + 'list host networks', + 'list host networks' +) +PERMISSION_ADD_HOST_NETWORK = PermissionWrapper( + 'add_host_network', 'add host network', 'add host network' +) +PERMISSION_DEL_HOST_NETWORK = PermissionWrapper( + 'del_host_network', 'del host network', 'del host network' +) +PERMISSION_GET_HOST_STATE = PermissionWrapper( + 'get_host_state', 'get host state', 'get host state' +) +PERMISSION_UPDATE_HOST_STATE = PermissionWrapper( + 'update_host_state', 'update host sate', 'update host state' +) +PERMISSION_LIST_CLUSTERHOSTS = PermissionWrapper( + 'list_clusterhosts', 'list cluster hosts', 'list cluster hosts' +) +PERMISSION_LIST_CLUSTERHOST_CONFIG = PermissionWrapper( + 'list_clusterhost_config', + 'list clusterhost config', + 'list clusterhost config' +) +PERMISSION_ADD_CLUSTERHOST_CONFIG = PermissionWrapper( + 'add_clusterhost_config', + 'add clusterhost config', + 'add clusterhost config' +) +PERMISSION_DEL_CLUSTERHOST_CONFIG = PermissionWrapper( + 'del_clusterhost_config', + 'del clusterhost config', + 'del clusterhost config' +) +PERMISSION_GET_CLUSTERHOST_STATE = PermissionWrapper( + 'get_clusterhost_state', + 'get clusterhost state', + 'get clusterhost state' +) +PERMISSION_UPDATE_CLUSTERHOST_STATE = PermissionWrapper( + 'update_clusterhost_state', + 'update clusterhost state', + 'update clusterhost state' +) +PERMISSIONS = [ + PERMISSION_LIST_PERMISSIONS, + PERMISSION_LIST_SWITCHES, + PERMISSION_ADD_SWITCH, + PERMISSION_DEL_SWITCH, + PERMISSION_LIST_SWITCH_FILTERS, + PERMISSION_UPDATE_SWITCH_FILTERS, + PERMISSION_LIST_SWITCH_MACHINES, + PERMISSION_ADD_SWITCH_MACHINE, + PERMISSION_DEL_SWITCH_MACHINE, + PERMISSION_UPDATE_SWITCH_MACHINES, + PERMISSION_LIST_MACHINES, + PERMISSION_ADD_MACHINE, + PERMISSION_DEL_MACHINE, + PERMISSION_LIST_ADAPTERS, + PERMISSION_LIST_METADATAS, + PERMISSION_LIST_SUBNETS, + PERMISSION_ADD_SUBNET, + PERMISSION_DEL_SUBNET, + PERMISSION_LIST_CLUSTERS, + PERMISSION_ADD_CLUSTER, + PERMISSION_DEL_CLUSTER, + PERMISSION_LIST_CLUSTER_CONFIG, + PERMISSION_ADD_CLUSTER_CONFIG, + PERMISSION_DEL_CLUSTER_CONFIG, + PERMISSION_UPDATE_CLUSTER_HOSTS, + PERMISSION_DEL_CLUSTER_HOST, + PERMISSION_REVIEW_CLUSTER, + PERMISSION_DEPLOY_CLUSTER, + PERMISSION_GET_CLUSTER_STATE, + PERMISSION_UPDATE_CLUSTER_STATE, + PERMISSION_LIST_HOSTS, + PERMISSION_LIST_HOST_CLUSTERS, + PERMISSION_UPDATE_HOST, + PERMISSION_DEL_HOST, + PERMISSION_LIST_HOST_CONFIG, + PERMISSION_ADD_HOST_CONFIG, + PERMISSION_DEL_HOST_CONFIG, + PERMISSION_LIST_HOST_NETWORKS, + PERMISSION_ADD_HOST_NETWORK, + PERMISSION_DEL_HOST_NETWORK, + PERMISSION_GET_HOST_STATE, + PERMISSION_UPDATE_HOST_STATE, + PERMISSION_DEPLOY_HOST, + PERMISSION_LIST_CLUSTERHOSTS, + PERMISSION_LIST_CLUSTERHOST_CONFIG, + PERMISSION_ADD_CLUSTERHOST_CONFIG, + PERMISSION_DEL_CLUSTERHOST_CONFIG, + PERMISSION_GET_CLUSTERHOST_STATE, + PERMISSION_UPDATE_CLUSTERHOST_STATE, +] + + +def list_permissions_internal(session, **filters): + """internal functions used only by other db.api modules.""" + return utils.list_db_objects(session, models.Permission, **filters) + + +@utils.supported_filters(optional_support_keys=SUPPORTED_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session(PERMISSION_LIST_PERMISSIONS) +@utils.wrap_to_dict(RESP_FIELDS) +def list_permissions(session, lister, **filters): + """list permissions.""" + return utils.list_db_objects( + session, models.Permission, **filters + ) + + +@utils.supported_filters() +@database.run_in_session() +@user_api.check_user_permission_in_session(PERMISSION_LIST_PERMISSIONS) +@utils.wrap_to_dict(RESP_FIELDS) +def get_permission( + session, getter, permission_id, + exception_when_missing=True, **kwargs +): + """get permissions.""" + return utils.get_db_object( + session, models.Permission, + exception_when_missing, id=permission_id + ) + + +def add_permissions_internal(session): + """internal functions used by other db.api modules only.""" + permissions = [] + for permission in PERMISSIONS: + permissions.append( + utils.add_db_object( + session, models.Permission, + True, + permission.name, + alias=permission.alias, + description=permission.description + ) + ) + + return permissions diff --git a/compass/db/api/switch.py b/compass/db/api/switch.py new file mode 100644 index 00000000..7f6a9dbd --- /dev/null +++ b/compass/db/api/switch.py @@ -0,0 +1,835 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Switch database operations.""" +import logging +import netaddr +import re + +from compass.db.api import database +from compass.db.api import permission +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import exception +from compass.db import models +from compass.utils import setting_wrapper as setting + + +SUPPORTED_FIELDS = ['ip_int', 'vendor', 'state'] +SUPPORTED_FILTER_FIELDS = ['ip_int', 'vendor', 'state'] +SUPPORTED_SWITCH_MACHINES_FIELDS = [ + 'switch_ip_int', 'port', 'vlans', 'mac', 'tag', 'location' +] +SUPPORTED_MACHINES_FIELDS = [ + 'port', 'vlans', 'mac', 'tag', 'location' +] +SUPPORTED_SWITCH_MACHINES_HOSTS_FIELDS = [ + 'switch_ip_int', 'port', 'vlans', 'mac', + 'tag', 'location', 'os_name', 'os_id' +] +SUPPORTED_MACHINES_HOSTS_FIELDS = [ + 'port', 'vlans', 'mac', 'tag', 'location', + 'os_name', 'os_id' +] +IGNORE_FIELDS = ['id', 'created_at', 'updated_at'] +ADDED_FIELDS = ['ip'] +OPTIONAL_ADDED_FIELDS = [ + 'credentials', 'vendor', 'state', 'err_msg', 'filters' +] +UPDATED_FIELDS = [ + 'ip', 'credentials', 'vendor', 'state', + 'err_msg', 'put_filters' +] +PATCHED_FIELDS = ['patched_credentials', 'patched_filters'] +UPDATED_FILTERS_FIELDS = ['put_filters'] +PATCHED_FILTERS_FIELDS = ['patched_filters'] +ADDED_MACHINES_FIELDS = ['mac', 'port'] +OPTIONAL_ADDED_MACHINES_FIELDS = [ + 'vlans', 'ipmi_credentials', 'tag', 'location' +] +ADDED_SWITCH_MACHINES_FIELDS = ['port', 'vlans'] +UPDATED_MACHINES_FIELDS = [ + 'port', 'vlans', 'ipmi_credentials', + 'tag', 'location' +] +UPDATED_SWITCH_MACHINES_FIELDS = ['port', 'vlans'] +PATCHED_MACHINES_FIELDS = [ + 'patched_vlans', 'patched_ipmi_credentials', + 'patched_tag', 'patched_location' +] +PATCHED_SWITCH_MACHINES_FIELDS = ['patched_vlans'] +RESP_FIELDS = [ + 'id', 'ip', 'credentials', 'vendor', 'state', 'err_msg', + 'filters', 'created_at', 'updated_at' +] +RESP_FILTERS_FIELDS = [ + 'id', 'ip', 'filters', 'created_at', 'updated_at' +] +RESP_ACTION_FIELDS = [ + 'status', 'details' +] +RESP_MACHINES_FIELDS = [ + 'id', 'switch_id', 'switch_ip', 'machine_id', 'switch_machine_id', + 'port', 'vlans', 'mac', + 'ipmi_credentials', 'tag', 'location', + 'created_at', 'updated_at' +] +RESP_MACHINES_HOSTS_FIELDS = [ + 'id', 'switch_id', 'switch_ip', 'machine_id', 'switch_machine_id', + 'port', 'vlans', 'mac', + 'ipmi_credentials', 'tag', 'location', 'ip', + 'name', 'hostname', 'os_name', 'os_id', 'owner', + 'os_installer', 'reinstall_os', 'os_installed', + 'clusters', 'created_at', 'updated_at' +] +RESP_CLUSTER_FIELDS = [ + 'name', 'id' +] + + +def _check_filters(switch_filters): + logging.debug('check filters: %s', switch_filters) + models.Switch.parse_filters(switch_filters) + + +def _check_vlans(vlans): + for vlan in vlans: + if not isinstance(vlan, int): + raise exception.InvalidParameter( + 'vlan %s is not int' % vlan + ) + + +def add_switch_internal( + session, ip_int, exception_when_existing=True, + filters=setting.SWITCHES_DEFAULT_FILTERS, **kwargs +): + with session.begin(subtransactions=True): + return utils.add_db_object( + session, models.Switch, exception_when_existing, ip_int, + filters=filters, **kwargs + ) + + +def get_switch_internal( + session, exception_when_missing=True, **kwargs +): + """Get switch.""" + with session.begin(subtransactions=True): + return utils.get_db_object( + session, models.Switch, exception_when_missing, + **kwargs + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SWITCHES +) +@utils.wrap_to_dict(RESP_FIELDS) +def get_switch( + session, getter, switch_id, + exception_when_missing=True, **kwargs +): + """get field dict of a switch.""" + return utils.get_db_object( + session, models.Switch, + exception_when_missing, id=switch_id + ) + + +@utils.supported_filters(optional_support_keys=SUPPORTED_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SWITCHES +) +@utils.wrap_to_dict(RESP_FIELDS) +def list_switches(session, lister, **filters): + """List switches.""" + switches = utils.list_db_objects( + session, models.Switch, **filters + ) + if 'ip_int' in filters: + return switches + else: + return [ + switch for switch in switches + if switch.ip != setting.DEFAULT_SWITCH_IP + ] + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_SWITCH +) +@utils.wrap_to_dict(RESP_FIELDS) +def del_switch(session, deleter, switch_id, **kwargs): + """Delete a switch.""" + switch = utils.get_db_object(session, models.Switch, id=switch_id) + return utils.del_db_object(session, switch) + + +@utils.supported_filters( + ADDED_FIELDS, + optional_support_keys=OPTIONAL_ADDED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates( + ip=utils.check_ip, + credentials=utils.check_switch_credentials, + filters=_check_filters +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_SWITCH +) +@utils.wrap_to_dict(RESP_FIELDS) +def add_switch( + session, creator, exception_when_existing=True, + ip=None, **kwargs +): + """Create a switch.""" + ip_int = long(netaddr.IPAddress(ip)) + return add_switch_internal( + session, ip_int, exception_when_existing, **kwargs + ) + + +def update_switch_internal(session, switch, **kwargs): + """update switch.""" + return utils.update_db_object( + session, switch, + **kwargs + ) + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_SWITCH +) +@utils.wrap_to_dict(RESP_FIELDS) +def _update_switch(session, updater, switch_id, **kwargs): + """Update a switch.""" + switch = utils.get_db_object( + session, models.Switch, id=switch_id + ) + return utils.update_db_object(session, switch, **kwargs) + + +@utils.replace_filters( + filters='put_filters' +) +@utils.supported_filters( + optional_support_keys=UPDATED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates( + credentials=utils.check_switch_credentials, + put_filters=_check_filters +) +@database.run_in_session() +def update_switch(session, updater, switch_id, **kwargs): + return _update_switch(session, updater, switch_id, **kwargs) + + +@utils.replace_filters( + credentials='patched_credentials', + filters='patched_filters' +) +@utils.supported_filters( + optional_support_keys=PATCHED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates( + patched_filters=_check_filters +) +@database.run_in_session() +@utils.output_validates( + credentials=utils.check_switch_credentials +) +def patch_switch(session, updater, switch_id, **kwargs): + return _update_switch(session, updater, switch_id, **kwargs) + + +@utils.supported_filters(optional_support_keys=SUPPORTED_FILTER_FIELDS) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SWITCH_FILTERS +) +@utils.wrap_to_dict(RESP_FILTERS_FIELDS) +def list_switch_filters(session, lister, **filters): + """list switch filters.""" + return utils.list_db_objects( + session, models.Switch, **filters + ) + + +@utils.supported_filters() +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SWITCH_FILTERS +) +@utils.wrap_to_dict(RESP_FILTERS_FIELDS) +def get_switch_filters( + session, getter, switch_id, **kwargs +): + """get switch filter.""" + return utils.get_db_object( + session, models.Switch, id=switch_id + ) + + +@utils.replace_filters( + filters='put_filters' +) +@utils.supported_filters( + optional_support_keys=UPDATED_FILTERS_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(put_filters=_check_filters) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_SWITCH_FILTERS +) +@utils.wrap_to_dict(RESP_FILTERS_FIELDS) +def update_switch_filters(session, updater, switch_id, **kwargs): + """Update a switch filter.""" + switch = utils.get_db_object(session, models.Switch, id=switch_id) + return utils.update_db_object(session, switch, **kwargs) + + +@utils.replace_filters( + filters='patched_filters' +) +@utils.supported_filters( + optional_support_keys=PATCHED_FILTERS_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(patched_filters=_check_filters) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_SWITCH_FILTERS +) +@utils.wrap_to_dict(RESP_FILTERS_FIELDS) +def patch_switch_filter(session, updater, switch_id, **kwargs): + """Patch a switch filter.""" + switch = utils.get_db_object(session, models.Switch, id=switch_id) + return utils.update_db_object(session, switch, **kwargs) + + +def get_switch_machines_internal(session, **filters): + return utils.list_db_objects( + session, models.SwitchMachine, **filters + ) + + +def _filter_port(port_filter, obj): + port_prefix = port_filter.get('startswith', '') + port_suffix = port_filter.get('endswith', '') + pattern = re.compile(r'%s(\d+)%s' % (port_prefix, port_suffix)) + match = pattern.match(obj) + if not match: + return False + port_number = int(match.group(1)) + if ( + 'resp_lt' in port_filter and + port_number >= port_filter['resp_lt'] + ): + return False + if ( + 'resp_le' in port_filter and + port_number > port_filter['resp_le'] + ): + return False + if ( + 'resp_gt' in port_filter and + port_number <= port_filter['resp_gt'] + ): + return False + if ( + 'resp_ge' in port_filter and + port_number < port_filter['resp_ge'] + ): + return False + if 'resp_range' in port_filter: + in_range = False + for port_start, port_end in port_filter['resp_range']: + if port_start <= port_number <= port_end: + in_range = True + break + if not in_range: + return False + return True + + +def _filter_vlans(vlan_filter, obj): + vlans = set(obj) + if 'resp_in' in vlan_filter: + resp_vlans = set(vlan_filter['resp_in']) + if not (vlans & resp_vlans): + return False + return True + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SWITCH_MACHINES +) +@utils.output_filters( + port=_filter_port, vlans=_filter_vlans, + tag=utils.general_filter_callback, + location=utils.general_filter_callback +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def _filter_switch_machines(session, user, switch_machines, **filters): + if 'ip_int' in filters: + return switch_machines + else: + return [ + switch_machine for switch_machine in switch_machines + if not switch_machine.filtered + ] + + +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SWITCH_MACHINES +) +@utils.output_filters( + missing_ok=True, + port=_filter_port, vlans=_filter_vlans, + tag=utils.general_filter_callback, + location=utils.general_filter_callback, + os_name=utils.general_filter_callback, + os_id=utils.general_filter_callback +) +@utils.wrap_to_dict( + RESP_MACHINES_HOSTS_FIELDS, + clusters=RESP_CLUSTER_FIELDS +) +def _filter_switch_machines_hosts(session, user, switch_machines, **filters): + if 'ip_int' in filters: + filtered_switch_machines = switch_machines + else: + filtered_switch_machines = [ + switch_machine for switch_machine in switch_machines + if not switch_machine.filtered + ] + switch_machines_hosts = [] + for switch_machine in filtered_switch_machines: + machine = switch_machine.machine + host = machine.host + if host: + switch_machine_host_dict = host.to_dict() + else: + switch_machine_host_dict = machine.to_dict() + switch_machine_host_dict.update( + switch_machine.to_dict() + ) + switch_machines_hosts.append(switch_machine_host_dict) + return switch_machines_hosts + + +@utils.supported_filters( + optional_support_keys=SUPPORTED_MACHINES_FIELDS +) +@database.run_in_session() +def list_switch_machines(session, getter, switch_id, **filters): + """Get switch machines.""" + switch_machines = get_switch_machines_internal( + session, switch_id=switch_id, **filters + ) + return _filter_switch_machines(session, getter, switch_machines, **filters) + + +@utils.replace_filters( + ip_int='switch_ip_int' +) +@utils.supported_filters( + optional_support_keys=SUPPORTED_SWITCH_MACHINES_FIELDS +) +@database.run_in_session() +def list_switchmachines(session, lister, **filters): + """List switch machines.""" + switch_machines = get_switch_machines_internal( + session, **filters + ) + return _filter_switch_machines( + session, lister, switch_machines, **filters + ) + + +@utils.supported_filters( + optional_support_keys=SUPPORTED_MACHINES_HOSTS_FIELDS +) +@database.run_in_session() +def list_switch_machines_hosts(session, getter, switch_id, **filters): + """Get switch machines hosts.""" + switch_machines = get_switch_machines_internal( + session, switch_id=switch_id, **filters + ) + return _filter_switch_machines_hosts( + session, getter, switch_machines, **filters + ) + + +@utils.replace_filters( + ip_int='switch_ip_int' +) +@utils.supported_filters( + optional_support_keys=SUPPORTED_SWITCH_MACHINES_HOSTS_FIELDS +) +@database.run_in_session() +def list_switchmachines_hosts(session, lister, **filters): + """List switch machines hosts.""" + switch_machines = get_switch_machines_internal( + session, **filters + ) + if 'ip_int' in filters: + filtered_switch_machines = switch_machines + else: + filtered_switch_machines = [ + switch_machine for switch_machine in switch_machines + if switch_machine.switch_ip != setting.DEFAULT_SWITCH_IP + ] + return _filter_switch_machines_hosts( + session, lister, filtered_switch_machines, **filters + ) + + +@utils.supported_filters( + ADDED_MACHINES_FIELDS, + optional_support_keys=OPTIONAL_ADDED_MACHINES_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(mac=utils.check_mac, vlans=_check_vlans) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_SWITCH_MACHINE +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def add_switch_machine( + session, creator, switch_id, + exception_when_existing=True, + mac=None, **kwargs +): + """Add switch machine.""" + switch = utils.get_db_object( + session, models.Switch, id=switch_id) + switch_machine_dict = {} + machine_dict = {} + for key, value in kwargs.items(): + if key in ADDED_SWITCH_MACHINES_FIELDS: + switch_machine_dict[key] = value + else: + machine_dict[key] = value + machine = utils.add_db_object( + session, models.Machine, False, + mac, **machine_dict) + + switches = [switch] + if switch.ip != setting.DEFAULT_SWITCH_IP: + switches.append(utils.get_db_object( + session, models.Switch, + ip_int=long(netaddr.IPAddress(setting.DEFAULT_SWITCH_IP)) + )) + + switch_machines = [] + for machine_switch in switches: + switch_machines.append(utils.add_db_object( + session, models.SwitchMachine, + exception_when_existing, + machine_switch.id, machine.id, + **switch_machine_dict + )) + + return switch_machines[0] + + +@utils.supported_filters(optional_support_keys=['find_machines']) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_SWITCH_MACHINES +) +@utils.wrap_to_dict(RESP_ACTION_FIELDS) +def poll_switch_machines(session, poller, switch_id, **kwargs): + """poll switch machines.""" + from compass.tasks import client as celery_client + switch = utils.get_db_object(session, models.Switch, id=switch_id) + celery_client.celery.send_task( + 'compass.tasks.pollswitch', + (poller.email, switch.ip, switch.credentials) + ) + return { + 'status': 'action %s sent' % kwargs, + 'details': { + } + } + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SWITCH_MACHINES +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def get_switch_machine( + session, getter, switch_id, machine_id, + exception_when_missing=True, **kwargs +): + """get field dict of a switch machine.""" + return utils.get_db_object( + session, models.SwitchMachine, + exception_when_missing, + switch_id=switch_id, machine_id=machine_id + ) + + +@utils.supported_filters([]) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_LIST_SWITCH_MACHINES +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def get_switchmachine( + session, getter, switch_machine_id, + exception_when_missing=True, + **kwargs +): + """get field dict of a switch machine.""" + return utils.get_db_object( + session, models.SwitchMachine, + exception_when_missing, switch_machine_id=switch_machine_id + ) + + +def update_switch_machine_internal( + session, switch_machine, switch_machines_fields, **kwargs +): + """Update switch machine internal.""" + switch_machine_dict = {} + machine_dict = {} + for key, value in kwargs.items(): + if key in switch_machines_fields: + switch_machine_dict[key] = value + else: + machine_dict[key] = value + if machine_dict: + utils.update_db_object( + session, switch_machine.machine, **machine_dict + ) + return utils.update_db_object( + session, switch_machine, **switch_machine_dict + ) + + +@utils.supported_filters( + optional_support_keys=UPDATED_MACHINES_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(vlans=_check_vlans) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_SWITCH_MACHINE +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def update_switch_machine(session, updater, switch_id, machine_id, **kwargs): + """Update switch machine.""" + switch_machine = utils.get_db_object( + session, models.SwitchMachine, + switch_id=switch_id, machine_id=machine_id + ) + return update_switch_machine_internal( + session, switch_machine, + UPDATED_SWITCH_MACHINES_FIELDS, **kwargs + ) + + +@utils.supported_filters( + optional_support_keys=UPDATED_MACHINES_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(vlans=_check_vlans) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_SWITCH_MACHINE +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def update_switchmachine(session, updater, switch_machine_id, **kwargs): + """Update switch machine.""" + switch_machine = utils.get_db_object( + session, models.SwitchMachine, + switch_machine_id=switch_machine_id + ) + return update_switch_machine_internal( + session, switch_machine, + UPDATED_SWITCH_MACHINES_FIELDS, **kwargs + ) + + +@utils.replace_filters( + vlans='patched_vlans', + ipmi_credentials='patched_ipmi_credentials', + tag='patched_tag', + location='patched_location' +) +@utils.supported_filters( + optional_support_keys=PATCHED_MACHINES_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(patched_vlans=_check_vlans) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_SWITCH_MACHINE +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def patch_switch_machine(session, updater, switch_id, machine_id, **kwargs): + """Patch switch machine.""" + switch_machine = utils.get_db_object( + session, models.SwitchMachine, + switch_id=switch_id, machine_id=machine_id + ) + return update_switch_machine_internal( + session, switch_machine, + PATCHED_SWITCH_MACHINES_FIELDS, **kwargs + ) + + +@utils.replace_filters( + vlans='patched_vlans', + ipmi_credentials='patched_ipmi_credentials', + tag='patched_tag', + location='patched_location' +) +@utils.supported_filters( + optional_support_keys=PATCHED_MACHINES_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(patched_vlans=_check_vlans) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_ADD_SWITCH_MACHINE +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def patch_switchmachine(session, updater, switch_machine_id, **kwargs): + """Patch switch machine.""" + switch_machine = utils.get_db_object( + session, models.SwitchMachine, + switch_machine_id=switch_machine_id + ) + return update_switch_machine_internal( + session, switch_machine, + PATCHED_SWITCH_MACHINES_FIELDS, **kwargs + ) + + +@utils.supported_filters() +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_SWITCH_MACHINE +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def del_switch_machine(session, deleter, switch_id, machine_id, **kwargs): + """Delete switch machines.""" + switch_machine = utils.get_db_object( + session, models.SwitchMachine, + switch_id=switch_id, machine_id=machine_id + ) + return utils.del_db_object(session, switch_machine) + + +@utils.supported_filters() +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_SWITCH_MACHINE +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def del_switchmachine(session, deleter, switch_machine_id, **kwargs): + """Delete switch machines.""" + switch_machine = utils.get_db_object( + session, models.SwitchMachine, + switch_machine_id=switch_machine_id + ) + return utils.del_db_object(session, switch_machine) + + +@utils.supported_filters( + ['machine_id'], + optional_support_keys=UPDATED_SWITCH_MACHINES_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +def _update_machine_internal(session, switch_id, machine_id, **kwargs): + utils.add_db_object( + session, models.SwitchMachine, False, + switch_id, machine_id, **kwargs + ) + + +def _add_machines(session, switch, machines): + for machine in machines: + _update_machine_internal( + session, switch.id, **machine + ) + + +def _remove_machines(session, switch, machines): + utils.del_db_objects( + session, models.SwitchMachine, + switch_id=switch.id, machine_id=machines + ) + + +def _set_machines(session, switch, machines): + utils.del_db_objects( + session, models.SwitchMachine, + switch_id=switch.id + ) + for switch_machine in machines: + _update_machine_internal( + session, switch.id, **switch_machine + ) + + +@utils.supported_filters( + optional_support_keys=[ + 'add_machines', 'remove_machines', 'set_machines' + ] +) +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_UPDATE_SWITCH_MACHINES +) +@utils.wrap_to_dict(RESP_MACHINES_FIELDS) +def update_switch_machines( + session, updater, switch_id, + add_machines=[], remove_machines=[], + set_machines=None, **kwargs +): + """update switch machines.""" + switch = utils.get_db_object( + session, models.Switch, id=switch_id + ) + if remove_machines: + _remove_machines( + session, switch, remove_machines + ) + if add_machines: + _add_machines( + session, switch, add_machines + ) + if set_machines is not None: + _set_machines( + session, switch, + set_machines + ) + return switch.switch_machines diff --git a/compass/db/api/user.py b/compass/db/api/user.py new file mode 100644 index 00000000..96ae96da --- /dev/null +++ b/compass/db/api/user.py @@ -0,0 +1,478 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""User database operations.""" +import datetime +import functools + +from flask.ext.login import UserMixin + +from compass.db.api import database +from compass.db.api import utils +from compass.db import exception +from compass.db import models + +from compass.utils import setting_wrapper as setting +from compass.utils import util + + +SUPPORTED_FIELDS = ['email', 'is_admin', 'active'] +PERMISSION_SUPPORTED_FIELDS = ['name'] +SELF_UPDATED_FIELDS = ['email', 'firstname', 'lastname', 'password'] +ADMIN_UPDATED_FIELDS = ['is_admin', 'active'] +IGNORE_FIELDS = ['id', 'created_at', 'updated_at'] +UPDATED_FIELDS = [ + 'email', 'firstname', 'lastname', 'password', 'is_admin', 'active' +] +ADDED_FIELDS = ['email', 'password'] +OPTIONAL_ADDED_FIELDS = ['is_admin', 'active'] +PERMISSION_ADDED_FIELDS = ['permission_id'] +RESP_FIELDS = [ + 'id', 'email', 'is_admin', 'active', 'firstname', + 'lastname', 'created_at', 'updated_at' +] +RESP_TOKEN_FIELDS = [ + 'id', 'user_id', 'token', 'expire_timestamp' +] +PERMISSION_RESP_FIELDS = [ + 'id', 'user_id', 'permission_id', 'name', 'alias', 'description', + 'created_at', 'updated_at' +] + + +def _check_email(email): + if '@' not in email: + raise exception.InvalidParameter( + 'there is no @ in email address %s.' % email + ) + + +def get_user_internal(session, exception_when_missing=True, **kwargs): + """internal function used only by other db.api modules.""" + return utils.get_db_object( + session, models.User, exception_when_missing, **kwargs + ) + + +def add_user_internal( + session, exception_when_existing=True, + email=None, **kwargs +): + """internal function used only by other db.api modules.""" + user = utils.add_db_object( + session, models.User, + exception_when_existing, email, + **kwargs) + _add_user_permissions( + session, user, + name=setting.COMPASS_DEFAULT_PERMISSIONS + ) + return user + + +def _check_user_permission(session, user, permission): + """Check user has permission.""" + if user.is_admin: + return + + user_permission = utils.get_db_object( + session, models.UserPermission, + False, user_id=user.id, name=permission.name + ) + if not user_permission: + raise exception.Forbidden( + 'user %s does not have permission %s' % ( + user.email, permission.name + ) + ) + + +def check_user_permission_in_session(permission): + def decorator(func): + @functools.wraps(func) + def wrapper(session, user, *args, **kwargs): + _check_user_permission(session, user, permission) + return func(session, user, *args, **kwargs) + return wrapper + return decorator + + +def check_user_admin(): + def decorator(func): + @functools.wraps(func) + def wrapper(user, *args, **kwargs): + if not user.is_admin: + raise exception.Forbidden( + 'User %s is not admin.' % ( + user.email + ) + ) + return func(user, *args, **kwargs) + return wrapper + return decorator + + +def check_user_admin_or_owner(): + def decorator(func): + @functools.wraps(func) + def wrapper(user, user_id, *args, **kwargs): + if not user.is_admin and user.id != user_id: + raise exception.Forbidden( + 'User %s is not admin or the owner of user id %s.' % ( + user.email, user_id + ) + ) + return func(user, user_id, *args, **kwargs) + return wrapper + return decorator + + +def check_user_permission_internal(session, user, permission): + """internal function only used by other db.api modules.""" + _check_user_permission(session, user, permission) + + +def _add_user_permissions(session, user, **permission_filters): + """add permissions to a user.""" + from compass.db.api import permission as permission_api + for api_permission in permission_api.list_permissions_internal( + session, **permission_filters + ): + utils.add_db_object( + session, models.UserPermission, False, + user.id, api_permission.id + ) + + +def _remove_user_permissions(session, user, **permission_filters): + """remove permissions to a user.""" + from compass.db.api import permission as permission_api + permission_ids = [ + api_permission.id + for api_permission in permission_api.list_permissions_internal( + session, **permission_filters + ) + ] + utils.del_db_objects( + session, models.UserPermission, + user_id=user.id, permission_id=permission_ids + ) + + +def _set_user_permissions(session, user, **permission_filters): + """set permissions to a user.""" + utils.del_db_objects( + session, models.UserPermission, + user_id=user.id + ) + _add_user_permissions(session, user, **permission_filters) + + +class UserWrapper(UserMixin): + def __init__( + self, id, email, crypted_password, + active=True, is_admin=False, + expire_timestamp=None, token='', **kwargs + ): + self.id = id + self.email = email + self.password = crypted_password + self.active = active + self.is_admin = is_admin + if expire_timestamp: + self.expire_timestamp = expire_timestamp + else: + self.expire_timestamp = datetime.datetime.now() + if not token: + self.token = self.get_auth_token() + else: + self.token = token + super(UserWrapper, self).__init__() + + def authenticate(self, password): + if not util.encrypt(password, self.password) == self.password: + raise exception.Unauthorized('%s password mismatch' % self.email) + + def get_auth_token(self): + return util.encrypt(self.email) + + def is_active(self): + return self.active + + def get_id(self): + return self.token + + def is_authenticated(self): + current_time = datetime.datetime.now() + return current_time < self.expire_timestamp + + def __str__(self): + return '%s[email:%s,password:%s]' % ( + self.__class__.__name__, self.email, self.password) + + +@database.run_in_session() +def get_user_object(session, email, **kwargs): + user = utils.get_db_object( + session, models.User, False, email=email + ) + if not user: + raise exception.Unauthorized( + '%s unauthorized' % email + ) + user_dict = user.to_dict() + user_dict.update(kwargs) + return UserWrapper(**user_dict) + + +@database.run_in_session() +def get_user_object_from_token(session, token): + expire_timestamp = { + 'ge': datetime.datetime.now() + } + user_token = utils.get_db_object( + session, models.UserToken, False, + token=token, expire_timestamp=expire_timestamp + ) + if not user_token: + raise exception.Unauthorized( + 'invalid user token: %s' % token + ) + user_dict = utils.get_db_object( + session, models.User, id=user_token.user_id + ).to_dict() + user_dict['token'] = token + user_dict['expire_timestamp'] = user_token.expire_timestamp + return UserWrapper(**user_dict) + + +@utils.supported_filters() +@database.run_in_session() +@utils.wrap_to_dict(RESP_TOKEN_FIELDS) +def record_user_token(session, user, token, expire_timestamp): + """record user token in database.""" + return utils.add_db_object( + session, models.UserToken, True, + token, user_id=user.id, + expire_timestamp=expire_timestamp + ) + + +@utils.supported_filters() +@database.run_in_session() +@utils.wrap_to_dict(RESP_TOKEN_FIELDS) +def clean_user_token(session, user, token): + """clean user token in database.""" + return utils.del_db_objects( + session, models.UserToken, + token=token, user_id=user.id + ) + + +@utils.supported_filters() +@check_user_admin_or_owner() +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def get_user( + session, getter, user_id, + exception_when_missing=True, **kwargs +): + """get field dict of a user.""" + return utils.get_db_object( + session, models.User, exception_when_missing, id=user_id + ) + + +@utils.supported_filters() +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def get_current_user( + session, getter, + exception_when_missing=True, **kwargs +): + """get field dict of a user.""" + return utils.get_db_object( + session, models.User, exception_when_missing, id=getter.id + ) + + +@utils.supported_filters( + optional_support_keys=SUPPORTED_FIELDS +) +@check_user_admin() +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def list_users(session, lister, **filters): + """List fields of all users by some fields.""" + return utils.list_db_objects( + session, models.User, **filters + ) + + +@utils.input_validates(email=_check_email) +@utils.supported_filters( + ADDED_FIELDS, + optional_support_keys=OPTIONAL_ADDED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@check_user_admin() +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def add_user( + session, creator, + exception_when_existing=True, + **kwargs +): + """Create a user and return created user object.""" + return add_user_internal( + session, exception_when_existing, **kwargs + ) + + +@utils.supported_filters() +@check_user_admin() +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def del_user(session, deleter, user_id, **kwargs): + """delete a user and return the deleted user object.""" + user = utils.get_db_object(session, models.User, id=user_id) + return utils.del_db_object(session, user) + + +@utils.supported_filters( + optional_support_keys=UPDATED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@utils.input_validates(email=_check_email) +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def update_user(session, updater, user_id, **kwargs): + """Update a user and return the updated user object.""" + user = utils.get_db_object( + session, models.User, id=user_id + ) + allowed_fields = set() + if updater.is_admin: + allowed_fields |= set(ADMIN_UPDATED_FIELDS) + if updater.id == user_id: + allowed_fields |= set(SELF_UPDATED_FIELDS) + unsupported_fields = set(kwargs) - allowed_fields + if unsupported_fields: + # The user is not allowed to update a user. + raise exception.Forbidden( + 'User %s has no permission to update user %s fields %s.' % ( + updater.email, user.email, unsupported_fields + ) + ) + return utils.update_db_object(session, user, **kwargs) + + +@utils.supported_filters(optional_support_keys=PERMISSION_SUPPORTED_FIELDS) +@check_user_admin_or_owner() +@database.run_in_session() +@utils.wrap_to_dict(PERMISSION_RESP_FIELDS) +def get_permissions(session, lister, user_id, **kwargs): + """List permissions of a user.""" + return utils.list_db_objects( + session, models.UserPermission, user_id=user_id, **kwargs + ) + + +@utils.supported_filters() +@check_user_admin_or_owner() +@database.run_in_session() +@utils.wrap_to_dict(PERMISSION_RESP_FIELDS) +def get_permission( + session, getter, user_id, permission_id, + exception_when_missing=True, **kwargs +): + """Get a specific user permission.""" + return utils.get_db_object( + session, models.UserPermission, + exception_when_missing, + user_id=user_id, permission_id=permission_id, + **kwargs + ) + + +@utils.supported_filters() +@check_user_admin_or_owner() +@database.run_in_session() +@utils.wrap_to_dict(PERMISSION_RESP_FIELDS) +def del_permission(session, deleter, user_id, permission_id, **kwargs): + """Delete a specific user permission.""" + user_permission = utils.get_db_object( + session, models.UserPermission, + user_id=user_id, permission_id=permission_id, + **kwargs + ) + return utils.del_db_object(session, user_permission) + + +@utils.supported_filters( + PERMISSION_ADDED_FIELDS, + ignore_support_keys=IGNORE_FIELDS +) +@check_user_admin() +@database.run_in_session() +@utils.wrap_to_dict(PERMISSION_RESP_FIELDS) +def add_permission( + session, creator, user_id, + exception_when_missing=True, permission_id=None +): + """Add an user permission.""" + return utils.add_db_object( + session, models.UserPermission, exception_when_missing, + user_id, permission_id + ) + + +def _get_permission_filters(permission_ids): + if permission_ids == 'all': + return {} + else: + return {'id': permission_ids} + + +@utils.supported_filters( + optional_support_keys=[ + 'add_permissions', 'remove_permissions', 'set_permissions' + ] +) +@check_user_admin() +@database.run_in_session() +@utils.wrap_to_dict(PERMISSION_RESP_FIELDS) +def update_permissions( + session, updater, user_id, + add_permissions=[], remove_permissions=[], + set_permissions=None, **kwargs +): + """update user permissions.""" + user = utils.get_db_object(session, models.User, id=user_id) + if remove_permissions: + _remove_user_permissions( + session, user, + **_get_permission_filters(remove_permissions) + ) + if add_permissions: + _add_user_permissions( + session, user, + **_get_permission_filters(add_permissions) + ) + if set_permissions is not None: + _set_user_permissions( + session, user, + **_get_permission_filters(set_permissions) + ) + return user.user_permissions diff --git a/compass/db/api/user_log.py b/compass/db/api/user_log.py new file mode 100644 index 00000000..c5fcae23 --- /dev/null +++ b/compass/db/api/user_log.py @@ -0,0 +1,80 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""UserLog database operations.""" +import logging + +from compass.db.api import database +from compass.db.api import user as user_api +from compass.db.api import utils +from compass.db import exception +from compass.db import models + + +SUPPORTED_FIELDS = ['user_email', 'timestamp'] +USER_SUPPORTED_FIELDS = ['timestamp'] +RESP_FIELDS = ['user_id', 'logs', 'timestamp'] + + +@database.run_in_session() +def log_user_action(session, user_id, action): + """Log user action.""" + utils.add_db_object( + session, models.UserLog, True, user_id=user_id, action=action + ) + + +@utils.supported_filters(optional_support_keys=USER_SUPPORTED_FIELDS) +@user_api.check_user_admin_or_owner() +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def list_user_actions(session, lister, user_id, **filters): + """list user actions.""" + return utils.list_db_objects( + session, models.UserLog, order_by=['timestamp'], + user_id=user_id, **filters + ) + + +@utils.supported_filters(optional_support_keys=SUPPORTED_FIELDS) +@user_api.check_user_admin() +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def list_actions(session, lister, **filters): + """list actions.""" + return utils.list_db_objects( + session, models.UserLog, order_by=['timestamp'], **filters + ) + + +@utils.supported_filters() +@user_api.check_user_admin_or_owner() +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def del_user_actions(session, deleter, user_id, **filters): + """delete user actions.""" + return utils.del_db_objects( + session, models.UserLog, user_id=user_id, **filters + ) + + +@utils.supported_filters() +@user_api.check_user_admin() +@database.run_in_session() +@utils.wrap_to_dict(RESP_FIELDS) +def del_actions(session, deleter, **filters): + """delete actions.""" + return utils.del_db_objects( + session, models.UserLog, **filters + ) diff --git a/compass/db/api/utils.py b/compass/db/api/utils.py new file mode 100644 index 00000000..d20f09df --- /dev/null +++ b/compass/db/api/utils.py @@ -0,0 +1,733 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Utils for database usage.""" + +import functools +import inspect +import logging +import netaddr +import re + +from sqlalchemy import or_ + +from compass.db import exception +from compass.db import models + + +def model_query(session, model): + """model query.""" + if not issubclass(model, models.BASE): + raise exception.DatabaseException("model should be sublass of BASE!") + + return session.query(model) + + +def _default_list_condition_func(col_attr, value, condition_func): + conditions = [] + for sub_value in value: + condition = condition_func(col_attr, sub_value) + if condition is not None: + conditions.append(condition) + if conditions: + return or_(*conditions) + else: + return None + + +def _one_item_list_condition_func(col_attr, value, condition_func): + if value: + return condition_func(col_attr, value[0]) + else: + return None + + +def _model_filter_by_condition( + query, col_attr, value, condition_func, + list_condition_func=_default_list_condition_func): + if isinstance(value, list): + condition = list_condition_func( + col_attr, value, condition_func + ) + else: + condition = condition_func(col_attr, value) + if condition is not None: + query = query.filter(condition) + return query + + +def _between_condition(col_attr, value): + if value[0] is not None and value[1] is not None: + return col_attr.between(value[0], value[1]) + if value[0] is not None: + return col_attr >= value[0] + if value[1] is not None: + return col_attr <= value[1] + return None + + +def model_order_by(query, model, order_by): + if not order_by: + return query + order_by_cols = [] + for key in order_by: + if isinstance(key, tuple): + key, is_desc = key + else: + is_desc = False + if isinstance(key, basestring): + if hasattr(model, key): + col_attr = getattr(model, key) + else: + continue + else: + col_attr = key + if is_desc: + order_by_cols.append(col_attr.desc()) + else: + order_by_cols.append(col_attr) + return query.order_by(*order_by_cols) + + +def model_filter(query, model, **filters): + for key, value in filters.items(): + if isinstance(key, basestring): + if hasattr(model, key): + col_attr = getattr(model, key) + else: + continue + else: + col_attr = key + if isinstance(value, list): + query = query.filter(col_attr.in_(value)) + elif isinstance(value, dict): + if 'eq' in value: + query = _model_filter_by_condition( + query, col_attr, value['eq'], + lambda attr, data: attr == data, + lambda attr, data, condition_func: attr.in_(data) + ) + if 'lt' in value: + query = _model_filter_by_condition( + query, col_attr, value['lt'], + lambda attr, data: attr < data, + _one_item_list_condition_func + ) + if 'gt' in value: + query = _model_filter_by_condition( + query, col_attr, value['gt'], + lambda attr, data: attr > data, + _one_item_list_condition_func + ) + if 'le' in value: + query = _model_filter_by_condition( + query, col_attr, value['le'], + lambda attr, data: attr <= data, + _one_item_list_condition_func + ) + if 'ge' in value: + query = _model_filter_by_condition( + query, col_attr, value['ge'], + lambda attr, data: attr >= data, + _one_item_list_condition_func + ) + if 'ne' in value: + query = _model_filter_by_condition( + query, col_attr, value['ne'], None, + lambda attr, data, condition_func: ~attr.in_(data) + ) + if 'in' in value: + query = query.filter(col_attr.in_(value['in'])) + if 'startswith' in value: + query = _model_filter_by_condition( + query, col_attr, value['startswith'], + lambda attr, data: attr.like('%s%%' % data) + ) + if 'endswith' in value: + query = _model_filter_by_condition( + query, col_attr, value['endswith'], + lambda attr, data: attr.like('%%%s' % data) + ) + if 'like' in value: + query = _model_filter_by_condition( + query, col_attr, value['like'], + lambda attr, data: attr.like('%%%s%%' % data) + ) + if 'between' in value: + query = _model_filter_by_condition( + query, col_attr, value['between'], + _between_condition + ) + else: + query = query.filter(col_attr == value) + + return query + + +def replace_output(**output_mapping): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **kwargs): + return _replace_output( + func(*args, **kwargs), **output_mapping + ) + return wrapper + return decorator + + +def _replace_output(data, **output_mapping): + """Helper to replace output data.""" + if isinstance(data, list): + return [ + _replace_output(item, **output_mapping) + for item in data + ] + info = {} + for key, value in data.items(): + if key in output_mapping: + output_key = output_mapping[key] + if isinstance(output_key, basestring): + info[output_key] = value + else: + info[key] = ( + _replace_output(value, **output_key) + ) + else: + info[key] = value + return info + + +def wrap_to_dict(support_keys=[], **filters): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **kwargs): + return _wrapper_dict( + func(*args, **kwargs), support_keys, **filters + ) + return wrapper + return decorator + + +def _wrapper_dict(data, support_keys, **filters): + """Helper for warpping db object into dictionary.""" + if isinstance(data, list): + return [ + _wrapper_dict(item, support_keys, **filters) + for item in data + ] + if isinstance(data, models.HelperMixin): + data = data.to_dict() + if not isinstance(data, dict): + raise exception.InvalidResponse( + 'response %s type is not dict' % data + ) + info = {} + for key in support_keys: + if key in data: + if key in filters: + filter_keys = filters[key] + if isinstance(filter_keys, dict): + info[key] = _wrapper_dict( + data[key], filter_keys.keys(), + **filter_keys + ) + else: + info[key] = _wrapper_dict( + data[key], filter_keys + ) + else: + info[key] = data[key] + return info + + +def replace_input_types(**kwarg_mapping): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **kwargs): + replaced_kwargs = {} + for key, value in kwargs.items(): + if key in kwarg_mapping: + replaced_kwargs[key] = kwarg_mapping[key](value) + else: + replaced_kwargs[key] = value + return func(*args, **replaced_kwargs) + return wrapper + return decorator + + +def replace_filters(**filter_mapping): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **filters): + replaced_filters = {} + for key, value in filters.items(): + if key in filter_mapping: + replaced_filters[filter_mapping[key]] = value + else: + replaced_filters[key] = value + return func(*args, **replaced_filters) + return wrapper + return decorator + + +def supported_filters( + support_keys=[], + optional_support_keys=[], + ignore_support_keys=[] +): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **filters): + must_support_keys = set(support_keys) + all_support_keys = must_support_keys | set(optional_support_keys) + filter_keys = set(filters) + unsupported_keys = ( + filter_keys - all_support_keys - set(ignore_support_keys) + ) + if unsupported_keys: + raise exception.InvalidParameter( + 'filter keys %s are not supported' % str( + list(unsupported_keys) + ) + ) + missing_keys = must_support_keys - filter_keys + if missing_keys: + raise exception.InvalidParameter( + 'filter keys %s not found' % str( + list(missing_keys) + ) + ) + filtered_filters = dict([ + (key, value) + for key, value in filters.items() + if key not in ignore_support_keys + ]) + return func(*args, **filtered_filters) + return wrapper + return decorator + + +def _obj_equal(check, obj): + if check == obj: + return True + if not issubclass(obj.__class__, check.__class__): + return False + if isinstance(obj, dict): + return _dict_equal(check, obj) + elif isinstance(obj, list): + return _list_equal(check, obj) + else: + return False + + +def _list_equal(check_list, obj_list): + return set(check_list).issubset(set(obj_list)) + + +def _dict_equal(check_dict, obj_dict): + for key, value in check_dict.items(): + if ( + key not in obj_dict or + not _obj_equal(check_dict[key], obj_dict[key]) + ): + return False + return True + + +def general_filter_callback(general_filter, obj): + if 'resp_eq' in general_filter: + return _obj_equal(general_filter['resp_eq'], obj) + elif 'resp_in' in general_filter: + in_filters = general_filter['resp_in'] + if not in_filters: + return True + for in_filer in in_filters: + if _obj_equal(in_filer, obj): + return True + return False + elif 'resp_lt' in general_filter: + return obj < general_filter['resp_lt'] + elif 'resp_le' in general_filter: + return obj <= general_filter['resp_le'] + elif 'resp_gt' in general_filter: + return obj > general_filter['resp_gt'] + elif 'resp_ge' in general_filter: + return obj >= general_filter['resp_gt'] + elif 'resp_match' in general_filter: + return bool(re.match(general_filter['resp_match'], obj)) + else: + return True + + +def filter_output(filter_callbacks, filters, obj, missing_ok=False): + for callback_key, callback_value in filter_callbacks.items(): + if callback_key not in filters: + continue + if callback_key not in obj: + if missing_ok: + continue + else: + raise exception.InvalidResponse( + '%s is not in %s' % (callback_key, obj) + ) + if not callback_value( + filters[callback_key], obj[callback_key] + ): + return False + return True + + +def output_filters(missing_ok=False, **filter_callbacks): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **filters): + filtered_obj_list = [] + obj_list = func(*args, **filters) + for obj in obj_list: + if filter_output( + filter_callbacks, filters, obj, missing_ok + ): + filtered_obj_list.append(obj) + return filtered_obj_list + return wrapper + return decorator + + +def _input_validates(args_validators, kwargs_validators, *args, **kwargs): + for i, value in enumerate(args): + if i < len(args_validators) and args_validators[i]: + args_validators[i](value) + for key, value in kwargs.items(): + if kwargs_validators.get(key): + kwargs_validators[key](value) + + +def input_validates(*args_validators, **kwargs_validators): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **kwargs): + _input_validates( + args_validators, kwargs_validators, + *args, **kwargs + ) + return func(*args, **kwargs) + return wrapper + return decorator + + +def _output_validates(kwargs_validators, obj): + if isinstance(obj, list): + for item in obj: + _output_validates(kwargs_validators, item) + return + if isinstance(obj, models.HelperMixin): + obj = obj.to_dict() + if not isinstance(obj, dict): + raise exception.InvalidResponse( + 'response %s type is not dict' % str(obj) + ) + for key, value in obj.items(): + if key in kwargs_validators: + kwargs_validators[key](value) + + +def output_validates(**kwargs_validators): + def decorator(func): + @functools.wraps(func) + def wrapper(*args, **kwargs): + obj = func(*args, **kwargs) + if isinstance(obj, list): + for obj_item in obj: + _output_validates(kwargs_validators, obj_item) + else: + _output_validates(kwargs_validators, obj) + return obj + return wrapper + return decorator + + +def get_db_object(session, table, exception_when_missing=True, **kwargs): + """Get db object.""" + with session.begin(subtransactions=True): + logging.debug( + 'session %s get db object %s from table %s', + session, kwargs, table.__name__) + db_object = model_filter( + model_query(session, table), table, **kwargs + ).first() + logging.debug( + 'session %s got db object %s', session, db_object + ) + if db_object: + return db_object + + if not exception_when_missing: + return None + + raise exception.RecordNotExists( + 'Cannot find the record in table %s: %s' % ( + table.__name__, kwargs + ) + ) + + +def add_db_object(session, table, exception_when_existing=True, + *args, **kwargs): + """Create db object.""" + with session.begin(subtransactions=True): + logging.debug( + 'session %s add object %s atributes %s to table %s', + session, args, kwargs, table.__name__) + argspec = inspect.getargspec(table.__init__) + arg_names = argspec.args[1:] + arg_defaults = argspec.defaults + if not arg_defaults: + arg_defaults = [] + if not ( + len(arg_names) - len(arg_defaults) <= len(args) <= len(arg_names) + ): + raise exception.InvalidParameter( + 'arg names %s does not match arg values %s' % ( + arg_names, args) + ) + db_keys = dict(zip(arg_names, args)) + if db_keys: + db_object = session.query(table).filter_by(**db_keys).first() + else: + db_object = None + + new_object = False + if db_object: + if exception_when_existing: + raise exception.DuplicatedRecord( + '%s exists in table %s' % (db_keys, table.__name__) + ) + else: + db_object = table(**db_keys) + new_object = True + + for key, value in kwargs.items(): + setattr(db_object, key, value) + + if new_object: + session.add(db_object) + session.flush() + db_object.initialize() + db_object.validate() + logging.debug( + 'session %s db object %s added', session, db_object + ) + return db_object + + +def list_db_objects(session, table, order_by=[], **filters): + """List db objects.""" + with session.begin(subtransactions=True): + logging.debug( + 'session %s list db objects by filters %s in table %s', + session, filters, table.__name__ + ) + db_objects = model_order_by( + model_filter( + model_query(session, table), + table, + **filters + ), + table, + order_by + ).all() + logging.debug( + 'session %s got listed db objects: %s', + session, db_objects + ) + return db_objects + + +def del_db_objects(session, table, **filters): + """delete db objects.""" + with session.begin(subtransactions=True): + logging.debug( + 'session %s delete db objects by filters %s in table %s', + session, filters, table.__name__ + ) + query = model_filter( + model_query(session, table), table, **filters + ) + db_objects = query.all() + query.delete(synchronize_session=False) + logging.debug( + 'session %s db objects %s deleted', session, db_objects + ) + return db_objects + + +def update_db_objects(session, table, **filters): + """Update db objects.""" + with session.begin(subtransactions=True): + logging.debug( + 'session %s update db objects by filters %s in table %s', + session, filters, table.__name__) + db_objects = model_filter( + model_query(session, table), table, **filters + ).all() + for db_object in db_objects: + logging.debug('update db object %s', db_object) + session.flush() + db_object.update() + db_object.validate() + logging.debug( + 'session %s db objects %s updated', session, db_objects + ) + return db_objects + + +def update_db_object(session, db_object, **kwargs): + """Update db object.""" + with session.begin(subtransactions=True): + logging.debug( + 'session %s update db object %s by value %s', + session, db_object, kwargs + ) + for key, value in kwargs.items(): + setattr(db_object, key, value) + session.flush() + db_object.update() + db_object.validate() + logging.debug( + 'session %s db object %s updated', session, db_object + ) + return db_object + + +def del_db_object(session, db_object): + """Delete db object.""" + with session.begin(subtransactions=True): + logging.debug( + 'session %s delete db object %s', + session, db_object + ) + session.delete(db_object) + logging.debug( + 'session %s db object %s deleted', + session, db_object + ) + return db_object + + +def check_ip(ip): + try: + netaddr.IPAddress(ip) + except Exception as error: + logging.exception(error) + raise exception.InvalidParameter( + 'ip address %s format uncorrect' % ip + ) + + +def check_mac(mac): + try: + netaddr.EUI(mac) + except Exception as error: + logging.exception(error) + raise exception.InvalidParameter( + 'invalid mac address %s' % mac + ) + + +NAME_PATTERN = re.compile(r'[a-zA-Z0-9][a-zA-Z0-9_-]*') + + +def check_name(name): + if not NAME_PATTERN.match(name): + raise exception.InvalidParameter( + 'name %s does not match the pattern %s' % ( + name, NAME_PATTERN.pattern + ) + ) + + +def _check_ipmi_credentials_ip(ip): + check_ip(ip) + + +def check_ipmi_credentials(ipmi_credentials): + if not ipmi_credentials: + return + if not isinstance(ipmi_credentials, dict): + raise exception.InvalidParameter( + 'invalid ipmi credentials %s' % ipmi_credentials + + ) + for key in ipmi_credentials: + if key not in ['ip', 'username', 'password']: + raise exception.InvalidParameter( + 'unrecognized field %s in ipmi credentials %s' % ( + key, ipmi_credentials + ) + ) + for key in ['ip', 'username', 'password']: + if key not in ipmi_credentials: + raise exception.InvalidParameter( + 'no field %s in ipmi credentials %s' % ( + key, ipmi_credentials + ) + ) + check_ipmi_credential_field = '_check_ipmi_credentials_%s' % key + this_module = globals() + if check_ipmi_credential_field in this_module: + this_module[check_ipmi_credential_field]( + ipmi_credentials[key] + ) + else: + logging.debug( + 'function %s is not defined', check_ipmi_credential_field + ) + + +def _check_switch_credentials_version(version): + if version not in ['1', '2c', '3']: + raise exception.InvalidParameter( + 'unknown snmp version %s' % version + ) + + +def check_switch_credentials(credentials): + if not credentials: + return + if not isinstance(credentials, dict): + raise exception.InvalidParameter( + 'credentials %s is not dict' % credentials + ) + for key in credentials: + if key not in ['version', 'community']: + raise exception.InvalidParameter( + 'unrecognized key %s in credentials %s' % (key, credentials) + ) + for key in ['version', 'community']: + if key not in credentials: + raise exception.InvalidParameter( + 'there is no %s field in credentials %s' % (key, credentials) + ) + + key_check_func_name = '_check_switch_credentials_%s' % key + this_module = globals() + if key_check_func_name in this_module: + this_module[key_check_func_name]( + credentials[key] + ) + else: + logging.debug( + 'function %s is not defined', + key_check_func_name + ) diff --git a/compass/db/callback.py b/compass/db/callback.py new file mode 100644 index 00000000..35798bca --- /dev/null +++ b/compass/db/callback.py @@ -0,0 +1,204 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Metadata Callback methods.""" +import logging +import netaddr +import random +import re +import socket + +from compass.db import exception +from compass.utils import setting_wrapper as setting +from compass.utils import util + + +CALLBACK_GLOBALS = globals() +CALLBACK_LOCALS = locals() +CALLBACK_CONFIGS = util.load_configs( + setting.CALLBACK_DIR, + config_name_suffix='.py', + env_globals=CALLBACK_GLOBALS, + env_locals=CALLBACK_LOCALS +) +for callback_config in CALLBACK_CONFIGS: + CALLBACK_LOCALS.update(callback_config) + + +def default_proxy(name, **kwargs): + return setting.COMPASS_SUPPORTED_PROXY + + +def proxy_options(name, **kwargs): + return [setting.COMPASS_SUPPORTED_PROXY] + + +def default_noproxy(name, **kwargs): + return setting.COMPASS_SUPPORTED_DEFAULT_NOPROXY + + +def noproxy_options(name, **kwargs): + return setting.COMPASS_SUPPORTED_DEFAULT_NOPROXY + + +def default_ntp_server(name, **kwargs): + return setting.COMPASS_SUPPORTED_NTP_SERVER + + +def ntp_server_options(name, **kwargs): + return setting.COMPASS_SUPPORTED_NTP_SERVER + + +def default_dns_servers(name, **kwargs): + return setting.COMPASS_SUPPORTED_DNS_SERVERS + + +def dns_servers_options(name, **kwargs): + return setting.COMPASS_SUPPORTED_DNS_SERVERS + + +def default_domain(name, **kwargs): + if setting.COMPASS_SUPPORTED_DOMAINS: + return setting.COMPASS_SUPPORTED_DOMAINS[0] + else: + return None + + +def domain_options(name, **kwargs): + return setting.COMPASS_SUPPORTED_DOMAINS + + +def default_search_path(name, **kwargs): + return setting.COMPASS_SUPPORTED_DOMAINS + + +def search_path_options(name, **kwargs): + return setting.COMPASS_SUPPORTED_DOMAINS + + +def default_gateway(name, **kwargs): + return setting.COMPASS_SUPPORTED_DEFAULT_GATEWAY + + +def default_gateway_options(name, **kwargs): + return [setting.COMPASS_SUPPORTED_DEFAULT_GATEWAY] + + +def default_localrepo(name, **kwargs): + return setting.COMPASS_SUPPORTED_LOCAL_REPO + + +def default_localrepo_options(name, **kwargs): + return [setting.COMPASS_SUPPORTED_LOCAL_REPO] + + +def autofill_callback_default(name, config, **kwargs): + if config is None: + if ( + 'autofill_types' not in kwargs or + not (set(kwargs['autofill_types']) & set(kwargs)) + ): + return None + if 'default_value' not in kwargs: + return None + return kwargs['default_value'] + return config + + +def autofill_callback_random_option(name, config, **kwargs): + if config is None: + if ( + 'autofill_types' not in kwargs or + not (set(kwargs['autofill_types']) & set(kwargs)) + ): + return None + if 'options' not in kwargs or not kwargs['options']: + return None + return random.choice(kwargs['options']) + return config + + +def autofill_no_proxy(name, config, **kwargs): + logging.debug( + 'autofill %s config %s by params %s', + name, config, kwargs + ) + if 'cluster' in kwargs: + if config is None: + config = [] + if 'default_value' in kwargs: + for default_no_proxy in kwargs['default_value']: + if default_no_proxy and default_no_proxy not in config: + config.append(default_no_proxy) + cluster = kwargs['cluster'] + for clusterhost in cluster.clusterhosts: + host = clusterhost.host + hostname = host.name + if hostname not in config: + config.append(hostname) + for host_network in host.host_networks: + if host_network.is_mgmt: + ip = host_network.ip + if ip not in config: + config.append(ip) + if not config: + return config + return [no_proxy for no_proxy in config if no_proxy] + + +def autofill_network_mapping(name, config, **kwargs): + logging.debug( + 'autofill %s config %s by params %s', + name, config, kwargs + ) + if not config: + return config + if isinstance(config, basestring): + config = { + 'interface': config, + 'subnet': None + } + if not isinstance(config, dict): + return config + if 'interface' not in config: + return config + subnet = None + interface = config['interface'] + if 'cluster' in kwargs: + cluster = kwargs['cluster'] + for clusterhost in cluster.clusterhosts: + host = clusterhost.host + for host_network in host.host_networks: + if host_network.interface == interface: + subnet = host_network.subnet.subnet + elif 'clusterhost' in kwargs: + clusterhost = kwargs['clusterhost'] + host = clusterhost.host + for host_network in host.host_networks: + if host_network.interface == interface: + subnet = host_network.subnet.subnet + if not subnet: + raise exception.InvalidParameter( + 'interface %s not found in host(s)' % interface + ) + if 'subnet' not in config or not config['subnet']: + config['subnet'] = subnet + else: + if config['subnet'] != subnet: + raise exception.InvalidParameter( + 'subnet %s in config is not equal to subnet %s in hosts' % ( + config['subnet'], subnet + ) + ) + return config diff --git a/compass/db/config_validation/__init__.py b/compass/db/config_validation/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/compass/db/config_validation/default_validator.py b/compass/db/config_validation/default_validator.py new file mode 100644 index 00000000..fdc2dab6 --- /dev/null +++ b/compass/db/config_validation/default_validator.py @@ -0,0 +1,129 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Default config validation function.""" + +from sqlalchemy import or_ + +from compass.db.models import OSConfigField +from compass.db.models import OSConfigMetadata +from compass.db import validator + +MAPPER = { + "os_id": { + "metaTable": OSConfigMetadata, + "metaFieldTable": OSConfigField + } + # "adapter_id": { + # "metaTable": AdapterConfigMetadata, + # "metaFieldTable": AdapterConfigField + # } +} + + +def validate_config(session, config, id_name, id_value, patch=True): + """Validates the given config value according to the config + metadata of the asscoiated os_id or adapter_id. Returns + a tuple (status, message). + """ + if id_name not in MAPPER.keys(): + return (False, "Invalid id type %s" % id_name) + + meta_table = MAPPER[id_name]['metaTable'] + metafield_table = MAPPER[id_name]['metaFieldTable'] + with session.begin(subtransactions=True): + name_col = name_col = getattr(meta_table, 'name') + id_col = getattr(meta_table, id_name) + + return _validate_config_helper(session, config, + name_col, id_col, id_value, + meta_table, metafield_table, + patch) + + +def _validate_config_helper(session, config, + name_col, id_col, id_value, + meta_table, metafield_table, patch=True): + + with session.begin(subtransactions=True): + for elem in config: + + obj = session.query(meta_table).filter(name_col == elem)\ + .filter(or_(id_col is None, + id_col == id_value)).first() + + if not obj and "_type" not in config[elem]: + return (False, "Invalid metadata '%s'!" % elem) + + if "_type" in config[elem]: + # Metadata is a variable + metadata_name = config[elem]['_type'] + obj = session.query(meta_table).filter_by(name=metadata_name)\ + .first() + + if not obj: + err_msg = ("Invalid metatdata '%s' or missing '_type'" + "to indicate this is a variable metatdata." + % elem) + return (False, err_msg) + + # TODO(Grace): validate metadata here + del config[elem]['_type'] + + fields = obj.fields + + if not fields: + is_valid, message = _validate_config_helper(session, + config[elem], + name_col, id_col, + id_value, + meta_table, + metafield_table, + patch) + if not is_valid: + return (False, message) + + else: + field_config = config[elem] + for key in field_config: + field = session.query(metafield_table)\ + .filter_by(field=key).first() + if not field: + # The field is not in schema + return (False, "Invalid field '%s'!" % key) + + value = field_config[key] + if field.is_required and value is None: + # The value of this field is required + # and cannot be none + err = "The value of field '%s' cannot be null!" % key + return (False, err) + + if field.validator: + func = getattr(validator, field.validator) + if not func or not func(value): + err_msg = ("The value of the field '%s' is " + "invalid format or None!" % key) + return (False, err_msg) + + # This is a PUT request. We need to check presence of all + # required fields. + if not patch: + for field in fields: + name = field.field + if field.is_required and name not in field_config: + return (False, + "Missing required field '%s'" % name) + + return (True, None) diff --git a/compass/db/config_validation/extension/__init__.py b/compass/db/config_validation/extension/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/compass/db/config_validation/extension/openstack.py b/compass/db/config_validation/extension/openstack.py new file mode 100644 index 00000000..6b3af690 --- /dev/null +++ b/compass/db/config_validation/extension/openstack.py @@ -0,0 +1,18 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +def validate_cluster_config(): + # TODO(xiaodong): Add openstack specific validation here. + pass diff --git a/compass/db/database.py b/compass/db/database.py deleted file mode 100644 index f9a86e98..00000000 --- a/compass/db/database.py +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Provider interface to manipulate database.""" -import logging - -from contextlib import contextmanager -from sqlalchemy import create_engine -from sqlalchemy.orm import scoped_session -from sqlalchemy.orm import sessionmaker -from threading import local - -from compass.db import model -from compass.utils import setting_wrapper as setting - - -ENGINE = create_engine(setting.SQLALCHEMY_DATABASE_URI, convert_unicode=True) -SESSION = sessionmaker(autocommit=False, autoflush=False) -SESSION.configure(bind=ENGINE) -SCOPED_SESSION = scoped_session(SESSION) - -model.BASE.query = SCOPED_SESSION.query_property() - -SESSION_HOLDER = local() - -model.BASE.query = SCOPED_SESSION.query_property() - - -def init(database_url): - """Initialize database. - - :param database_url: string, database url. - """ - global ENGINE - global SCOPED_SESSION - ENGINE = create_engine(database_url, convert_unicode=True) - SESSION.configure(bind=ENGINE) - SCOPED_SESSION = scoped_session(SESSION) - model.BASE.query = SCOPED_SESSION.query_property() - - -def in_session(): - """check if in database session scope.""" - if hasattr(SESSION_HOLDER, 'session'): - return True - else: - return False - - -@contextmanager -def session(): - """database session scope. - - .. note:: - To operate database, it should be called in database session. - """ - if hasattr(SESSION_HOLDER, 'session'): - logging.error('we are already in session') - raise Exception('session already exist') - else: - new_session = SCOPED_SESSION() - SESSION_HOLDER.session = new_session - - try: - yield new_session - new_session.commit() - except Exception as error: - new_session.rollback() - logging.error('failed to commit session') - logging.exception(error) - raise error - finally: - new_session.close() - SCOPED_SESSION.remove() - del SESSION_HOLDER.session - - -def current_session(): - """Get the current session scope when it is called. - - :return: database session. - """ - try: - return SESSION_HOLDER.session - except Exception as error: - logging.error('It is not in the session scope') - logging.exception(error) - raise error - - -def create_db(): - """Create database.""" - model.BASE.metadata.create_all(bind=ENGINE) - with session() as _s: - # Initialize default user - user = model.User(email='admin@abc.com', password='admin') - logging.info('Init user: %s, %s' % (user.email, user.get_password())) - _s.add(user) - - -def drop_db(): - """Drop database.""" - model.BASE.metadata.drop_all(bind=ENGINE) - - -def create_table(table): - """Create table. - - :param table: Class of the Table defined in the model. - """ - table.__table__.create(bind=ENGINE, checkfirst=True) - - -def drop_table(table): - """Drop table. - - :param table: Class of the Table defined in the model. - """ - table.__table__.drop(bind=ENGINE, checkfirst=True) diff --git a/compass/db/exception.py b/compass/db/exception.py new file mode 100644 index 00000000..b9595a26 --- /dev/null +++ b/compass/db/exception.py @@ -0,0 +1,110 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Custom exception""" +import traceback + + +class DatabaseException(Exception): + def __init__(self, message): + super(DatabaseException, self).__init__(message) + self.traceback = traceback.format_exc() + self.status_code = 400 + + def to_dict(self): + return {'message': str(self)} + + +class RecordNotExists(DatabaseException): + """Define the exception for referring non-existing object in DB.""" + def __init__(self, message): + super(RecordNotExists, self).__init__(message) + self.status_code = 404 + + +class DuplicatedRecord(DatabaseException): + """Define the exception for trying to insert an existing object in DB.""" + def __init__(self, message): + super(DuplicatedRecord, self).__init__(message) + self.status_code = 409 + + +class Unauthorized(DatabaseException): + """Define the exception for invalid user login.""" + def __init__(self, message): + super(Unauthorized, self).__init__(message) + self.status_code = 401 + + +class UserDisabled(DatabaseException): + """Define the exception that a disabled user tries to do some operations. + """ + def __init__(self, message): + super(UserDisabled, self).__init__(message) + self.status_code = 403 + + +class Forbidden(DatabaseException): + """Define the exception that a user is trying to make some action + without the right permission. + """ + def __init__(self, message): + super(Forbidden, self).__init__(message) + self.status_code = 403 + + +class NotAcceptable(DatabaseException): + """The data is not acceptable.""" + def __init__(self, message): + super(NotAcceptable, self).__init__(message) + self.status_code = 406 + + +class InvalidParameter(DatabaseException): + """Define the exception that the request has invalid or missing parameters. + """ + def __init__(self, message): + super(InvalidParameter, self).__init__(message) + self.status_code = 400 + + +class InvalidResponse(DatabaseException): + """Define the exception that the response is invalid. + """ + def __init__(self, message): + super(InvalidResponse, self).__init__(message) + self.status_code = 400 + + +class MultiDatabaseException(DatabaseException): + """Define the exception composites with multi exceptions.""" + def __init__(self, exceptions): + super(MultiDatabaseException, self).__init__('multi exceptions') + self.exceptions = exceptions + self.status_code = 400 + + @property + def traceback(self): + tracebacks = [] + for exception in self.exceptions: + tracebacks.append(exception.trackback) + + def to_dict(self): + dict_info = super(MultiDatabaseException, self).to_dict() + dict_info.update({ + 'exceptions': [ + exception.to_dict() for exception in self.exceptions + ] + }) + return dict_info diff --git a/compass/db/models.py b/compass/db/models.py new file mode 100644 index 00000000..da1c4155 --- /dev/null +++ b/compass/db/models.py @@ -0,0 +1,2655 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Database model""" +import copy +import datetime +import logging +import netaddr +import re +import simplejson as json + +from sqlalchemy import BigInteger +from sqlalchemy import Boolean +from sqlalchemy import Column +from sqlalchemy import ColumnDefault +from sqlalchemy import DateTime +from sqlalchemy import Enum +from sqlalchemy.ext.declarative import declarative_base +from sqlalchemy.ext.hybrid import hybrid_property +from sqlalchemy import Float +from sqlalchemy import ForeignKey +from sqlalchemy import Integer +from sqlalchemy.orm import relationship, backref +from sqlalchemy import String +from sqlalchemy import Table +from sqlalchemy import Text +from sqlalchemy.types import TypeDecorator +from sqlalchemy import UniqueConstraint + +from compass.db import callback as metadata_callback +from compass.db import exception +from compass.db import validator as metadata_validator +from compass.utils import util + + +BASE = declarative_base() + + +class JSONEncoded(TypeDecorator): + """Represents an immutable structure as a json-encoded string.""" + + impl = Text + + def process_bind_param(self, value, dialect): + if value is not None: + value = json.dumps(value) + return value + + def process_result_value(self, value, dialect): + if value is not None: + value = json.loads(value) + return value + + +class TimestampMixin(object): + created_at = Column(DateTime, default=lambda: datetime.datetime.now()) + updated_at = Column(DateTime, default=lambda: datetime.datetime.now(), + onupdate=lambda: datetime.datetime.now()) + + +class HelperMixin(object): + def initialize(self): + self.update() + + def update(self): + pass + + @staticmethod + def type_compatible(value, column_type): + if value is None: + return True + if not hasattr(column_type, 'python_type'): + return True + column_python_type = column_type.python_type + if isinstance(value, column_python_type): + return True + if issubclass(column_python_type, basestring): + return isinstance(value, basestring) + if column_python_type in [int, long]: + return type(value) in [int, long] + if column_python_type in [float]: + return type(value) in [float] + if column_python_type in [bool]: + return type(value) in [bool] + return False + + def validate(self): + columns = self.__mapper__.columns + for key, column in columns.items(): + value = getattr(self, key) + if not self.type_compatible(value, column.type): + raise exception.InvalidParameter( + 'column %s value %r type is unexpected: %s' % ( + key, value, column.type + ) + ) + + def to_dict(self): + keys = self.__mapper__.columns.keys() + dict_info = {} + for key in keys: + if key.startswith('_'): + continue + value = getattr(self, key) + if value is not None: + if isinstance(value, datetime.datetime): + value = util.format_datetime(value) + dict_info[key] = value + return dict_info + + +class MetadataMixin(HelperMixin): + name = Column(String(80), nullable=False) + display_name = Column(String(80)) + path = Column(String(256)) + description = Column(Text) + is_required = Column(Boolean, default=False) + required_in_whole_config = Column(Boolean, default=False) + mapping_to = Column(String(80), default='') + _validator = Column('validator', Text) + js_validator = Column(Text) + default_value = Column(JSONEncoded) + _default_callback = Column('default_callback', Text) + default_callback_params = Column( + 'default_callback_params', JSONEncoded, default={} + ) + options = Column(JSONEncoded) + _options_callback = Column('options_callback', Text) + options_callback_params = Column( + 'options_callback_params', JSONEncoded, default={} + ) + _autofill_callback = Column('autofill_callback', Text) + autofill_callback_params = Column( + 'autofill_callback_params', JSONEncoded, default={} + ) + required_in_options = Column(Boolean, default=False) + + def initialize(self): + if not self.display_name: + if self.name: + self.display_name = self.name + super(MetadataMixin, self).initialize() + + def validate(self): + super(MetadataMixin, self).validate() + if not self.name: + raise exception.InvalidParamter( + 'name is not set in os metadata %s' % self.id + ) + + @property + def validator(self): + if not self._validator: + return None + func = eval( + self._validator, + metadata_validator.VALIDATOR_GLOBALS, + metadata_validator.VALIDATOR_LOCALS + ) + if not callable(func): + raise Exception( + 'validator %s is not callable' % self._validator + ) + return func + + @validator.setter + def validator(self, value): + if not value: + self._validator = None + elif isinstance(value, basestring): + self._validator = value + elif callable(value): + self._validator = value.func_name + else: + raise Exception( + 'validator %s is not callable' % value + ) + + @property + def default_callback(self): + if not self._default_callback: + return None + func = eval( + self._default_callback, + metadata_callback.CALLBACK_GLOBALS, + metadata_callback.CALLBACK_LOCALS + ) + if not callable(func): + raise Exception( + 'default callback %s is not callable' % self._default_callback + ) + return func + + @default_callback.setter + def default_callback(self, value): + if not value: + self._default_callback = None + elif isinstance(value, basestring): + self._default_callback = value + elif callable(value): + self._default_callback = value.func_name + else: + raise Exception( + 'default callback %s is not callable' % value + ) + + @property + def options_callback(self): + if not self._options_callback: + return None + func = eval( + self._options_callback, + metadata_callback.CALLBACK_GLOBALS, + metadata_callback.CALLBACK_LOCALS + ) + if not callable(func): + raise Exception( + 'options callback %s is not callable' % self._options_callback + ) + return func + + @options_callback.setter + def options_callback(self, value): + if not value: + self._options_callback = None + elif isinstance(value, basestring): + self._options_callback = value + elif callable(value): + self._options_callback = value.func_name + else: + raise Exception( + 'options callback %s is not callable' % value + ) + + @property + def autofill_callback(self): + if not self._autofill_callback: + return None + func = eval( + self._autofill_callback, + metadata_callback.CALLBACK_GLOBALS, + metadata_callback.CALLBACK_LOCALS + ) + if not callable(func): + raise Exception( + 'autofill callback %s is not callable' % ( + self._autofill_callback + ) + ) + return func + + @autofill_callback.setter + def autofill_callback(self, value): + if not value: + self._autofill_callback = None + elif isinstance(value, basestring): + self._autofill_callback = value + elif callable(value): + self._autofill_callback = value.func_name + else: + raise Exception( + 'autofill callback %s is not callable' % value + ) + + def to_dict(self): + self_dict_info = {} + if self.field: + self_dict_info.update(self.field.to_dict()) + else: + self_dict_info['field_type_data'] = 'dict' + self_dict_info['field_type'] = dict + self_dict_info.update(super(MetadataMixin, self).to_dict()) + validator = self.validator + if validator: + self_dict_info['validator'] = validator + default_callback = self.default_callback + if default_callback: + self_dict_info['default_callback'] = default_callback + options_callback = self.options_callback + if options_callback: + self_dict_info['options_callback'] = options_callback + autofill_callback = self.autofill_callback + if autofill_callback: + self_dict_info['autofill_callback'] = autofill_callback + js_validator = self.js_validator + if js_validator: + self_dict_info['js_validator'] = js_validator + dict_info = { + '_self': self_dict_info + } + for child in self.children: + dict_info.update(child.to_dict()) + return { + self.name: dict_info + } + return dict_info + + +class FieldMixin(HelperMixin): + id = Column(Integer, primary_key=True) + field = Column(String(80), unique=True, nullable=False) + field_type_data = Column( + 'field_type', + Enum( + 'basestring', 'int', 'float', 'list', 'bool', + 'dict', 'object' + ), + ColumnDefault('basestring') + ) + display_type = Column( + Enum( + 'checkbox', 'radio', 'select', + 'multiselect', 'combobox', 'text', + 'multitext', 'password' + ), + ColumnDefault('text') + ) + _validator = Column('validator', Text) + js_validator = Column(Text) + description = Column(Text) + + @property + def field_type(self): + if not self.field_type_data: + return None + field_type = eval(self.field_type_data) + if not type(field_type) == type: + raise Exception( + '%s is not type' % self.field_type_data + ) + return field_type + + @field_type.setter + def field_type(self, value): + if not value: + self.field_type_data = None + elif isinstance(value, basestring): + self.field_type_data = value + elif type(value) == type: + self.field_type_data = value.__name__ + else: + raise Exception( + '%s is not type' % value + ) + + @property + def validator(self): + if not self._validator: + return None + func = eval( + self._validator, + metadata_validator.VALIDATOR_GLOBALS, + metadata_validator.VALIDATOR_LOCALS + ) + if not callable(func): + raise Exception( + '%s is not callable' % self._validator + ) + return func + + @validator.setter + def validator(self, value): + if not value: + self._validator = None + elif isinstance(value, basestring): + self._validator = value + elif callable(value): + self._validator = value.func_name + else: + raise Exception( + '%s is not callable' % value + ) + + def to_dict(self): + dict_info = super(FieldMixin, self).to_dict() + dict_info['field_type'] = self.field_type + validator = self.validator + if validator: + dict_info['validator'] = self.validator + js_validator = self.js_validator + if js_validator: + dict_info['js_validator'] = self.js_validator + return dict_info + + +class InstallerMixin(HelperMixin): + name = Column(String(80), nullable=False) + alias = Column(String(80), unique=True, nullable=False) + settings = Column(JSONEncoded, default={}) + + def validate(self): + super(InstallerMixin, self).validate() + if not self.name: + raise exception.InvalidParameter( + 'name is not set in installer %s' % self.name + ) + + +class StateMixin(TimestampMixin, HelperMixin): + state = Column( + Enum( + 'UNINITIALIZED', 'INITIALIZED', + 'INSTALLING', 'SUCCESSFUL', 'ERROR' + ), + ColumnDefault('UNINITIALIZED') + ) + percentage = Column(Float, default=0.0) + message = Column(Text, default='') + severity = Column( + Enum('INFO', 'WARNING', 'ERROR'), + ColumnDefault('INFO') + ) + + def update(self): + if self.state in ['UNINITIALIZED', 'INITIALIZED']: + self.percentage = 0.0 + self.severity = 'INFO' + self.message = '' + if self.state == 'INSTALLING': + if self.severity == 'ERROR': + self.state = 'ERROR' + elif self.percentage >= 1.0: + self.state = 'SUCCESSFUL' + self.percentage = 1.0 + if self.state == 'SUCCESSFUL': + self.percentage = 1.0 + super(StateMixin, self).update() + + +class LogHistoryMixin(TimestampMixin, HelperMixin): + position = Column(Integer, default=0) + partial_line = Column(Text, default='') + percentage = Column(Float, default=0.0) + message = Column(Text, default='') + severity = Column( + Enum('ERROR', 'WARNING', 'INFO'), + ColumnDefault('INFO') + ) + line_matcher_name = Column( + String(80), default='start' + ) + + def validate(self): + if not self.filename: + raise exception.InvalidParameter( + 'filename is not set in %s' % self.id + ) + + +class HostNetwork(BASE, TimestampMixin, HelperMixin): + """Host network table.""" + __tablename__ = 'host_network' + + id = Column(Integer, primary_key=True) + host_id = Column( + Integer, + ForeignKey('host.id', onupdate='CASCADE', ondelete='CASCADE') + ) + interface = Column( + String(80), nullable=False) + subnet_id = Column( + Integer, + ForeignKey('subnet.id', onupdate='CASCADE', ondelete='CASCADE') + ) + ip_int = Column(BigInteger, unique=True, nullable=False) + is_mgmt = Column(Boolean, default=False) + is_promiscuous = Column(Boolean, default=False) + + __table_args__ = ( + UniqueConstraint('host_id', 'interface', name='constraint'), + ) + + def __init__(self, host_id, interface, **kwargs): + self.host_id = host_id + self.interface = interface + super(HostNetwork, self).__init__(**kwargs) + + @property + def ip(self): + return str(netaddr.IPAddress(self.ip_int)) + + @ip.setter + def ip(self, value): + self.ip_int = int(netaddr.IPAddress(value)) + + @property + def netmask(self): + return str(netaddr.IPNetwork(self.subnet.subnet).netmask) + + def update(self): + self.host.config_validated = False + + def validate(self): + super(HostNetwork, self).validate() + if not self.subnet: + raise exception.InvalidParameter( + 'subnet is not set in %s interface %s' % ( + self.host_id, self.interface + ) + ) + if not self.ip_int: + raise exception.InvalidParameter( + 'ip is not set in %s interface %s' % ( + self.host_id, self.interface + ) + ) + ip = netaddr.IPAddress(self.ip_int) + subnet = netaddr.IPNetwork(self.subnet.subnet) + if ip not in subnet: + raise exception.InvalidParameter( + 'ip %s is not in subnet %s' % ( + str(ip), str(subnet) + ) + ) + + def to_dict(self): + dict_info = super(HostNetwork, self).to_dict() + dict_info['ip'] = self.ip + dict_info['interface'] = self.interface + dict_info['netmask'] = self.netmask + dict_info['subnet'] = self.subnet.subnet + return dict_info + + +class ClusterHostLogHistory(BASE, LogHistoryMixin): + """clusterhost installing log history for each file. + """ + __tablename__ = 'clusterhost_log_history' + + clusterhost_id = Column( + 'id', Integer, + ForeignKey('clusterhost.id', onupdate='CASCADE', ondelete='CASCADE'), + primary_key=True + ) + filename = Column(String(80), primary_key=True, nullable=False) + cluster_id = Column( + Integer, + ForeignKey('cluster.id') + ) + host_id = Column( + Integer, + ForeignKey('host.id') + ) + + def __init__(self, clusterhost_id, filename, **kwargs): + self.clusterhost_id = clusterhost_id + self.filename = filename + super(ClusterHostLogHistory, self).__init__(**kwargs) + + def initialize(self): + self.cluster_id = self.clusterhost.cluster_id + self.host_id = self.clusterhost.host_id + super(ClusterHostLogHistory, self).initialize() + + +class HostLogHistory(BASE, LogHistoryMixin): + """host installing log history for each file. + """ + __tablename__ = 'host_log_history' + + id = Column( + Integer, + ForeignKey('host.id', onupdate='CASCADE', ondelete='CASCADE'), + primary_key=True) + filename = Column(String(80), primary_key=True, nullable=False) + + def __init__(self, id, filename, **kwargs): + self.id = id + self.filename = filename + super(HostLogHistory, self).__init__(**kwargs) + + +class ClusterHostState(BASE, StateMixin): + """ClusterHost state table.""" + __tablename__ = 'clusterhost_state' + + id = Column( + Integer, + ForeignKey( + 'clusterhost.id', + onupdate='CASCADE', ondelete='CASCADE' + ), + primary_key=True + ) + + def update(self): + super(ClusterHostState, self).update() + host_state = self.clusterhost.host.state + if self.state == 'INITIALIZED': + if host_state.state in ['UNINITIALIZED']: + host_state.state = 'INITIALIZED' + host_state.update() + elif self.state == 'INSTALLING': + if host_state.state in ['UNINITIALIZED', 'INITIALIZED']: + host_state.state = 'INSTALLING' + host_state.update() + elif self.state == 'SUCCESSFUL': + if host_state.state != 'SUCCESSFUL': + host_state.state = 'SUCCESSFUL' + host_state.update() + + +class ClusterHost(BASE, TimestampMixin, HelperMixin): + """ClusterHost table.""" + __tablename__ = 'clusterhost' + + clusterhost_id = Column('id', Integer, primary_key=True) + cluster_id = Column( + Integer, + ForeignKey('cluster.id', onupdate='CASCADE', ondelete='CASCADE') + ) + host_id = Column( + Integer, + ForeignKey('host.id', onupdate='CASCADE', ondelete='CASCADE') + ) + _roles = Column('roles', JSONEncoded, default=[]) + config_step = Column(String(80), default='') + package_config = Column(JSONEncoded, default={}) + config_validated = Column(Boolean, default=False) + deployed_package_config = Column(JSONEncoded, default={}) + + log_history = relationship( + ClusterHostLogHistory, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('clusterhost') + ) + + __table_args__ = ( + UniqueConstraint('cluster_id', 'host_id', name='constraint'), + ) + + state = relationship( + ClusterHostState, + uselist=False, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('clusterhost') + ) + + def __init__(self, cluster_id, host_id, **kwargs): + self.cluster_id = cluster_id + self.host_id = host_id + self.state = ClusterHostState() + super(ClusterHost, self).__init__(**kwargs) + + def update(self): + if self.host.reinstall_os: + if self.state in ['SUCCESSFUL', 'ERROR']: + if self.config_validated: + self.state.state = 'INITIALIZED' + else: + self.state.state = 'UNINITIALIZED' + self.state.update() + + @property + def name(self): + return '%s.%s' % (self.host.name, self.cluster.name) + + @property + def patched_package_config(self): + return self.package_config + + @patched_package_config.setter + def patched_package_config(self, value): + package_config = copy.deepcopy(self.package_config) + self.package_config = util.merge_dict(package_config, value) + logging.debug( + 'patch clusterhost %s package_config: %s', + self.clusterhost_id, value + ) + self.config_validated = False + + @property + def put_package_config(self): + return self.package_config + + @put_package_config.setter + def put_package_config(self, value): + package_config = copy.deepcopy(self.package_config) + package_config.update(value) + self.package_config = package_config + logging.debug( + 'put clusterhost %s package_config: %s', + self.clusterhost_id, value + ) + self.config_validated = False + + @property + def patched_os_config(self): + return self.host.os_config + + @patched_os_config.setter + def patched_os_config(self, value): + host = self.host + host.patched_os_config = value + + @property + def put_os_config(self): + return self.host.os_config + + @put_os_config.setter + def put_os_config(self, value): + host = self.host + host.put_os_config = value + + @property + def deployed_os_config(self): + return self.host.deployed_os_config + + @deployed_os_config.setter + def deployed_os_config(self, value): + host = self.host + host.deployed_os_config = value + + @hybrid_property + def distributed_system_name(self): + return self.cluster.distributed_system_name + + @distributed_system_name.expression + def distributed_system_name(cls): + return cls.cluster.distributed_system_name + + @hybrid_property + def os_name(self): + return self.host.os_name + + @os_name.expression + def os_name(cls): + return cls.host.os_name + + @hybrid_property + def clustername(self): + return self.cluster.name + + @clustername.expression + def clustername(cls): + return cls.cluster.name + + @hybrid_property + def hostname(self): + return self.host.hostname + + @hostname.expression + def hostname(cls): + return Host.hostname + + @property + def distributed_system_installed(self): + return self.state.state == 'SUCCESSFUL' + + @property + def resintall_os(self): + return self.host.reinstall_os + + @property + def reinstall_distributed_system(self): + return self.cluster.reinstall_distributed_system + + @property + def os_installed(self): + return self.host.os_installed + + @property + def roles(self): + role_names = list(self._roles) + if not role_names: + return [] + flavor = self.cluster.flavor + if not flavor: + return [] + roles = [] + for flavor_role in flavor.ordered_flavor_roles: + role = flavor_role.role + if role.name in role_names: + roles.append(role) + return roles + + @roles.setter + def roles(self, value): + self._roles = list(value) + self.config_validated = False + + @property + def patched_roles(self): + return self.roles + + @patched_roles.setter + def patched_roles(self, value): + roles = list(self._roles) + roles.extend(value) + self._roles = roles + self.config_validated = False + + @hybrid_property + def owner(self): + return self.cluster.owner + + @owner.expression + def owner(cls): + return cls.cluster.owner + + def state_dict(self): + cluster = self.cluster + host = self.host + host_state = host.state_dict() + if not cluster.distributed_system: + return host_state + clusterhost_state = self.state.to_dict() + if clusterhost_state['state'] in ['ERROR', 'SUCCESSFUL']: + return clusterhost_state + if ( + clusterhost_state['state'] in 'INSTALLING' and + clusterhost_state['percentage'] > 0 + ): + clusterhost_state['percentage'] = min( + 1.0, ( + 0.5 + clusterhost_state['percentage'] / 2 + ) + ) + return clusterhost_state + + host_state['percentage'] = host_state['percentage'] / 2 + if host_state['state'] == 'SUCCESSFUL': + host_state['state'] = 'INSTALLING' + return host_state + + def to_dict(self): + dict_info = self.host.to_dict() + dict_info.update(super(ClusterHost, self).to_dict()) + state_dict = self.state_dict() + dict_info.update({ + 'distributed_system_name': self.distributed_system_name, + 'distributed_system_installed': self.distributed_system_installed, + 'reinstall_distributed_system': self.reinstall_distributed_system, + 'owner': self.owner, + 'clustername': self.clustername, + 'name': self.name, + 'state': state_dict['state'] + }) + roles = self.roles + dict_info['roles'] = [ + role.to_dict() for role in roles + ] + return dict_info + + +class HostState(BASE, StateMixin): + """Host state table.""" + __tablename__ = 'host_state' + + id = Column( + Integer, + ForeignKey('host.id', onupdate='CASCADE', ondelete='CASCADE'), + primary_key=True + ) + + def update(self): + super(HostState, self).update() + host = self.host + if self.state == 'INSTALLING': + host.reinstall_os = False + for clusterhost in self.host.clusterhosts: + if clusterhost.state in [ + 'SUCCESSFUL', 'ERROR' + ]: + clusterhost.state = 'INSTALLING' + clusterhost.state.update() + elif self.state == 'UNINITIALIZED': + for clusterhost in self.host.clusterhosts: + if clusterhost.state in [ + 'INITIALIZED', 'INSTALLING', 'SUCCESSFUL', 'ERROR' + ]: + clusterhost.state = 'UNINITIALIZED' + clusterhost.state.update() + elif self.state == 'INITIALIZED': + for clusterhost in self.host.clusterhosts: + if clusterhost.state in [ + 'INSTALLING', 'SUCCESSFUL', 'ERROR' + ]: + clusterhost.state = 'INITIALIZED' + clusterhost.state.update() + + +class Host(BASE, TimestampMixin, HelperMixin): + """Host table.""" + __tablename__ = 'host' + + name = Column(String(80), unique=True, nullable=True) + os_id = Column(Integer, ForeignKey('os.id')) + config_step = Column(String(80), default='') + os_config = Column(JSONEncoded, default={}) + config_validated = Column(Boolean, default=False) + deployed_os_config = Column(JSONEncoded, default={}) + os_name = Column(String(80)) + creator_id = Column(Integer, ForeignKey('user.id')) + owner = Column(String(80)) + os_installer_id = Column( + Integer, + ForeignKey('os_installer.id') + ) + + id = Column( + Integer, + ForeignKey('machine.id', onupdate='CASCADE', ondelete='CASCADE'), + primary_key=True + ) + reinstall_os = Column(Boolean, default=True) + + host_networks = relationship( + HostNetwork, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('host') + ) + clusterhosts = relationship( + ClusterHost, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('host') + ) + state = relationship( + HostState, + uselist=False, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('host') + ) + log_history = relationship( + HostLogHistory, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('host') + ) + + @hybrid_property + def mac(self): + machine = self.machine + if machine: + return machine.mac + else: + return None + + @hybrid_property + def hostname(self): + return self.name + + @hostname.expression + def hostname(cls): + return cls.name + + @property + def patched_os_config(self): + return self.os_config + + @patched_os_config.setter + def patched_os_config(self, value): + os_config = copy.deepcopy(self.os_config) + self.os_config = util.merge_dict(os_config, value) + logging.debug('patch host os config in %s: %s', self.id, value) + self.config_validated = False + + @property + def put_os_config(self): + return self.os_config + + @put_os_config.setter + def put_os_config(self, value): + os_config = copy.deepcopy(self.os_config) + os_config.update(value) + self.os_config = os_config + logging.debug('put host os config in %s: %s', self.id, value) + self.config_validated = False + + def __init__(self, id, **kwargs): + self.id = id + self.state = HostState() + super(Host, self).__init__(**kwargs) + + def update(self): + creator = self.creator + if creator: + self.owner = creator.email + if self.reinstall_os: + if self.state in ['SUCCESSFUL', 'ERROR']: + if self.config_validated: + self.state.state = 'INITIALIZED' + else: + self.state.state = 'UNINITIALIZED' + self.state.update() + os = self.os + if os: + self.os_name = os.name + else: + self.os_name = None + super(Host, self).update() + + def validate(self): + super(Host, self).validate() + creator = self.creator + if not creator: + raise exception.InvalidParameter( + 'creator is not set in host %s' % self.id + ) + os = self.os + if not os: + raise exception.InvalidParameter( + 'os is not set in host %s' % self.id + ) + os_installer = self.os_installer + if not os_installer: + raise exception.Invalidparameter( + 'os_installer is not set in host %s' % self.id + ) + if not os.deployable: + raise exception.InvalidParameter( + 'os %s is not deployable in host %s' % (os.name, self.id) + ) + + @property + def os_installed(self): + return self.state.state == 'SUCCESSFUL' + + @property + def clusters(self): + return [clusterhost.cluster for clusterhost in self.clusterhosts] + + def state_dict(self): + return self.state.to_dict() + + def to_dict(self): + dict_info = self.machine.to_dict() + dict_info.update(super(Host, self).to_dict()) + state_dict = self.state_dict() + ip = None + for host_network in self.host_networks: + if host_network.is_mgmt: + ip = host_network.ip + dict_info.update({ + 'machine_id': self.machine.id, + 'os_installed': self.os_installed, + 'hostname': self.hostname, + 'ip': ip, + 'networks': [ + host_network.to_dict() + for host_network in self.host_networks + ], + 'os_installer': self.os_installer.to_dict(), + 'clusters': [cluster.to_dict() for cluster in self.clusters], + 'state': state_dict['state'] + }) + return dict_info + + +class ClusterState(BASE, StateMixin): + """Cluster state table.""" + __tablename__ = 'cluster_state' + + id = Column( + Integer, + ForeignKey('cluster.id', onupdate='CASCADE', ondelete='CASCADE'), + primary_key=True + ) + total_hosts = Column( + Integer, + default=0 + ) + installing_hosts = Column( + Integer, + default=0 + ) + completed_hosts = Column( + Integer, + default=0 + ) + failed_hosts = Column( + Integer, + default=0 + ) + + def to_dict(self): + dict_info = super(ClusterState, self).to_dict() + dict_info['status'] = { + 'total_hosts': self.total_hosts, + 'installing_hosts': self.installing_hosts, + 'completed_hosts': self.completed_hosts, + 'failed_hosts': self.failed_hosts + } + return dict_info + + def update(self): + cluster = self.cluster + clusterhosts = cluster.clusterhosts + self.total_hosts = len(clusterhosts) + if self.state in ['UNINITIALIZED', 'INITIALIZED', 'INSTALLING']: + self.installing_hosts = 0 + self.failed_hosts = 0 + self.completed_hosts = 0 + if self.state == 'INSTALLING': + cluster.reinstall_distributed_system = False + if not cluster.distributed_system: + for clusterhost in clusterhosts: + host = clusterhost.host + host_state = host.state.state + if host_state == 'INSTALLING': + self.installing_hosts += 1 + elif host_state == 'ERROR': + self.failed_hosts += 1 + elif host_state == 'SUCCESSFUL': + self.completed_hosts += 1 + else: + for clusterhost in clusterhosts: + clusterhost_state = clusterhost.state.state + if clusterhost_state == 'INSTALLING': + self.installing_hosts += 1 + elif clusterhost_state == 'ERROR': + self.failed_hosts += 1 + elif clusterhost_state == 'SUCCESSFUL': + self.completed_hosts += 1 + if self.total_hosts: + if self.completed_hosts == self.total_hosts: + self.percentage = 1.0 + else: + self.percentage = ( + float(self.completed_hosts) + / + float(self.total_hosts) + ) + self.message = ( + 'total %s, installing %s, completed: %s, error %s' + ) % ( + self.total_hosts, self.installing_hosts, + self.completed_hosts, self.failed_hosts + ) + if self.failed_hosts: + self.severity = 'ERROR' + super(ClusterState, self).update() + + +class Cluster(BASE, TimestampMixin, HelperMixin): + """Cluster table.""" + __tablename__ = 'cluster' + + id = Column(Integer, primary_key=True) + name = Column(String(80), unique=True, nullable=False) + reinstall_distributed_system = Column(Boolean, default=True) + config_step = Column(String(80), default='') + os_id = Column(Integer, ForeignKey('os.id')) + os_name = Column(String(80)) + flavor_id = Column( + Integer, + ForeignKey('adapter_flavor.id'), + nullable=True + ) + flavor_name = Column(String(80), nullable=True) + distributed_system_id = Column( + Integer, ForeignKey('distributed_system.id'), + nullable=True + ) + distributed_system_name = Column( + String(80), nullable=True + ) + os_config = Column(JSONEncoded, default={}) + package_config = Column(JSONEncoded, default={}) + deployed_os_config = Column(JSONEncoded, default={}) + deployed_package_config = Column(JSONEncoded, default={}) + config_validated = Column(Boolean, default=False) + adapter_id = Column(Integer, ForeignKey('adapter.id')) + adapter_name = Column(String(80)) + creator_id = Column(Integer, ForeignKey('user.id')) + owner = Column(String(80)) + clusterhosts = relationship( + ClusterHost, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('cluster') + ) + state = relationship( + ClusterState, + uselist=False, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('cluster') + ) + + def __init__(self, name, **kwargs): + self.name = name + self.state = ClusterState() + super(Cluster, self).__init__(**kwargs) + + def initialize(self): + super(Cluster, self).initialize() + + def update(self): + creator = self.creator + if creator: + self.owner = creator.email + if self.reinstall_distributed_system: + if self.state in ['SUCCESSFUL', 'ERROR']: + if self.config_validated: + self.state.state = 'INITIALIZED' + else: + self.state.state = 'UNINITIALIZED' + self.state.update() + os = self.os + if os: + self.os_name = os.name + else: + self.os_name = None + self.os_config = {} + adapter = self.adapter + if adapter: + self.adapter_name = adapter.name + distributed_system = adapter.adapter_distributed_system + self.distributed_system = distributed_system + if distributed_system: + self.distributed_system_name = distributed_system.name + else: + self.distributed_system_name = None + flavor = self.flavor + if flavor: + self.flavor_name = flavor.name + else: + self.flavor_name = None + super(Cluster, self).update() + + def validate(self): + super(Cluster, self).validate() + creator = self.creator + if not creator: + raise exception.InvalidParameter( + 'creator is not set in cluster %s' % self.id + ) + os = self.os + if not os: + raise exception.InvalidParameter( + 'os is not set in cluster %s' % self.id + ) + if not os.deployable: + raise exception.InvalidParameter( + 'os %s is not deployable' % os.name + ) + adapter = self.adapter + if not adapter: + raise exception.InvalidParameter( + 'adapter is not set in cluster %s' % self.id + ) + if not adapter.deployable: + raise exception.InvalidParameter( + 'adapter %s is not deployable' % adapter.name + ) + supported_os_ids = [ + adapter_os.os.id for adapter_os in adapter.supported_oses + ] + if os.id not in supported_os_ids: + raise exception.InvalidParameter( + 'os %s is not supported' % os.name + ) + distributed_system = self.distributed_system + if distributed_system: + if not distributed_system.deployable: + raise exception.InvalidParamerter( + 'distributed system %s is not deployable' % ( + distributed_system.name + ) + ) + flavor = self.flavor + if not flavor: + if distributed_system: + raise exception.InvalidParameter( + 'flavor is not set in cluster %s' % self.id + ) + else: + flavor_adapter_id = flavor.adapter_id + adapter_id = self.adapter_id + if flavor_adapter_id != adapter_id: + raise exception.InvalidParameter( + 'flavor adapter id %s does not match adapter id %s' % ( + flavor_adapter_id, adapter_id + ) + ) + + @property + def patched_os_config(self): + return self.os_config + + @patched_os_config.setter + def patched_os_config(self, value): + os_config = copy.deepcopy(self.os_config) + self.os_config = util.merge_dict(os_config, value) + logging.debug('patch cluster %s os config: %s', self.id, value) + self.config_validated = False + + @property + def put_os_config(self): + return self.os_config + + @put_os_config.setter + def put_os_config(self, value): + os_config = copy.deepcopy(self.os_config) + os_config.update(value) + self.os_config = os_config + logging.debug('put cluster %s os config: %s', self.id, value) + self.config_validated = False + + @property + def patched_package_config(self): + return self.package_config + + @patched_package_config.setter + def patched_package_config(self, value): + package_config = copy.deepcopy(self.package_config) + self.package_config = util.merge_dict(package_config, value) + logging.debug('patch cluster %s package config: %s', self.id, value) + self.config_validated = False + + @property + def put_package_config(self): + return self.package_config + + @put_package_config.setter + def put_package_config(self, value): + package_config = dict(self.package_config) + package_config.update(value) + self.package_config = package_config + logging.debug('put cluster %s package config: %s', self.id, value) + self.config_validated = False + + @property + def distributed_system_installed(self): + return self.state.state == 'SUCCESSFUL' + + def state_dict(self): + return self.state.to_dict() + + def to_dict(self): + dict_info = super(Cluster, self).to_dict() + dict_info['distributed_system_installed'] = ( + self.distributed_system_installed + ) + if self.flavor: + dict_info['flavor'] = self.flavor.to_dict() + return dict_info + + +# User, Permission relation table +class UserPermission(BASE, HelperMixin, TimestampMixin): + """User permission table.""" + __tablename__ = 'user_permission' + id = Column(Integer, primary_key=True) + user_id = Column( + Integer, + ForeignKey('user.id', onupdate='CASCADE', ondelete='CASCADE') + ) + permission_id = Column( + Integer, + ForeignKey('permission.id', onupdate='CASCADE', ondelete='CASCADE') + ) + __table_args__ = ( + UniqueConstraint('user_id', 'permission_id', name='constraint'), + ) + + def __init__(self, user_id, permission_id, **kwargs): + self.user_id = user_id + self.permission_id = permission_id + + @hybrid_property + def name(self): + return self.permission.name + + def to_dict(self): + dict_info = self.permission.to_dict() + dict_info.update(super(UserPermission, self).to_dict()) + return dict_info + + +class Permission(BASE, HelperMixin, TimestampMixin): + """Permission table.""" + __tablename__ = 'permission' + + id = Column(Integer, primary_key=True) + name = Column(String(80), unique=True, nullable=False) + alias = Column(String(100)) + description = Column(Text) + user_permissions = relationship( + UserPermission, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('permission') + ) + + def __init__(self, name, **kwargs): + self.name = name + super(Permission, self).__init__(**kwargs) + + +class UserToken(BASE, HelperMixin): + """user token table.""" + __tablename__ = 'user_token' + + id = Column(Integer, primary_key=True) + user_id = Column( + Integer, + ForeignKey('user.id', onupdate='CASCADE', ondelete='CASCADE') + ) + token = Column(String(256), unique=True, nullable=False) + expire_timestamp = Column( + DateTime, default=lambda: datetime.datetime.now() + ) + + def __init__(self, token, **kwargs): + self.token = token + super(UserToken, self).__init__(**kwargs) + + def validate(self): + super(UserToken, self).validate() + if not self.user: + raise exception.InvalidParameter( + 'user is not set in token: %s' % self.token + ) + + +class UserLog(BASE, HelperMixin): + """User log table.""" + __tablename__ = 'user_log' + + id = Column(Integer, primary_key=True) + user_id = Column( + Integer, + ForeignKey('user.id', onupdate='CASCADE', ondelete='CASCADE') + ) + action = Column(Text) + timestamp = Column(DateTime, default=lambda: datetime.datetime.now()) + + @hybrid_property + def user_email(self): + return self.user.email + + def validate(self): + super(UserLog, self).validate() + if not self.user: + raise exception.InvalidParameter( + 'user is not set in user log: %s' % self.id + ) + + +class User(BASE, HelperMixin, TimestampMixin): + """User table.""" + __tablename__ = 'user' + + id = Column(Integer, primary_key=True) + email = Column(String(80), unique=True, nullable=False) + crypted_password = Column('password', String(225)) + firstname = Column(String(80)) + lastname = Column(String(80)) + is_admin = Column(Boolean, default=False) + active = Column(Boolean, default=True) + user_permissions = relationship( + UserPermission, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('user') + ) + user_logs = relationship( + UserLog, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('user') + ) + user_tokens = relationship( + UserToken, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('user') + ) + clusters = relationship( + Cluster, + backref=backref('creator') + ) + hosts = relationship( + Host, + backref=backref('creator') + ) + + def __init__(self, email, **kwargs): + self.email = email + super(User, self).__init__(**kwargs) + + def validate(self): + super(User, self).validate() + if not self.crypted_password: + raise exception.InvalidParameter( + 'password is not set in user : %s' % self.email + ) + + @property + def password(self): + return '***********' + + @password.setter + def password(self, password): + self.crypted_password = util.encrypt(password) + + @hybrid_property + def permissions(self): + permissions = [] + for user_permission in self.user_permissions: + permissions.append(user_permission.permission) + + return permissions + + def to_dict(self): + dict_info = super(User, self).to_dict() + dict_info['permissions'] = [ + permission.to_dict() + for permission in self.permissions + ] + return dict_info + + def __str__(self): + return '%s[email:%s,is_admin:%s,active:%s]' % ( + self.__class__.__name__, + self.email, self.is_admin, self.active + ) + + +class SwitchMachine(BASE, HelperMixin, TimestampMixin): + """Switch Machine table.""" + __tablename__ = 'switch_machine' + switch_machine_id = Column( + 'id', Integer, primary_key=True + ) + switch_id = Column( + Integer, + ForeignKey('switch.id', onupdate='CASCADE', ondelete='CASCADE') + ) + machine_id = Column( + Integer, + ForeignKey('machine.id', onupdate='CASCADE', ondelete='CASCADE') + ) + port = Column(String(80), nullable=True) + vlans = Column(JSONEncoded, default=[]) + __table_args__ = ( + UniqueConstraint('switch_id', 'machine_id', name='constraint'), + ) + + def __init__(self, switch_id, machine_id, **kwargs): + self.switch_id = switch_id + self.machine_id = machine_id + super(SwitchMachine, self).__init__(**kwargs) + + def validate(self): + super(SwitchMachine, self).validate() + if not self.switch: + raise exception.InvalidParameter( + 'switch is not set in %s' % self.id + ) + if not self.machine: + raise exception.Invalidparameter( + 'machine is not set in %s' % self.id + ) + if not self.port: + raise exception.InvalidParameter( + 'port is not set in %s' % self.id + ) + + @hybrid_property + def mac(self): + return self.machine.mac + + @hybrid_property + def tag(self): + return self.machine.tag + + @property + def switch_ip(self): + return self.switch.ip + + @hybrid_property + def switch_ip_int(self): + return self.switch.ip_int + + @switch_ip_int.expression + def switch_ip_int(cls): + return Switch.ip_int + + @hybrid_property + def switch_vendor(self): + return self.switch.vendor + + @switch_vendor.expression + def switch_vendor(cls): + return Switch.vendor + + @property + def patched_vlans(self): + return self.vlans + + @patched_vlans.setter + def patched_vlans(self, value): + if not value: + return + vlans = list(self.vlans) + for item in value: + if item not in vlans: + vlans.append(item) + self.vlans = vlans + + @property + def filtered(self): + filters = self.switch.filters + port = self.port + unmatched_allowed = True + ports_pattern = re.compile(r'(\D*)(\d+)-(\d+)(\D*)') + port_pattern = re.compile(r'(\D*)(\d+)(\D*)') + port_match = port_pattern.match(port) + if port_match: + port_prefix = port_match.group(1) + port_number = int(port_match.group(2)) + port_suffix = port_match.group(3) + else: + port_prefix = '' + port_number = 0 + port_suffix = '' + for port_filter in filters: + filter_type = port_filter.get('filter_type', 'allow') + denied = filter_type != 'allow' + unmatched_allowed = denied + if 'ports' in port_filter: + if 'all' in port_filter['ports']: + return denied + if port in port_filter['ports']: + return denied + if port_match: + for port_or_ports in port_filter['ports']: + ports_match = ports_pattern.match(port_or_ports) + if ports_match: + filter_port_prefix = ports_match.group(1) + filter_port_start = int(ports_match.group(2)) + filter_port_end = int(ports_match.group(3)) + filter_port_suffix = ports_match.group(4) + if ( + filter_port_prefix == port_prefix and + filter_port_suffix == port_suffix and + filter_port_start <= port_number and + port_number <= filter_port_end + ): + return denied + else: + filter_port_prefix = port_filter.get('port_prefix', '') + filter_port_suffix = port_filter.get('port_suffix', '') + if ( + port_match and + port_prefix == filter_port_prefix and + port_suffix == filter_port_suffix + ): + if ( + 'port_start' not in port_filter or + port_number >= port_filter['port_start'] + ) and ( + 'port_end' not in port_filter or + port_number <= port_filter['port_end'] + ): + return denied + return not unmatched_allowed + + def to_dict(self): + dict_info = self.machine.to_dict() + dict_info.update(super(SwitchMachine, self).to_dict()) + dict_info['switch_ip'] = self.switch.ip + return dict_info + + +class Machine(BASE, HelperMixin, TimestampMixin): + """Machine table.""" + __tablename__ = 'machine' + id = Column(Integer, primary_key=True) + mac = Column(String(24), unique=True, nullable=False) + ipmi_credentials = Column(JSONEncoded, default={}) + tag = Column(JSONEncoded, default={}) + location = Column(JSONEncoded, default={}) + + switch_machines = relationship( + SwitchMachine, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('machine') + ) + host = relationship( + Host, + uselist=False, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('machine') + ) + + def __init__(self, mac, **kwargs): + self.mac = mac + super(Machine, self).__init__(**kwargs) + + def validate(self): + super(Machine, self).validate() + try: + netaddr.EUI(self.mac) + except Exception: + raise exception.InvalidParameter( + 'mac address %s format uncorrect' % self.mac + ) + + @property + def patched_ipmi_credentials(self): + return self.ipmi_credentials + + @patched_ipmi_credentials.setter + def patched_ipmi_credentials(self, value): + if not value: + return + ipmi_credentials = copy.deepcopy(self.ipmi_credentials) + self.ipmi_credentials = util.merge_dict(ipmi_credentials, value) + + @property + def patched_tag(self): + return self.tag + + @patched_tag.setter + def patched_tag(self, value): + if not value: + return + tag = copy.deepcopy(self.tag) + tag.update(value) + self.tag = value + + @property + def patched_location(self): + return self.location + + @patched_location.setter + def patched_location(self, value): + if not value: + return + location = copy.deepcopy(self.location) + location.update(value) + self.location = location + + def to_dict(self): + dict_info = {} + dict_info['switches'] = [ + { + 'switch_ip': switch_machine.switch_ip, + 'port': switch_machine.port, + 'vlans': switch_machine.vlans + } + for switch_machine in self.switch_machines + if not switch_machine.filtered + ] + if dict_info['switches']: + dict_info.update(dict_info['switches'][0]) + dict_info.update(super(Machine, self).to_dict()) + return dict_info + + +class Switch(BASE, HelperMixin, TimestampMixin): + """Switch table.""" + __tablename__ = 'switch' + id = Column(Integer, primary_key=True) + ip_int = Column('ip', BigInteger, unique=True, nullable=False) + credentials = Column(JSONEncoded, default={}) + vendor = Column(String(256), nullable=True) + state = Column(Enum('initialized', 'unreachable', 'notsupported', + 'repolling', 'error', 'under_monitoring', + name='switch_state'), + ColumnDefault('initialized')) + _filters = Column('filters', JSONEncoded, default=[]) + switch_machines = relationship( + SwitchMachine, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('switch') + ) + + @classmethod + def parse_filters(cls, filters): + if isinstance(filters, basestring): + filters = filters.replace('\r\n', '\n').replace('\n', ';') + filters = [ + switch_filter for switch_filter in filters.split(';') + if switch_filter + ] + if not isinstance(filters, list): + filters = [filters] + switch_filters = [] + for switch_filter in filters: + if not switch_filter: + continue + if isinstance(switch_filter, basestring): + filter_dict = {} + filter_items = [ + item for item in switch_filter.split() if item + ] + if filter_items[0] in ['allow', 'deny']: + filter_dict['filter_type'] = filter_items[0] + filter_items = filter_items[1:] + elif filter_items[0] not in [ + 'ports', 'port_prefix', 'port_suffix', + 'port_start', 'port_end' + ]: + raise exception.InvalidParameter( + 'unrecognized filter type %s' % filter_items[0] + ) + while filter_items: + if len(filter_items) >= 2: + filter_dict[filter_items[0]] = filter_items[1] + filter_items = filter_items[2:] + else: + filter_dict[filter_items[0]] = '' + filter_items = filter_items[1:] + switch_filter = filter_dict + if not isinstance(switch_filter, dict): + raise exception.InvalidParameter( + 'filter %s is not dict' % switch_filter + ) + if 'filter_type' in switch_filter: + if switch_filter['filter_type'] not in ['allow', 'deny']: + raise exception.InvalidParameter( + 'filter_type should be `allow` or `deny` in %s' % ( + switch_filter + ) + ) + if 'ports' in switch_filter: + if isinstance(switch_filter['ports'], basestring): + switch_filter['ports'] = [ + port_or_ports + for port_or_ports in switch_filter['ports'].split(',') + if port_or_ports + ] + if not isinstance(switch_filter['ports'], list): + raise exception.InvalidParameter( + '`ports` type is not list in filter %s' % switch_filter + ) + for port_or_ports in switch_filter['ports']: + if not isinstance(port_or_ports, basestring): + raise exception.InvalidParameter( + '%s type is not basestring in `ports` %s' % ( + port_or_ports, switch_filter['ports'] + ) + ) + for key in ['port_start', 'port_end']: + if key in switch_filter: + if isinstance(switch_filter[key], basestring): + if switch_filter[key].isdigit(): + switch_filter[key] = int(switch_filter[key]) + if not isinstance(switch_filter[key], int): + raise exception.InvalidParameter( + '`%s` type is not int in filer %s' % ( + key, switch_filter + ) + ) + switch_filters.append(switch_filter) + return switch_filters + + @classmethod + def format_filters(cls, filters): + filter_strs = [] + for switch_filter in filters: + filter_properties = [] + filter_properties.append( + switch_filter.get('filter_type', 'allow') + ) + if 'ports' in switch_filter: + filter_properties.append( + 'ports ' + ','.join(switch_filter['ports']) + ) + if 'port_prefix' in switch_filter: + filter_properties.append( + 'port_prefix ' + switch_filter['port_prefix'] + ) + if 'port_suffix' in switch_filter: + filter_properties.append( + 'port_suffix ' + switch_filter['port_suffix'] + ) + if 'port_start' in switch_filter: + filter_properties.append( + 'port_start ' + str(switch_filter['port_start']) + ) + if 'port_end' in switch_filter: + filter_properties.append( + 'port_end ' + str(switch_filter['port_end']) + ) + filter_strs.append(' '.join(filter_properties)) + return ';'.join(filter_strs) + + def __init__(self, ip_int, **kwargs): + self.ip_int = ip_int + super(Switch, self).__init__(**kwargs) + + @property + def ip(self): + return str(netaddr.IPAddress(self.ip_int)) + + @ip.setter + def ip(self, ipaddr): + self.ip_int = int(netaddr.IPAddress(ipaddr)) + + @property + def patched_credentials(self): + return self.credentials + + @patched_credentials.setter + def patched_credentials(self, value): + if not value: + return + credentials = copy.deepcopy(self.credentials) + self.credentials = util.merge_dict(credentials, value) + + @property + def filters(self): + return self._filters + + @filters.setter + def filters(self, value): + if not value: + return + self._filters = self.parse_filters(value) + + @property + def put_filters(self): + return self._filters + + @put_filters.setter + def put_filters(self, value): + if not value: + return + self._filters = self.parse_filters(value) + + @property + def patched_filters(self): + return self._filters + + @patched_filters.setter + def patched_filters(self, value): + if not value: + return + filters = list(self.filters) + self.filters = self.parse_filters(value) + filters + + def to_dict(self): + dict_info = super(Switch, self).to_dict() + dict_info['ip'] = self.ip + dict_info['filters'] = self.format_filters(self._filters) + return dict_info + + +class OSConfigMetadata(BASE, MetadataMixin): + """OS config metadata.""" + __tablename__ = "os_config_metadata" + + id = Column(Integer, primary_key=True) + os_id = Column( + Integer, + ForeignKey( + 'os.id', onupdate='CASCADE', ondelete='CASCADE' + ) + ) + parent_id = Column( + Integer, + ForeignKey( + 'os_config_metadata.id', onupdate='CASCADE', ondelete='CASCADE' + ) + ) + field_id = Column( + Integer, + ForeignKey( + 'os_config_field.id', onupdate='CASCADE', ondelete='CASCADE' + ) + ) + children = relationship( + 'OSConfigMetadata', + passive_deletes=True, passive_updates=True, + backref=backref('parent', remote_side=id) + ) + __table_args__ = ( + UniqueConstraint('path', 'os_id', name='constraint'), + ) + + def __init__(self, os_id, path, **kwargs): + self.os_id = os_id + self.path = path + super(OSConfigMetadata, self).__init__(**kwargs) + + def validate(self): + super(OSConfigMetadata, self).validate() + if not self.os: + raise exception.InvalidParameter( + 'os is not set in os metadata %s' % self.id + ) + + +class OSConfigField(BASE, FieldMixin): + """OS config fields.""" + __tablename__ = 'os_config_field' + + metadatas = relationship( + OSConfigMetadata, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('field')) + + def __init__(self, field, **kwargs): + self.field = field + super(OSConfigField, self).__init__(**kwargs) + + +class AdapterOS(BASE, HelperMixin): + """Adapter OS table.""" + __tablename__ = 'adapter_os' + + adapter_os_id = Column('id', Integer, primary_key=True) + os_id = Column( + Integer, + ForeignKey( + 'os.id', + onupdate='CASCADE', ondelete='CASCADE' + ) + ) + adapter_id = Column( + Integer, + ForeignKey( + 'adapter.id', + onupdate='CASCADE', ondelete='CASCADE' + ) + ) + + def __init__(self, os_id, adapter_id, **kwargs): + self.os_id = os_id + self.adapter_id = adapter_id + super(AdapterOS, self).__init__(**kwargs) + + def to_dict(self): + dict_info = self.os.to_dict() + dict_info.update(super(AdapterOS, self).to_dict()) + return dict_info + + +class OperatingSystem(BASE, HelperMixin): + """OS table.""" + __tablename__ = 'os' + + id = Column(Integer, primary_key=True) + parent_id = Column( + Integer, + ForeignKey('os.id', onupdate='CASCADE', ondelete='CASCADE'), + nullable=True + ) + name = Column(String(80), unique=True, nullable=False) + deployable = Column(Boolean, default=False) + + metadatas = relationship( + OSConfigMetadata, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('os') + ) + clusters = relationship( + Cluster, + backref=backref('os') + ) + hosts = relationship( + Host, + backref=backref('os') + ) + children = relationship( + 'OperatingSystem', + passive_deletes=True, passive_updates=True, + backref=backref('parent', remote_side=id) + ) + supported_adapters = relationship( + AdapterOS, + passive_deletes=True, passive_updates=True, + backref=backref('os') + ) + + def __init__(self, name): + self.name = name + super(OperatingSystem, self).__init__() + + @property + def root_metadatas(self): + return [ + metadata for metadata in self.metadatas + if metadata.parent_id is None + ] + + def metadata_dict(self): + dict_info = {} + if self.parent: + dict_info.update(self.parent.metadata_dict()) + for metadata in self.root_metadatas: + util.merge_dict(dict_info, metadata.to_dict()) + return dict_info + + @property + def os_supported_adapters(self): + supported_adapters = self.supported_adapters + if supported_adapters: + return supported_adapters + parent = self.parent + if parent: + return parent.os_supported_adapters + else: + return [] + + +class AdapterFlavorRole(BASE, HelperMixin): + """Adapter flavor roles.""" + + __tablename__ = 'adapter_flavor_role' + + flavor_id = Column( + Integer, + ForeignKey( + 'adapter_flavor.id', + onupdate='CASCADE', ondelete='CASCADE' + ), + primary_key=True + ) + role_id = Column( + Integer, + ForeignKey( + 'adapter_role.id', + onupdate='CASCADE', ondelete='CASCADE' + ), + primary_key=True + ) + + def __init__(self, flavor_id, role_id): + self.flavor_id = flavor_id + self.role_id = role_id + super(AdapterFlavorRole, self).__init__() + + def validate(self): + super(AdapterFlavorRole, self).validate() + flavor_adapter_id = self.flavor.adapter_id + role_adapter_id = self.role.adapter_id + if flavor_adapter_id != role_adapter_id: + raise exception.InvalidParameter( + 'flavor adapter %s and role adapter %s does not match' % ( + flavor_adapter_id, role_adapter_id + ) + ) + + def to_dict(self): + dict_info = super(AdapterFlavorRole, self).to_dict() + dict_info.update( + self.role.to_dict() + ) + return dict_info + + +class AdapterFlavor(BASE, HelperMixin): + """Adapter's flavors.""" + + __tablename__ = 'adapter_flavor' + + id = Column(Integer, primary_key=True) + adapter_id = Column( + Integer, + ForeignKey('adapter.id', onupdate='CASCADE', ondelete='CASCADE') + ) + name = Column(String(80), nullable=False) + display_name = Column(String(80)) + template = Column(String(80)) + _ordered_flavor_roles = Column( + 'ordered_flavor_roles', JSONEncoded, default=[] + ) + + flavor_roles = relationship( + AdapterFlavorRole, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('flavor') + ) + clusters = relationship( + Cluster, + backref=backref('flavor') + ) + + __table_args__ = ( + UniqueConstraint('name', 'adapter_id', name='constraint'), + ) + + @property + def ordered_flavor_roles(self): + flavor_roles = dict([ + (flavor_role.role.name, flavor_role) + for flavor_role in self.flavor_roles + ]) + ordered_flavor_roles = [] + for flavor_role in list(self._ordered_flavor_roles): + if flavor_role in flavor_roles: + ordered_flavor_roles.append(flavor_roles[flavor_role]) + return ordered_flavor_roles + + @ordered_flavor_roles.setter + def ordered_flavor_roles(self, value): + self._ordered_flavor_roles = list(value) + + @property + def patched_ordered_flavor_roles(self): + return self.ordered_flavor_roles + + @patched_ordered_flavor_roles.setter + def patched_ordered_flavor_roles(self, value): + ordered_flavor_roles = list(self._ordered_flavor_roles) + ordered_flavor_roles.extend(value) + self._ordered_flavor_roles = ordered_flavor_roles + + def __init__(self, name, adapter_id, **kwargs): + self.name = name + self.adapter_id = adapter_id + super(AdapterFlavor, self).__init__(**kwargs) + + def initialize(self): + if not self.display_name: + self.display_name = self.name + super(AdapterFlavor, self).initialize() + + def validate(self): + super(AdapterFlavor, self).validate() + if not self.template: + raise exception.InvalidParameter( + 'template is not set in adapter flavor %s' % self.id + ) + + def to_dict(self): + dict_info = super(AdapterFlavor, self).to_dict() + dict_info['roles'] = [ + flavor_role.to_dict() + for flavor_role in self.ordered_flavor_roles + ] + return dict_info + + +class AdapterRole(BASE, HelperMixin): + """Adapter's roles.""" + + __tablename__ = "adapter_role" + id = Column(Integer, primary_key=True) + name = Column(String(80), nullable=False) + display_name = Column(String(80)) + description = Column(Text) + optional = Column(Boolean, default=False) + adapter_id = Column( + Integer, + ForeignKey( + 'adapter.id', + onupdate='CASCADE', + ondelete='CASCADE' + ) + ) + + flavor_roles = relationship( + AdapterFlavorRole, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('role') + ) + + __table_args__ = ( + UniqueConstraint('name', 'adapter_id', name='constraint'), + ) + + def __init__(self, name, adapter_id, **kwargs): + self.name = name + self.adapter_id = adapter_id + super(AdapterRole, self).__init__(**kwargs) + + def initialize(self): + if not self.description: + self.description = self.name + if not self.display_name: + self.display_name = self.name + super(AdapterRole, self).initialize() + + +class PackageConfigMetadata(BASE, MetadataMixin): + """package config metadata.""" + __tablename__ = "package_config_metadata" + + id = Column(Integer, primary_key=True) + adapter_id = Column( + Integer, + ForeignKey( + 'adapter.id', + onupdate='CASCADE', ondelete='CASCADE' + ) + ) + parent_id = Column( + Integer, + ForeignKey( + 'package_config_metadata.id', + onupdate='CASCADE', ondelete='CASCADE' + ) + ) + field_id = Column( + Integer, + ForeignKey( + 'package_config_field.id', + onupdate='CASCADE', ondelete='CASCADE' + ) + ) + children = relationship( + 'PackageConfigMetadata', + passive_deletes=True, passive_updates=True, + backref=backref('parent', remote_side=id) + ) + + __table_args__ = ( + UniqueConstraint('path', 'adapter_id', name='constraint'), + ) + + def __init__( + self, adapter_id, path, **kwargs + ): + self.adapter_id = adapter_id + self.path = path + super(PackageConfigMetadata, self).__init__(**kwargs) + + def validate(self): + super(PackageConfigMetadata, self).validate() + if not self.adapter: + raise exception.InvalidParameter( + 'adapter is not set in package metadata %s' % self.id + ) + + +class PackageConfigField(BASE, FieldMixin): + """Adapter cofig metadata fields.""" + __tablename__ = "package_config_field" + + metadatas = relationship( + PackageConfigMetadata, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('field')) + + def __init__(self, field, **kwargs): + self.field = field + super(PackageConfigField, self).__init__(**kwargs) + + +class Adapter(BASE, HelperMixin): + """Adapter table.""" + __tablename__ = 'adapter' + + id = Column(Integer, primary_key=True) + name = Column(String(80), unique=True, nullable=False) + display_name = Column(String(80)) + parent_id = Column( + Integer, + ForeignKey( + 'adapter.id', + onupdate='CASCADE', ondelete='CASCADE' + ), + nullable=True + ) + distributed_system_id = Column( + Integer, + ForeignKey( + 'distributed_system.id', + onupdate='CASCADE', ondelete='CASCADE' + ), + nullable=True + ) + os_installer_id = Column( + Integer, + ForeignKey( + 'os_installer.id', + onupdate='CASCADE', ondelete='CASCADE' + ), + nullable=True + ) + package_installer_id = Column( + Integer, + ForeignKey( + 'package_installer.id', + onupdate='CASCADE', ondelete='CASCADE' + ), + nullable=True + ) + deployable = Column( + Boolean, default=False + ) + + supported_oses = relationship( + AdapterOS, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('adapter') + ) + + roles = relationship( + AdapterRole, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('adapter') + ) + flavors = relationship( + AdapterFlavor, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('adapter') + ) + children = relationship( + 'Adapter', + passive_deletes=True, passive_updates=True, + backref=backref('parent', remote_side=id) + ) + metadatas = relationship( + PackageConfigMetadata, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('adapter') + ) + clusters = relationship( + Cluster, + backref=backref('adapter') + ) + + __table_args__ = ( + UniqueConstraint( + 'distributed_system_id', + 'os_installer_id', 'package_installer_id', name='constraint' + ), + ) + + def __init__( + self, name, **kwargs + ): + self.name = name + super(Adapter, self).__init__(**kwargs) + + def initialize(self): + if not self.display_name: + self.display_name = self.name + super(Adapter, self).initialize() + + @property + def root_metadatas(self): + return [ + metadata for metadata in self.metadatas + if metadata.parent_id is None + ] + + def metadata_dict(self): + dict_info = {} + if self.parent: + dict_info.update(self.parent.metadata_dict()) + for metadata in self.root_metadatas: + util.merge_dict(dict_info, metadata.to_dict()) + return dict_info + + @property + def adapter_package_installer(self): + if self.package_installer: + return self.package_installer + elif self.parent: + return self.parent.adapter_package_installer + else: + return None + + @property + def adapter_os_installer(self): + if self.os_installer: + return self.os_installer + elif self.parent: + return self.parent.adapter_os_installer + else: + return None + + @property + def adapter_distributed_system(self): + distributed_system = self.distributed_system + if distributed_system: + return distributed_system + parent = self.parent + if parent: + return parent.adapter_distributed_system + else: + return None + + @property + def adapter_supported_oses(self): + supported_oses = self.supported_oses + if supported_oses: + return supported_oses + parent = self.parent + if parent: + return parent.adapter_supported_oses + else: + return [] + + @property + def adapter_roles(self): + roles = self.roles + if roles: + return roles + parent = self.parent + if parent: + return parent.adapter_roles + else: + return [] + + @property + def adapter_flavors(self): + flavors = self.flavors + if flavors: + return flavors + parent = self.parent + if parent: + return parent.adapter_flavors + else: + return [] + + def to_dict(self): + dict_info = super(Adapter, self).to_dict() + dict_info.update({ + 'supported_oses': [ + adapter_os.to_dict() + for adapter_os in self.adapter_supported_oses + ], + 'flavors': [ + flavor.to_dict() for flavor in self.adapter_flavors + ] + }) + distributed_system = self.adapter_distributed_system + if distributed_system: + dict_info['distributed_system_id'] = distributed_system.id + dict_info['distributed_system_name'] = distributed_system.name + os_installer = self.adapter_os_installer + if os_installer: + dict_info['os_installer'] = os_installer.to_dict() + package_installer = self.adapter_package_installer + if package_installer: + dict_info['package_installer'] = package_installer.to_dict() + return dict_info + + +class DistributedSystem(BASE, HelperMixin): + """distributed system table.""" + __tablename__ = 'distributed_system' + + id = Column(Integer, primary_key=True) + parent_id = Column( + Integer, + ForeignKey( + 'distributed_system.id', + onupdate='CASCADE', ondelete='CASCADE' + ), + nullable=True + ) + name = Column(String(80), unique=True, nullable=False) + deployable = Column(Boolean, default=False) + + adapters = relationship( + Adapter, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('distributed_system') + ) + clusters = relationship( + Cluster, + backref=backref('distributed_system') + ) + children = relationship( + 'DistributedSystem', + passive_deletes=True, passive_updates=True, + backref=backref('parent', remote_side=id) + ) + + def __init__(self, name): + self.name = name + super(DistributedSystem, self).__init__() + + +class OSInstaller(BASE, InstallerMixin): + """OS installer table.""" + __tablename__ = 'os_installer' + id = Column(Integer, primary_key=True) + adpaters = relationship( + Adapter, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('os_installer') + ) + hosts = relationship( + Host, + backref=backref('os_installer') + ) + + def __init__(self, alias, **kwargs): + self.alias = alias + super(OSInstaller, self).__init__(**kwargs) + + +class PackageInstaller(BASE, InstallerMixin): + """package installer table.""" + __tablename__ = 'package_installer' + id = Column(Integer, primary_key=True) + adapters = relationship( + Adapter, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('package_installer') + ) + + def __init__(self, alias, **kwargs): + self.alias = alias + super(PackageInstaller, self).__init__(**kwargs) + + +class Subnet(BASE, TimestampMixin, HelperMixin): + """network table.""" + __tablename__ = 'subnet' + + id = Column(Integer, primary_key=True) + name = Column(String(80), unique=True, nullable=True) + subnet = Column(String(80), unique=True, nullable=False) + + host_networks = relationship( + HostNetwork, + passive_deletes=True, passive_updates=True, + cascade='all, delete-orphan', + backref=backref('subnet') + ) + + def __init__(self, subnet, **kwargs): + self.subnet = subnet + super(Subnet, self).__init__(**kwargs) + + def to_dict(self): + dict_info = super(Subnet, self).to_dict() + if not self.name: + dict_info['name'] = self.subnet + return dict_info diff --git a/compass/db/model.py b/compass/db/v1/model.py similarity index 97% rename from compass/db/model.py rename to compass/db/v1/model.py index 888cdf8d..af7f7d05 100644 --- a/compass/db/model.py +++ b/compass/db/v1/model.py @@ -242,6 +242,7 @@ class HostState(BASE): ('INFO', 'WARNING', 'ERROR') :param update_timestamp: the lastest timestamp the entry got updated. :param host: refer to ClusterHost. + :param os_progress: float, the installing progress of OS from 0 to 1. """ __tablename__ = "host_state" @@ -259,6 +260,18 @@ class HostState(BASE): host = relationship('ClusterHost', backref=backref('state', uselist=False)) + os_progress = Column(Float, ColumnDefault(0.0)) + os_message = Column(Text) + os_severity = Column( + Enum('INFO', 'WARNING', 'ERROR'), + ColumnDefault('INFO') + ) + """ + this is added by Lei for separating os and package progress purposes + os_state = Column(Enum('UNINITIALIZED', 'INSTALLING', 'OS_READY', 'ERROR'), + ColumnDefault('UNINITIALIZED')) + """ + def __init__(self, **kwargs): super(HostState, self).__init__(**kwargs) @@ -275,10 +288,10 @@ class HostState(BASE): def __repr__(self): return ( '' + 'message=%s, severity=%s, os_progress=%s>' ) % ( self.hostname, self.state, self.progress, - self.message, self.severity + self.message, self.severity, self.os_progress ) diff --git a/compass/db/validator.py b/compass/db/validator.py new file mode 100644 index 00000000..c8c4d3a2 --- /dev/null +++ b/compass/db/validator.py @@ -0,0 +1,119 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Validator methods.""" +import netaddr +import re +import socket + +from compass.utils import setting_wrapper as setting +from compass.utils import util + + +def is_valid_ip(name, ip_addr, **kwargs): + """Valid the format of an IP address.""" + try: + netaddr.IPAddress(ip_addr) + except Exception: + return False + return True + + +def is_valid_network(name, ip_network, **kwargs): + """Valid the format of an Ip network.""" + try: + netaddr.IPNetwork(ip_network) + except Exception: + return False + return False + + +def is_valid_netmask(name, ip_addr, **kwargs): + """Valid the format of a netmask.""" + if not is_valid_ip(ip_addr): + return False + ip = netaddr.IPAddress(ip_addr) + if ip.is_netmask(): + return True + else: + return False + + +def is_valid_gateway(name, ip_addr, **kwargs): + """Valid the format of gateway.""" + if not is_valid_ip(ip_addr): + return False + ip = netaddr.IPAddress(ip_addr) + if ip.is_private() or ip.is_public(): + return True + else: + return False + + +def is_valid_dns(name, dns, **kwargs): + """Valid the format of DNS.""" + if is_valid_ip(dns): + return True + try: + socket.gethostbyname_ex(dns) + except Exception: + return False + return True + + +def is_valid_username(name, username, **kwargs): + """Valid the format of username.""" + return bool(username) + + +def is_valid_password(name, password, **kwargs): + """Valid the format of password.""" + return bool(password) + + +def is_valid_partition(name, partition, **kwargs): + """Valid the format of partition name.""" + if name != 'swap' and not name.startswith('/'): + return False + if 'size' not in partition and 'percentage' not in partition: + return False + return True + + +def is_valid_percentage(name, percentage, **kwargs): + """Valid the percentage.""" + return 0 <= percentage <= 100 + + +def is_valid_port(name, port, **kwargs): + """Valid the format of port.""" + return 0 < port < 65536 + + +def is_valid_size(name, size, **kwargs): + if re.match(r'(\d+)(K|M|G|T)?', size): + return True + return False + + +VALIDATOR_GLOBALS = globals() +VALIDATOR_LOCALS = locals() +VALIDATOR_CONFIGS = util.load_configs( + setting.VALIDATOR_DIR, + config_name_suffix='.py', + env_globals=VALIDATOR_GLOBALS, + env_locals=VALIDATOR_LOCALS +) +for validator_config in VALIDATOR_CONFIGS: + VALIDATOR_LOCALS.update(validator_config) diff --git a/compass/deployment/__init__.py b/compass/deployment/__init__.py new file mode 100644 index 00000000..cbd36e06 --- /dev/null +++ b/compass/deployment/__init__.py @@ -0,0 +1,15 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" diff --git a/compass/deployment/deploy_manager.py b/compass/deployment/deploy_manager.py new file mode 100644 index 00000000..63afd0d0 --- /dev/null +++ b/compass/deployment/deploy_manager.py @@ -0,0 +1,191 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + +"""Module to get configs from provider and isntallers and update + them to provider and installers. +""" +from compass.deployment.installers.installer import OSInstaller +from compass.deployment.installers.installer import PKInstaller +from compass.deployment.utils import constants as const +from compass.utils import util + + +import logging + + +class DeployManager(object): + """Deploy manager module.""" + def __init__(self, adapter_info, cluster_info, hosts_info): + """Init deploy manager.""" + self.os_installer = None + self.pk_installer = None + + # Get OS installer + os_installer_name = adapter_info[const.OS_INSTALLER][const.NAME] + os_hosts_info = self._get_hosts_for_os_installation(hosts_info) + self.os_installer = DeployManager._get_installer(OSInstaller, + os_installer_name, + adapter_info, + cluster_info, + os_hosts_info) + + # Get package installer + pk_info = adapter_info.setdefault(const.PK_INSTALLER, {}) + if pk_info: + pk_installer_name = pk_info[const.NAME] + self.pk_installer = DeployManager._get_installer(PKInstaller, + pk_installer_name, + adapter_info, + cluster_info, + hosts_info) + + @staticmethod + def _get_installer(installer_type, name, adapter_info, cluster_info, + hosts_info): + """Get installer instance.""" + callback = getattr(installer_type, 'get_installer') + installer = callback(name, adapter_info, cluster_info, hosts_info) + + return installer + + def deploy(self): + """Deploy the cluster.""" + deployed_config = self.deploy_os() + package_deployed_config = self.deploy_target_system() + + util.merge_dict(deployed_config, package_deployed_config) + + return deployed_config + + def clean_progress(self): + """Clean previous installation log and progress.""" + self.clean_os_installtion_progress() + self.clean_package_installation_progress() + + def clean_os_installtion_progress(self): + # OS installer cleans previous installing progress. + if self.os_installer: + self.os_installer.clean_progress() + + def clean_package_installation_progress(self): + # Package installer cleans previous installing progress. + if self.pk_installer: + self.pk_installer.clean_progress() + + def prepare_for_deploy(self): + self.clean_progress() + + def deploy_os(self): + """Deploy OS to hosts which need to in the cluster. Return OS deployed + config. + """ + if not self.os_installer: + return {} + + pk_installer_config = {} + if self.pk_installer: + # generate target system config which will be installed by OS + # installer right after OS installation is completed. + pk_installer_config = self.pk_installer.generate_installer_config() + logging.debug('[DeployManager]package installer config is %s', + pk_installer_config) + + # Send package installer config info to OS installer. + self.os_installer.set_package_installer_config(pk_installer_config) + + # start to deploy OS + return self.os_installer.deploy() + + def deploy_target_system(self): + """Deploy target system to all hosts in the cluster. Return package + deployed config. + """ + if not self.pk_installer: + return {} + + return self.pk_installer.deploy() + + def redeploy_os(self): + """Redeploy OS for this cluster without changing configurations.""" + if not self.os_installer: + logging.info("Redeploy_os: No OS installer found!") + return + + self.os_installer.redeploy() + logging.info("Start to redeploy OS for cluster.") + + def redeploy_target_system(self): + """Redeploy target system for the cluster without changing config.""" + if not self.pk_installer: + logging.info("Redeploy_target_system: No installer found!") + + self.os_installer.redeploy() + logging.info("Start to redeploy target system.") + + def redeploy(self): + """Redeploy the cluster without changing configurations.""" + self.redeploy_os() + self.redeploy_target_system() + + def remove_hosts(self, package_only=False): + """Remove hosts from both OS and/or package installlers server side.""" + if self.os_installer and not package_only: + self.os_installer.delete_hosts() + + if self.pk_installer: + self.pk_installer.delete_hosts() + + def _get_hosts_for_os_installation(self, hosts_info): + """Get info of hosts which need to install/reinstall OS.""" + hosts_list = {} + for host_id in hosts_info: + reinstall_os_flag = hosts_info[host_id][const.REINSTALL_OS_FLAG] + if not reinstall_os_flag: + continue + + hosts_list[host_id] = hosts_info[host_id] + + return hosts_list + + +class PowerManager(object): + """Manage host to power on, power off, and reset.""" + + def __init__(self, adapter_info, cluster_info, hosts_info): + os_installer_name = adapter_info[const.OS_INSTALLER][const.NAME] + self.os_installer = DeployManager._get_installer(OSInstaller, + os_installer_name, + adapter_info, + cluster_info, + hosts_info) + + def poweron(self): + if not self.os_installer: + logging.info("No OS installer found, cannot power on machine!") + return + self.os_installer.poweron() + + def poweroff(self): + if not self.os_installer: + logging.info("No OS installer found, cannot power on machine!") + return + self.os_installer.poweroff() + + def reset(self): + if not self.os_installer: + logging.info("No OS installer found, cannot power on machine!") + return + self.os_installer.reset() diff --git a/compass/deployment/installers/__init__.py b/compass/deployment/installers/__init__.py new file mode 100644 index 00000000..0296be54 --- /dev/null +++ b/compass/deployment/installers/__init__.py @@ -0,0 +1,21 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + + +"""modules to read/write cluster/host config from installers. + + .. moduleauthor:: Grace Yu +""" diff --git a/compass/deployment/installers/config_manager.py b/compass/deployment/installers/config_manager.py new file mode 100644 index 00000000..8d48bad6 --- /dev/null +++ b/compass/deployment/installers/config_manager.py @@ -0,0 +1,383 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + + +"""Module to manage and access cluster, hosts and adapter config. +""" +from copy import deepcopy +import logging + + +from compass.deployment.utils import constants as const + + +class BaseConfigManager(object): + + def __init__(self, adapter_info, cluster_info, hosts_info): + self.adapter_info = adapter_info + self.cluster_info = cluster_info + self.hosts_info = hosts_info + + def get_cluster_id(self): + return self.__get_cluster_item(const.ID) + + def get_clustername(self): + return self.__get_cluster_item(const.NAME) + + def get_os_version(self): + return self.__get_cluster_item(const.OS_VERSION) + + def get_cluster_baseinfo(self): + """Get cluster base information, including cluster_id, os_version, + and cluster_name. + """ + attr_names = [const.ID, const.NAME, const.OS_VERSION] + + base_info = {} + for name in attr_names: + base_info[name] = self.__get_cluster_item(name) + + return base_info + + def get_host_id_list(self): + if not self.hosts_info: + logging.info("hosts config is None or {}") + return [] + + return self.hosts_info.keys() + + def get_cluster_flavor_info(self): + return self.__get_cluster_item(const.FLAVOR, {}) + + def get_cluster_flavor_name(self): + flavor_info = self.get_cluster_flavor_info() + return flavor_info.setdefault(const.FLAVOR_NAME, None) + + def get_cluster_flavor_roles(self): + flavor_info = self.get_cluster_flavor_info() + return flavor_info.setdefault(const.ROLES, []) + + def get_cluster_flavor_template(self): + flavor_info = self.get_cluster_flavor_info() + return flavor_info.setdefault(const.TMPL, None) + + def get_cluster_os_config(self): + return deepcopy(self.__get_cluster_item(const.OS_CONFIG, {})) + + def get_cluster_package_config(self): + return deepcopy(self.__get_cluster_item(const.PK_CONFIG, {})) + + def get_cluster_network_mapping(self): + package_config = self.get_cluster_package_config() + if not package_config: + logging.info("cluster package_config is None or {}.") + return {} + + mapping = package_config.setdefault(const.NETWORK_MAPPING, {}) + logging.info("Network mapping in the config is '%s'!", mapping) + + return mapping + + def get_cluster_deployed_os_config(self): + return deepcopy(self.__get_cluster_item(const.DEPLOYED_OS_CONFIG, {})) + + def get_cluster_deployed_package_config(self): + return deepcopy(self.__get_cluster_item(const.DEPLOYED_PK_CONFIG, {})) + + def __get_cluster_item(self, item, default_value=None): + if not self.cluster_info: + logging.info("cluster config is None or {}") + return None + + return self.cluster_info.setdefault(item, default_value) + + def get_cluster_roles_mapping(self): + if not self.cluster_info: + logging.info("cluster config is None or {}") + return {} + + deploy_config = self.get_cluster_deployed_package_config() + mapping = deploy_config.setdefault(const.ROLES_MAPPING, {}) + + if not mapping: + mapping = self._get_cluster_roles_mapping_helper() + deploy_config[const.ROLES_MAPPING] = mapping + + return mapping + + def _get_host_info(self, host_id): + if not self.hosts_info: + logging.info("hosts config is None or {}") + return {} + + if host_id not in self.hosts_info: + logging.info("Cannot find host, ID is '%s'", host_id) + return {} + + return self.hosts_info[host_id] + + def __get_host_item(self, host_id, item, default_value=None): + host_info = self._get_host_info(host_id) + if not host_info: + return {} + + return deepcopy(host_info.setdefault(item, default_value)) + + def get_host_baseinfo(self, host_id): + """Get host base information.""" + host_info = self._get_host_info(host_id) + if not host_info: + return {} + + attr_names = [const.REINSTALL_OS_FLAG, const.MAC_ADDR, const.NAME, + const.HOSTNAME, const.NETWORKS] + base_info = {} + for attr in attr_names: + temp = host_info[attr] + if isinstance(temp, dict) or isinstance(temp, list): + base_info[attr] = deepcopy(temp) + else: + base_info[attr] = temp + + base_info[const.DNS] = self.get_host_dns(host_id) + + return base_info + + def get_host_fullname(self, host_id): + return self.__get_host_item(host_id, const.NAME, None) + + def get_host_dns(self, host_id): + host_info = self._get_host_info(host_id) + if not host_info: + return None + + if const.DNS not in host_info: + hostname = host_info[const.HOSTNAME] + domain = self.get_host_domain(host_id) + host_info[const.DNS] = '.'.join((hostname, domain)) + + return host_info[const.DNS] + + def get_host_mac_address(self, host_id): + return self.__get_host_item(host_id, const.MAC_ADDR, None) + + def get_hostname(self, host_id): + return self.__get_host_item(host_id, const.HOSTNAME, None) + + def get_host_networks(self, host_id): + return self.__get_host_item(host_id, const.NETWORKS, {}) + + def get_host_interfaces(self, host_id): + networks = self.get_host_networks(host_id) + return networks.keys() + + def get_host_interface_config(self, host_id, interface): + networks = self.get_host_networks(host_id) + return networks.setdefault(interface, {}) + + def get_host_interface_ip(self, host_id, interface): + interface_config = self._get_host_interface_config(host_id, interface) + return interface_config.setdefault(const.IP_ADDR, None) + + def get_host_interface_netmask(self, host_id, interface): + interface_config = self.get_host_interface_config(host_id, interface) + return interface_config.setdefault(const.NETMASK, None) + + def get_host_interface_subnet(self, host_id, interface): + nic_config = self.get_host_interface_config(host_id, interface) + return nic_config.setdefault(const.SUBNET, None) + + def is_interface_promiscuous(self, host_id, interface): + nic_config = self.get_host_interface_config(host_id, interface) + if not nic_config: + raise Exception("Cannot find interface '%s'", interface) + + return nic_config[const.PROMISCUOUS_FLAG] + + def is_interface_mgmt(self, host_id, interface): + nic_config = self.get_host_interface_config(host_id, interface) + if not nic_config: + raise Exception("Cannot find interface '%s'", interface) + + return nic_config[const.MGMT_NIC_FLAG] + + def get_host_os_config(self, host_id): + return self.__get_host_item(host_id, const.OS_CONFIG, {}) + + def get_host_domain(self, host_id): + os_config = self.get_host_os_config(host_id) + os_general_config = os_config.setdefault(const.OS_CONFIG_GENERAL, {}) + domain = os_general_config.setdefault(const.DOMAIN, None) + if domain is None: + global_config = self.get_cluster_os_config() + global_general = global_config.setdefault(const.OS_CONFIG_GENERAL, + {}) + domain = global_general.setdefault(const.DOMAIN, None) + + return domain + + def get_host_network_mapping(self, host_id): + package_config = self.get_host_package_config(host_id) + if const.NETWORK_MAPPING not in package_config: + network_mapping = self.get_cluster_network_mapping() + else: + network_mapping = package_config[const.NETWORK_MAPPING] + + return network_mapping + + def get_host_package_config(self, host_id): + return self.__get_host_item(host_id, const.PK_CONFIG, {}) + + def get_host_deployed_os_config(self, host_id): + host_info = self._get_host_info(host_id) + return host_info.setdefault(const.DEPLOYED_OS_CONFIG, {}) + + def get_host_deployed_package_config(self, host_id): + host_info = self._get_host_info(host_id) + return host_info.setdefault(const.DEPLOYED_PK_CONFIG, {}) + + def get_host_roles(self, host_id): + return self.__get_host_item(host_id, const.ROLES, []) + + def get_all_hosts_roles(self, hosts_id_list=None): + roles = [] + if hosts_id_list is None: + hosts_id_list = self.get_host_id_list() + + for host_id in hosts_id_list: + host_roles = self.get_host_roles(host_id) + roles.extend([role for role in host_roles if role not in roles]) + + return roles + + def get_host_roles_mapping(self, host_id): + roles_mapping = {} + deployed_pk_config = self.get_host_package_config(host_id) + + if const.ROLES_MAPPING not in deployed_pk_config: + roles_mapping = self._get_host_roles_mapping_helper(host_id) + deployed_pk_config[const.ROLES_MAPPING] = roles_mapping + else: + roles_mapping = deployed_pk_config[const.ROLES_MAPPING] + + return deepcopy(roles_mapping) + + def get_host_ipmi_info(self, host_id): + ipmi_info = self.__get_host_item(host_id, const.IPMI, {}) + + if not ipmi_info: + return (None, None, None) + + ipmi_ip = ipmi_info[const.IP_ADDR] + ipmi_user = ipmi_info[const.IPMI_CREDS][const.USERNAME] + ipmi_pass = ipmi_info[const.IPMI_CREDS][const.PASSWORD] + + return (ipmi_ip, ipmi_user, ipmi_pass) + + def __get_adapter_item(self, item, default_value=None): + if not self.adapter_info: + logging.info("Adapter Info is None!") + return None + + return deepcopy(self.adapter_info.setdefault(item, default_value)) + + def get_adapter_name(self): + return self.__get_adapter_item(const.NAME, None) + + def get_dist_system_name(self): + return self.__get_adapter_item(const.NAME, None) + + def get_os_installer_settings(self): + installer_info = self.__get_adapter_item(const.OS_INSTALLER, {}) + return installer_info.setdefault(const.INSTALLER_SETTINGS, {}) + + def get_pk_installer_settings(self): + installer_info = self.__get_adapter_item(const.PK_INSTALLER, {}) + return installer_info.setdefault(const.INSTALLER_SETTINGS, {}) + + def get_os_config_metadata(self): + metadata = self.__get_adapter_item(const.METADATA, {}) + return metadata.setdefault(const.OS_CONFIG, {}) + + def get_pk_config_meatadata(self): + metadata = self.__get_adapter_item(const.METADATA, {}) + return metadata.setdefault(const.PK_CONFIG, {}) + + def get_adapter_all_flavors(self): + return self.__get_adapter_item(const.FLAVORS, []) + + def get_adapter_flavor(self, flavor_name): + flavors = self.__get_adapter_item(const.FLAVORS, []) + for flavor in flavors: + if flavor[const.FLAVOR_NAME] == flavor_name: + return flavor + + return None + + def _get_cluster_roles_mapping_helper(self): + """The ouput format will be as below, for example: + { + "controller": { + "hostname": "xxx", + "management": { + "interface": "eth0", + "ip": "192.168.1.10", + "netmask": "255.255.255.0", + "subnet": "192.168.1.0/24", + "is_mgmt": True, + "is_promiscuous": False + }, + ... + }, + ... + } + """ + mapping = {} + hosts_id_list = self.get_host_id_list() + network_mapping = self.get_cluster_network_mapping() + if not network_mapping: + return {} + + for host_id in hosts_id_list: + roles_mapping = self.get_host_roles_mapping(host_id) + for role in roles_mapping: + if role not in mapping: + mapping[role] = roles_mapping[role] + + return mapping + + def _get_host_roles_mapping_helper(self, host_id): + """The format will be the same as cluster roles mapping.""" + network_mapping = self.get_host_network_mapping(host_id) + if not network_mapping: + return {} + + hostname = self.get_hostname(host_id) + roles = self.get_host_roles(host_id) + interfaces = self.get_host_interfaces(host_id) + + mapping = {} + temp = {const.HOSTNAME: hostname} + for key in network_mapping: + nic = network_mapping[key][const.NIC] + if nic in interfaces: + temp[key] = self.get_host_interface_config(host_id, nic) + temp[key][const.NIC] = nic + + for role in roles: + role = role.replace("-", "_") + mapping[role] = temp + return mapping diff --git a/compass/deployment/installers/installer.py b/compass/deployment/installers/installer.py new file mode 100644 index 00000000..7caf8b0e --- /dev/null +++ b/compass/deployment/installers/installer.py @@ -0,0 +1,245 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + + +"""Module to provider installer interface. +""" +from Cheetah.Template import Template +from copy import deepcopy +import imp +import logging +import os +import simplejson as json + +from compass.deployment.installers.config_manager import BaseConfigManager + + +CURRENT_DIR = os.path.dirname(os.path.realpath(__file__)) + + +class BaseInstaller(object): + """Interface for installer.""" + NAME = 'installer' + + def __repr__(self): + return '%r[%r]' % (self.__class__.__name__, self.NAME) + + def deploy(self, **kwargs): + """virtual method to start installing process.""" + raise NotImplementedError + + def clean_progress(self, **kwargs): + raise NotImplementedError + + def delete_hosts(self, **kwargs): + """Delete hosts from installer server.""" + raise NotImplementedError + + def redeploy(self, **kwargs): + raise NotImplementedError + + def get_tmpl_vars_from_metadata(self, metadata, config): + """Get variables dictionary for rendering templates from metadata. + :param dict metadata: The metadata dictionary. + :param dict config: The + """ + template_vars = {} + self._get_tmpl_vars_helper(metadata, config, template_vars) + + return template_vars + + def _get_key_mapping(self, metadata, key, is_regular_key): + """Get the keyword which the input key maps to. This keyword will be + added to dictionary used to render templates. + + If the key in metadata has a mapping to another keyword which is + used for templates, then return this keyword. If the key is started + with '$', which is a variable in metadata, return the key itself as + the mapping keyword. If the key has no mapping, return None. + + :param dict metadata: metadata/submetadata dictionary. + :param str key: The keyword defined in metadata. + :param bool is_regular_key: False when the key defined in metadata + is a variable(starting with '$'). + """ + mapping_to = key + if is_regular_key: + try: + mapping_to = metadata['_self']['mapping_to'] + except Exception: + mapping_to = None + + return mapping_to + + def _get_submeta_by_key(self, metadata, key): + """Get submetadata dictionary based on current metadata key. And + determines the input key is a regular string keyword or a variable + keyword defined in metadata, which starts with '$'. + + :param dict metadata: The metadata dictionary. + :param str key: The keyword defined in the metadata. + """ + if key in metadata: + return (True, metadata[key]) + + temp = deepcopy(metadata) + if '_self' in temp: + del temp['_self'] + meta_key = temp.keys()[0] + if meta_key.startswith("$"): + return (False, metadata[meta_key]) + + raise KeyError("'%s' is invalid in metadata '%s'!" % (key, metadata)) + + def _get_tmpl_vars_helper(self, metadata, config, output): + for key, config_value in sorted(config.iteritems()): + is_regular_key, sub_meta = self._get_submeta_by_key(metadata, key) + mapping_to = self._get_key_mapping(sub_meta, key, is_regular_key) + + if isinstance(config_value, dict): + if mapping_to: + new_output = output[mapping_to] = {} + else: + new_output = output + + self._get_tmpl_vars_helper(sub_meta, config_value, new_output) + + elif mapping_to: + output[mapping_to] = config_value + + def get_config_from_template(self, tmpl_dir, vars_dict): + logging.debug("template path is %s", tmpl_dir) + logging.debug("vars_dict is %s", vars_dict) + + if not os.path.exists(tmpl_dir) or not vars_dict: + logging.info("Template dir or vars_dict is None!") + return {} + + searchList = [] + copy_vars_dict = deepcopy(vars_dict) + for key, value in vars_dict.iteritems(): + if isinstance(value, dict): + temp = copy_vars_dict[key] + del copy_vars_dict[key] + searchList.append(temp) + searchList.append(copy_vars_dict) + + tmpl = Template(file=tmpl_dir, searchList=searchList) + config = json.loads(tmpl.respond(), encoding='utf-8') + config = json.loads(json.dumps(config), encoding='utf-8') + + logging.debug("get_config_from_template resulting %s", config) + return config + + @classmethod + def get_installer(cls, name, path, adapter_info, cluster_info, hosts_info): + try: + mod_file, path, descr = imp.find_module(name, [path]) + if mod_file: + mod = imp.load_module(name, mod_file, path, descr) + config_manager = BaseConfigManager(adapter_info, cluster_info, + hosts_info) + return getattr(mod, mod.NAME)(config_manager) + + except ImportError as exc: + logging.error('No such module found: %s', name) + logging.exception(exc) + + return None + + +class OSInstaller(BaseInstaller): + """Interface for os installer.""" + NAME = 'OSInstaller' + INSTALLER_BASE_DIR = os.path.join(CURRENT_DIR, 'os_installers') + + def get_oses(self): + """virtual method to get supported oses. + + :returns: list of str, each is the supported os version. + """ + return [] + + @classmethod + def get_installer(cls, name, adapter_info, cluster_info, hosts_info): + if name is None: + logging.info("Installer name is None! No OS installer loaded!") + return None + + path = os.path.join(cls.INSTALLER_BASE_DIR, name) + installer = super(OSInstaller, cls).get_installer(name, path, + adapter_info, + cluster_info, + hosts_info) + + if not isinstance(installer, OSInstaller): + logging.info("Installer '%s' is not an OS installer!" % name) + return None + + return installer + + def poweron(self, host_id): + pass + + def poweroff(self, host_id): + pass + + def reset(self, host_id): + pass + + +class PKInstaller(BaseInstaller): + """Interface for package installer.""" + NAME = 'PKInstaller' + INSTALLER_BASE_DIR = os.path.join(CURRENT_DIR, 'pk_installers') + + def get_target_systems(self): + """virtual method to get available target_systems for each os. + + :param oses: supported os versions. + :type oses: list of st + + :returns: dict of os_version to target systems as list of str. + """ + return {} + + def get_roles(self, target_system): + """virtual method to get all roles of given target system. + + :param target_system: target distributed system such as openstack. + :type target_system: str + + :returns: dict of role to role description as str. + """ + return {} + + @classmethod + def get_installer(cls, name, adapter_info, cluster_info, hosts_info): + if name is None: + logging.info("Install name is None. No package installer loaded!") + return None + + path = os.path.join(cls.INSTALLER_BASE_DIR, name) + installer = super(PKInstaller, cls).get_installer(name, path, + adapter_info, + cluster_info, + hosts_info) + + if not isinstance(installer, PKInstaller): + logging.info("Installer '%s' is not a package installer!" % name) + return None + + return installer diff --git a/compass/deployment/installers/os_installers/__init__.py b/compass/deployment/installers/os_installers/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/deployment/installers/os_installers/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/deployment/installers/os_installers/cobbler/__init__.py b/compass/deployment/installers/os_installers/cobbler/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/deployment/installers/os_installers/cobbler/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/deployment/installers/os_installers/cobbler/cobbler.py b/compass/deployment/installers/os_installers/cobbler/cobbler.py new file mode 100644 index 00000000..5ae589ae --- /dev/null +++ b/compass/deployment/installers/os_installers/cobbler/cobbler.py @@ -0,0 +1,410 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""os installer cobbler plugin. +""" +import logging +import os +import shutil +import xmlrpclib + +from compass.deployment.installers.installer import OSInstaller +from compass.deployment.utils import constants as const +from compass.utils import setting_wrapper as compass_setting +from compass.utils import util +from copy import deepcopy + + +NAME = 'CobblerInstaller' + + +class CobblerInstaller(OSInstaller): + """cobbler installer""" + CREDENTIALS = "credentials" + USERNAME = 'username' + PASSWORD = 'password' + + INSTALLER_URL = "cobbler_url" + TMPL_DIR = 'tmpl_dir' + SYS_TMPL = 'system.tmpl' + SYS_TMPL_NAME = 'system.tmpl' + PROFILE = 'profile' + + POWER_TYPE = 'power_type' + POWER_ADDR = 'power_address' + POWER_USER = 'power_user' + POWER_PASS = 'power_pass' + + def __init__(self, config_manager): + super(CobblerInstaller, self).__init__() + + self.config_manager = config_manager + installer_settings = self.config_manager.get_os_installer_settings() + try: + username = installer_settings[self.CREDENTIALS][self.USERNAME] + password = installer_settings[self.CREDENTIALS][self.PASSWORD] + cobbler_url = installer_settings[self.INSTALLER_URL] + self.tmpl_dir = CobblerInstaller.get_tmpl_path() + + except KeyError as ex: + raise KeyError(ex.message) + + # The connection is created when cobbler installer is initialized. + self.remote = self._get_cobbler_server(cobbler_url) + self.token = self._get_token(username, password) + self.pk_installer_config = None + + logging.debug('%s instance created', 'CobblerInstaller') + + @classmethod + def get_tmpl_path(cls): + return os.path.join(compass_setting.TMPL_DIR, 'cobbler') + + def __repr__(self): + return '%r[remote=%r,token=%r' % ( + self.__class__.__name__, self.remote, self.token) + + def _get_cobbler_server(self, cobbler_url): + if not cobbler_url: + logging.error("Cobbler URL is None!") + raise Exception("Cobbler URL cannot be None!") + + return xmlrpclib.Server(cobbler_url) + + def _get_token(self, username, password): + if self.remote is None: + raise Exception("Cobbler remote instance is None!") + return self.remote.login(username, password) + + def get_supported_oses(self): + """get supported os versions. + .. note:: + In cobbler, we treat profile name as the indicator + of os version. It is just a simple indicator + and not accurate. + """ + profiles = self.remote.get_profiles() + oses = [] + for profile in profiles: + oses.append(profile['name']) + return oses + + def deploy(self): + """Sync cobbler to catch up the latest update config and start to + install OS. Return both cluster and hosts deploy configs. The return + format: + { + "cluster": { + "id": 1, + "deployed_os_config": {}, + }, + "hosts": { + 1($clusterhost_id): { + "deployed_os_config": {...}, + }, + .... + } + } + """ + host_ids = self.config_manager.get_host_id_list() + if not host_ids: + # No hosts need to install OS + logging.info("Cobbler: No host needs to install OS.") + return {} + + os_version = self.config_manager.get_os_version() + profile = self._get_profile_from_server(os_version) + + global_vars_dict = self._get_cluster_tmpl_vars_dict() + + hosts_deploy_config = {} + + for host_id in host_ids: + hostname = self.config_manager.get_hostname(host_id) + vars_dict = self._get_host_tmpl_vars_dict(host_id, + global_vars_dict, + hostname=hostname, + profile=profile) + + self.update_host_config_to_cobbler(host_id, hostname, vars_dict) + + # set host deploy config + host_config = {} + host_config[const.DEPLOYED_OS_CONFIG] = vars_dict[const.OS_CONFIG] + hosts_deploy_config[host_id] = host_config + + # sync to cobbler and trigger installtion. + self._sync() + + cluster_config = global_vars_dict.setdefault(const.OS_CONFIG, {}) + + return { + const.CLUSTER: { + const.ID: self.config_manager.get_cluster_id(), + const.DEPLOYED_OS_CONFIG: cluster_config + }, + const.HOSTS: hosts_deploy_config + } + + def clean_progress(self): + """clean log files and config for hosts which to deploy.""" + clusterhost_list = self.config_manager.get_host_id_list() + log_dir_prefix = compass_setting.INSTALLATION_LOGDIR[NAME] + + for host_id in clusterhost_list: + hostname = self.config_manager.get_hostname(host_id) + self._clean_log(log_dir_prefix, hostname) + + def redeploy(self): + """redeploy hosts.""" + host_ids = self.config_manager.get_host_id_list() + if not host_ids: + logging.info("Cobbler: hostlist is None, no host is redeployed") + return + for host_id in host_ids: + hostname = self.config_manager.get_hostname(host_id) + sys_id = self._get_create_system(hostname) + if sys_id: + # enable netboot for this host + self._netboot_enabled(sys_id) + + self._sync() + + def set_package_installer_config(self, package_configs): + """Cobbler can install and configure package installer right after + OS installation compelets by setting package_config info provided + by package installer. + + :param dict package_configs: The dict of config generated by package + installer for each clusterhost. The IDs + of clusterhosts are the keys of + package_configs. + """ + self.pk_installer_config = package_configs + + def _sync(self): + """Sync the updated config to cobbler and trigger installation.""" + try: + self.remote.sync(self.token) + os.system('sudo service rsyslog restart') + except Exception as ex: + logging.debug("Failed to sync cobbler server! Error: %s" % ex) + raise ex + + def dump_system_info(self, host_id): + + hostname = self.config_manager.get_hostname(host_id) + if self.remote is None or not hostname: + logging.info("[dump_system_info]Remote or hostname is None.") + return {} + + return self.remote.get_system_as_rendered(hostname) + + def _generate_system_config(self, host_id, host_vars_dict): + """Generate updated system config from the template. + + :param host_vars_dict: dict of variables for the system template to + generate system config dict for each host. + """ + os_version = self.config_manager.get_os_version() + + tmpl_path = os.path.join( + os.path.join(self.tmpl_dir, os_version), self.SYS_TMPL_NAME + ) + if not os.path.exists(tmpl_path): + err_msg = "Template '%s' does not exists!" % self.SYS_TMPL_NAME + logging.error(err_msg) + raise Exception(err_msg) + + system_config = self.get_config_from_template(tmpl_path, + host_vars_dict) + + # update package config info to cobbler ksmeta + if self.pk_installer_config and host_id in self.pk_installer_config: + pk_config = self.pk_installer_config[host_id] + ksmeta = system_config.setdefault("ksmeta", {}) + util.merge_dict(ksmeta, pk_config) + system_config["ksmeta"] = ksmeta + + return system_config + + def _get_profile_from_server(self, os_version): + """Get profile from cobbler server.""" + result = self.remote.find_profile({'name': os_version}) + if not result: + raise Exception("Cannot find profile for '%s'", os_version) + + profile = result[0] + return profile + + def _get_create_system(self, hostname): + """get system reference id for the host.""" + sys_name = hostname + sys_id = None + system_info = self.remote.find_system({"name": hostname}) + + if not system_info: + # Create a new system + sys_id = self.remote.new_system(self.token) + self.remote.modify_system(sys_id, "name", hostname, self.token) + logging.debug('create new system %s for %s', sys_id, sys_name) + else: + sys_id = self.remote.get_system_handle(sys_name, self.token) + + return sys_id + + def _clean_system(self, hostname): + """clean system.""" + sys_name = hostname + try: + self.remote.remove_system(sys_name, self.token) + logging.debug('system %s is removed', sys_name) + except Exception: + logging.debug('no system %s found to remove', sys_name) + + def _update_system_config(self, sys_id, system_config): + """update modify system.""" + for key, value in system_config.iteritems(): + self.remote.modify_system(sys_id, str(key), value, self.token) + + self.remote.save_system(sys_id, self.token) + + def _netboot_enabled(self, sys_id): + """enable netboot.""" + self.remote.modify_system(sys_id, 'netboot_enabled', True, self.token) + self.remote.save_system(sys_id, self.token) + + def _clean_log(self, log_dir_prefix, system_name): + """clean log.""" + log_dir = os.path.join(log_dir_prefix, system_name) + shutil.rmtree(log_dir, True) + + def update_host_config_to_cobbler(self, host_id, hostname, host_vars_dict): + """update host config and upload to cobbler server.""" + sys_id = self._get_create_system(hostname) + + system_config = self._generate_system_config(host_id, host_vars_dict) + logging.debug('%s system config to update: %s', host_id, system_config) + + self._update_system_config(sys_id, system_config) + self._netboot_enabled(sys_id) + + def delete_hosts(self): + hosts_id_list = self.config_manager.get_host_id_list() + for host_id in hosts_id_list: + self.delete_single_host(host_id) + + def delete_single_host(self, host_id): + """Delete the host from cobbler server and clean up the installation + progress. + """ + hostname = self.config_manager.get_hostname(host_id) + try: + log_dir_prefix = compass_setting.INSTALLATION_LOGDIR[self.NAME] + self._clean_system(hostname) + self._clean_log(log_dir_prefix, hostname) + except Exception as ex: + logging.info("Deleting host got exception: %s", ex.message) + + def _get_host_tmpl_vars_dict(self, host_id, global_vars_dict, **kwargs): + """Generate template variables dictionary. + """ + vars_dict = {} + if global_vars_dict: + # Set cluster template vars_dict from cluster os_config. + vars_dict = deepcopy(global_vars_dict) + + # Set hostname, MAC address and hostname, networks, dns and so on. + host_baseinfo = self.config_manager.get_host_baseinfo(host_id) + vars_dict[const.BASEINFO] = host_baseinfo + + # Set profile + if self.PROFILE in kwargs: + profile = kwargs[self.PROFILE] + else: + os_version = self.config_manager.get_os_version() + profile = self._get_profile_from_server(os_version) + + vars_dict[const.BASEINFO][self.PROFILE] = profile + + metadata = self.config_manager.get_os_config_metadata() + os_config = self.config_manager.get_host_os_config(host_id) + + # Get template variables values from host os_config + host_vars_dict = self.get_tmpl_vars_from_metadata(metadata, os_config) + util.merge_dict( + vars_dict.setdefault(const.OS_CONFIG, {}), host_vars_dict + ) + return vars_dict + + def _get_cluster_tmpl_vars_dict(self): + metadata = self.config_manager.get_os_config_metadata() + os_config = self.config_manager.get_cluster_os_config() + + cluster_vas_dict = {} + cluster_vas_dict[const.OS_CONFIG] = \ + self.get_tmpl_vars_from_metadata(metadata, os_config) + + return cluster_vas_dict + + def _check_and_set_system_impi(self, host_id, sys_id): + if not sys_id: + logging.info("System is None!") + return False + + system = self.dump_system_info(host_id) + if system[self.POWER_TYPE] != 'ipmilan' or not system[self.POWER_USER]: + # Set sytem power type to ipmilan if needs and set IPMI info + ipmi_info = self.config_manager.get_host_ipmi_info(host_id) + if not ipmi_info: + logging.info('No IPMI information found! Failed power on.') + return False + + ipmi_ip, ipmi_user, ipmi_pass = ipmi_info + power_opts = {} + power_opts[self.POWER_TYPE] = 'ipmilan' + power_opts[self.POWER_ADDR] = ipmi_ip + power_opts[self.POWER_USER] = ipmi_user + power_opts[self.POWER_PASS] = ipmi_pass + + self._update_system_config(sys_id, power_opts) + + return True + + def poweron(self, host_id): + hostname = self.config_manager.get_hostname(host_id) + sys_id = self._get_create_system(hostname) + if not self._check_and_set_system_impi(sys_id): + return + + self.remote.power_system(sys_id, self.token, power='on') + logging.info("Host with ID=%d starts to power on!" % host_id) + + def poweroff(self, host_id): + hostname = self.config_manager.get_hostname(host_id) + sys_id = self._get_create_system(hostname) + if not self._check_and_set_system_impi(sys_id): + return + + self.remote.power_system(sys_id, self.token, power='off') + logging.info("Host with ID=%d starts to power off!" % host_id) + + def reset(self, host_id): + hostname = self.config_manager.get_hostname(host_id) + sys_id = self._get_create_system(hostname) + if not self._check_and_set_system_impi(sys_id): + return + + self.remote.power_system(sys_id, self.token, power='reboot') + logging.info("Host with ID=%d starts to reboot!" % host_id) diff --git a/compass/deployment/installers/pk_installers/__init__.py b/compass/deployment/installers/pk_installers/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/deployment/installers/pk_installers/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/deployment/installers/pk_installers/chef_installer/__init__.py b/compass/deployment/installers/pk_installers/chef_installer/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/compass/deployment/installers/pk_installers/chef_installer/chef_installer.py b/compass/deployment/installers/pk_installers/chef_installer/chef_installer.py new file mode 100644 index 00000000..534dc2bb --- /dev/null +++ b/compass/deployment/installers/pk_installers/chef_installer/chef_installer.py @@ -0,0 +1,606 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + +"""package installer: chef plugin.""" + +from copy import deepcopy +import logging +from netaddr import IPAddress +import os +import re +import shutil + +from compass.deployment.installers.installer import PKInstaller +from compass.deployment.utils import constants as const +from compass.utils import setting_wrapper as compass_setting +from compass.utils import util + + +NAME = 'ChefInstaller' + + +class ChefInstaller(PKInstaller): + """chef package installer.""" + ENV_TMPL_DIR = 'environments' + NODE_TMPL_DIR = 'nodes' + DATABAG_TMPL_DIR = 'databags' + + # keywords in package installer settings of adapter info + DATABAGS = "databags" + CHEFSERVER_URL = "chef_url" + CHEFSERVER_DNS = "chef_server_dns" + CHEFSERVER_IP = "chef_server_ip" + KEY_DIR = "key_dir" + CLIENT = "client_name" + + def __init__(self, config_manager): + super(ChefInstaller, self).__init__() + + self.config_manager = config_manager + adapter_name = self.config_manager.get_dist_system_name() + self.tmpl_dir = ChefInstaller.get_tmpl_path(adapter_name) + + installer_settings = self.config_manager.get_pk_installer_settings() + self.installer_url = self.get_chef_url(installer_settings) + key, client = self.get_chef_credentials(installer_settings) + + self.chef_api = self._get_chef_api(key, client) + self.all_chef_roles = self.get_all_roles() + logging.debug('%s instance created', self) + + @classmethod + def get_tmpl_path(cls, adapter_name): + tmpl_path = os.path.join( + os.path.join(compass_setting.TMPL_DIR, 'chef_installer'), + adapter_name + ) + return tmpl_path + + def __repr__(self): + return '%s[name=%s,installer_url=%s]' % ( + self.__class__.__name__, self.NAME, self.installer_url) + + def _get_chef_api(self, key=None, client=None): + """Initializes chef API client.""" + import chef + chef_api = None + try: + if key and client: + chef_api = chef.ChefAPI(self.installer_url, key, client) + else: + chef_api = chef.autoconfigure() + + except Exception as ex: + err_msg = "Failed to instantiate chef API, error: %s" % ex.message + raise Exception(err_msg) + + return chef_api + + def get_all_roles(self): + import chef + if not self.chef_api: + logging.info("chefAPI is None! Cannot retrieve roles from server.") + return None + + roles_objs = chef.Role.list(self.chef_api) + return [name for name, value in roles_objs.items()] + + def get_env_name(self, dist_sys_name, cluster_name): + """Generate environment name.""" + return "-".join((dist_sys_name, cluster_name)) + + def get_create_databag(self, databag_name): + """Get databag object from chef server. Create the databag if it + does not exist. + """ + import chef + databag = None + if databag_name not in chef.DataBag.list(api=self.chef_api): + databag = chef.DataBag.create(databag_name, api=self.chef_api) + else: + databag = chef.DataBag(databag_name, api=self.chef_api) + + return databag + + def get_create_node(self, node_name, env_name=None): + """Get chef node if existing, otherwise create one and set its + environment. + + :param str node_name: The name for this node. + :param str env_name: The environment name for this node. + """ + import chef + if not self.chef_api: + logging.info("Cannot find ChefAPI object!") + raise Exception("Cannot find ChefAPI object!") + + node = chef.Node(node_name, api=self.chef_api) + if node not in chef.Node.list(api=self.chef_api): + if env_name: + node.chef_environment = env_name + node.save() + + return node + + def delete_hosts(self): + hosts_id_list = self.config_manager.get_host_id_list() + for host_id in hosts_id_list: + self.delete_node(host_id) + + def delete_node(self, host_id): + fullname = self.config_manager.get_host_fullname(host_id) + node = self.get_create_node(fullname) + if node: + self._delete_node(node) + + def _delete_node(self, node): + """clean node attributes about target system.""" + import chef + if node is None: + raise Exception("Node is None, cannot delete a none node.") + node_name = node.name + client_name = node_name + + # Clean log for this node first + log_dir_prefix = compass_setting.INSTALLATION_LOGDIR[NAME] + self._clean_log(log_dir_prefix, node_name) + + # Delete node and its client on chef server + try: + node.delete() + client = chef.Client(client_name, api=self.chef_api) + client.delete() + logging.debug('delete node %s', node_name) + except Exception as error: + logging.debug('failed to delete node %s, error: %s', + node_name, + error) + + def add_roles(self, node, roles): + """Add roles to the node. + :param object node: The node object. + :param list roles: The list of roles for this node. + """ + if node is None: + raise Exception("Node is None!") + + if not roles: + logging.info("Role list is None. Run list will no change.") + return + + run_list = node.run_list + for role in roles: + if role not in self.all_chef_roles: + raise Exception("Cannot find role '%s' on chef server!") + + node_role = 'role[%s]' % role + if node_role not in run_list: + node.run_list.append(node_role) + + node.save() + logging.debug('Runlist for node %s is %s', node.name, node.run_list) + + def _generate_node_attributes(self, roles, host_vars_dict): + """Generate node attributes from templates according to its roles. The + templates are named by roles without '-'. Return the dictionary + of attributes defined in the templates. + + :param list roles: The roles for this node, used to load the + specific template. + :param dict host_vars_dict: The dict used in cheetah searchList to + render attributes from templates. + """ + if not roles: + return {} + + node_tmpl_dir = os.path.join(self.tmpl_dir, self.NODE_TMPL_DIR) + node_attr = {} + for role in roles: + role = role.replace('-', '_') + tmpl_name = '.'.join((role, 'tmpl')) + node_tmpl = os.path.join(node_tmpl_dir, tmpl_name) + util.merge_dict( + node_attr, + self.get_config_from_template(node_tmpl, host_vars_dict) + ) + + return node_attr + + def update_node_attributes_by_roles(self, node, roles, host_vars_dict): + """Update node attributes to chef server.""" + if node is None: + raise Exception("Node is None!") + + if not roles: + logging.info("The list of roles is None.") + return + + # Update node attributes. + node_config = self._generate_node_attributes(roles, host_vars_dict) + available_attrs = ['default', 'normal', 'override'] + for attr in node_config: + if attr in available_attrs: + node_attributes = getattr(node, attr).to_dict() + util.merge_dict(node_attributes, node_config[attr]) + setattr(node, attr, node_attributes) + + node.save() + + def _generate_env_attributes(self, global_vars_dict): + """Get environment attributes from env templates.""" + + tmpl_name = self.config_manager.get_cluster_flavor_template() + env_tmpl_path = os.path.join( + os.path.join(self.tmpl_dir, self.ENV_TMPL_DIR), tmpl_name + ) + if not os.path.exists(env_tmpl_path): + logging.error("Environment template '%s' doesn't exist", tmpl_name) + raise Exception("Template '%s' does not exist!" % tmpl_name) + + logging.debug("generating env from template %s", env_tmpl_path) + return self.get_config_from_template(env_tmpl_path, global_vars_dict) + + def get_create_environment(self, env_name): + import chef + env = chef.Environment(env_name, api=self.chef_api) + env.save() + return env + + def _update_environment(self, env, env_attrs): + # By default, pychef provides these attribute keys: + # 'description', 'cookbook_versions', 'default_attributes', + # 'override_attributes' + for name, value in env_attrs.iteritems(): + if name in env.attributes: + logging.debug("Updating env with attr %s", name) + setattr(env, name, value) + else: + logging.info("Ignoring attr %s for env", name) + + env.save() + + def upload_environment(self, env_name, global_vars_dict): + """Generate environment attributes based on the template file and + upload it to chef server. + + :param str env_name: The environment name. + :param dict vars_dict: The dictionary used in cheetah searchList to + render attributes from templates. + """ + env_config = self._generate_env_attributes(global_vars_dict) + env = self.get_create_environment(env_name) + self._update_environment(env, env_config) + + def _generate_databagitem_attributes(self, tmpl_dir, vars_dict): + return self.get_config_from_template(tmpl_dir, vars_dict) + + def update_databags(self, global_vars_dict): + """Update databag item attributes. + + :param dict vars_dict: The dictionary used to get attributes from + templates. + """ + databag_names = self.get_chef_databag_names() + if not databag_names: + return + + import chef + databags_dir = os.path.join(self.tmpl_dir, self.DATABAG_TMPL_DIR) + for databag_name in databag_names: + tmpl_filename = databag_name + ".tmpl" + databag_tmpl_filepath = os.path.join(databags_dir, tmpl_filename) + databagitem_attrs = self._generate_databagitem_attributes( + databag_tmpl_filepath, global_vars_dict + ) + if not databagitem_attrs: + logging.info("Databag template not found or vars_dict is None") + logging.info("databag template is %s", databag_tmpl_filepath) + continue + + databag = self.get_create_databag(databag_name) + for item, item_values in databagitem_attrs.iteritems(): + databagitem = chef.DataBagItem(databag, item, self.chef_api) + for key, value in item_values.iteritems(): + databagitem[key] = value + databagitem.save() + + def _get_host_tmpl_vars(self, host_id, global_vars_dict): + """Generate templates variables dictionary for cheetah searchList based + on host package config. + + :param int host_id: The host ID. + :param dict global_vars_dict: The vars_dict got from cluster level + package_config. + + The output format is the same as cluster_vars_dict. + """ + host_vars_dict = {} + if global_vars_dict: + host_vars_dict = deepcopy(global_vars_dict) + + # Update host basic info + host_baseinfo = self.config_manager.get_host_baseinfo(host_id) + util.merge_dict( + host_vars_dict.setdefault(const.BASEINFO, {}), host_baseinfo + ) + + pk_config = self.config_manager.get_host_package_config(host_id) + if pk_config: + # Get host template variables and merge to vars_dict + metadata = self.config_manager.get_pk_config_meatadata() + meta_dict = self.get_tmpl_vars_from_metadata(metadata, pk_config) + util.merge_dict( + host_vars_dict.setdefault(const.PK_CONFIG, {}), meta_dict + ) + + # Override role_mapping for host if host role_mapping exists + mapping = self.config_manager.get_host_roles_mapping(host_id) + if mapping: + host_vars_dict[const.ROLES_MAPPING] = mapping + + return host_vars_dict + + def _get_cluster_tmpl_vars(self): + """Generate template variables dict based on cluster level config. + The vars_dict will be: + { + "baseinfo": { + "id":1, + "name": "cluster01", + ... + }, + "package_config": { + .... //mapped from original package config based on metadata + }, + "role_mapping": { + .... + } + } + """ + cluster_vars_dict = {} + # set cluster basic information to vars_dict + cluster_baseinfo = self.config_manager.get_cluster_baseinfo() + cluster_vars_dict[const.BASEINFO] = cluster_baseinfo + + # get and set template variables from cluster package config. + pk_metadata = self.config_manager.get_pk_config_meatadata() + pk_config = self.config_manager.get_cluster_package_config() + + meta_dict = self.get_tmpl_vars_from_metadata(pk_metadata, pk_config) + cluster_vars_dict[const.PK_CONFIG] = meta_dict + + # get and set roles_mapping to vars_dict + mapping = self.config_manager.get_cluster_roles_mapping() + cluster_vars_dict[const.ROLES_MAPPING] = mapping + + return cluster_vars_dict + + def validate_roles(self, hosts_id_list): + hosts_roles = self.config_manager.get_all_hosts_roles(hosts_id_list) + for role in hosts_roles: + if role not in self.all_chef_roles: + logging.error("Role: %s cannot be found on chef server!", + role) + return False + return True + + def deploy(self): + """Start to deploy a distributed system. Return both cluster and hosts + deployed configs. The return format: + { + "cluster": { + "id": 1, + "deployed_package_config": { + "roles_mapping": {...}, + "service_credentials": {...}, + .... + } + }, + "hosts": { + 1($clusterhost_id): { + "deployed_package_config": {...} + }, + .... + } + } + """ + host_list = self.config_manager.get_host_id_list() + if not host_list: + return {} + + if self.validate_roles(host_list) is False: + raise Exception("Some role cannot be found in chef server!") + + adapter_name = self.config_manager.get_adapter_name() + cluster_name = self.config_manager.get_clustername() + env_name = self.get_env_name(adapter_name, cluster_name) + + global_vars_dict = self._get_cluster_tmpl_vars() + + # Upload environment to chef server + self.upload_environment(env_name, global_vars_dict) + + # Update Databag item + # TODO(grace): Fix the databag template rendering. + # self.update_databags(global_vars_dict) + + hosts_deployed_configs = {} + + for host_id in host_list: + node_name = self.config_manager.get_host_fullname(host_id) + roles = self.config_manager.get_host_roles(host_id) + + node = self.get_create_node(node_name, env_name) + self.add_roles(node, roles) + vars_dict = self._get_host_tmpl_vars(host_id, global_vars_dict) + + # set each host deployed config + host_config = {} + temp = vars_dict.setdefault(const.PK_CONFIG, {}) + temp[const.ROLES_MAPPING] = vars_dict.setdefault( + const.ROLES_MAPPING, {} + ) + host_config = { + host_id: {const.DEPLOYED_PK_CONFIG: temp} + } + hosts_deployed_configs.update(host_config) + + # set cluster deployed config + cluster_config = {} + cluster_config = global_vars_dict.setdefault(const.PK_CONFIG, {}) + cluster_config[const.ROLES_MAPPING] = global_vars_dict.setdefault( + const.ROLES_MAPPING, {} + ) + + return { + const.CLUSTER: { + const.ID: self.config_manager.get_cluster_id(), + const.DEPLOYED_PK_CONFIG: cluster_config + }, + const.HOSTS: hosts_deployed_configs + } + + def generate_installer_config(self): + """Render chef config file (client.rb) by OS installing right after + OS is installed successfully. + The output format: + { + '1'($host_id/clusterhost_id):{ + 'tool': 'chef', + 'chef_url': 'https://xxx', + 'chef_client_name': '$host_name', + 'chef_node_name': '$host_name', + 'chef_server_ip': 'xxx',(op) + 'chef_server_dns': 'xxx' (op) + }, + ..... + } + """ + host_ids = self.config_manager.get_host_id_list() + os_installer_configs = {} + regex = "http[s]?://([^:/]+)[:\d]?.*" + for host_id in host_ids: + fullname = self.config_manager.get_host_fullname(host_id) + temp = { + "tool": "chef", + "chef_url": self.installer_url + } + chef_host = re.search(regex, self.installer_url).groups()[0] + try: + IPAddress(chef_host) + temp['chef_server_ip'] = chef_host + temp['chef_server_dns'] = self.get_chef_server_dns() + except Exception: + chef_server_ip = self.get_chef_server_ip() + if chef_server_ip: + temp['chef_server_ip'] = chef_server_ip + temp['chef_server_dns'] = chef_host + + temp['chef_client_name'] = fullname + temp['chef_node_name'] = fullname + os_installer_configs[host_id] = temp + + return os_installer_configs + + def clean_progress(self): + """Clean all installing log about the node.""" + log_dir_prefix = compass_setting.INSTALLATION_LOGDIR[self.NAME] + hosts_list = self.config_manager.get_host_id_list() + for host_id in hosts_list: + fullname = self.config_manager.get_host_fullname() + self._clean_log(log_dir_prefix, fullname) + + def _clean_log(self, log_dir_prefix, node_name): + log_dir = os.path.join(log_dir_prefix, node_name) + shutil.rmtree(log_dir, False) + + def get_supported_dist_systems(self): + """get target systems from chef. All target_systems for compass will + be stored in the databag called "compass". + """ + databag = self.__get_compass_databag() + target_systems = {} + for system_name, item in databag: + target_systems[system_name] = item + + return target_systems + + def _clean_databag_item(self, databag, item_name): + """clean databag item.""" + import chef + if item_name not in chef.DataBagItem.list(api=self.chef_api): + logging.info("Databag item '%s' is not found!", item_name) + return + + bag_item = databag[item_name] + try: + bag_item.delete() + logging.debug('databag item %s is removed from databag', + item_name) + bag_item.save() + except Exception as error: + logging.debug('Failed to delete item %s from databag! Error: %s', + item_name, error) + + def redeploy(self): + """reinstall host.""" + pass + + def get_chef_server_ip(self, installer_settings=None): + settings = installer_settings + if settings is None: + settings = self.config_manager.get_pk_installer_settings() + + return settings.setdefault(self.CHEFSERVER_IP, None) + + def get_chef_url(self, installer_settings=None): + settings = installer_settings + if settings is None: + settings = self.config_manager.get_pk_installer_settings() + + if self.CHEFSERVER_URL not in settings: + err_msg = "%s is not in chef server settings" % self.CHEFSERVER_URL + raise Exception(err_msg) + + return settings[self.CHEFSERVER_URL] + + def get_chef_credentials(self, installer_settings=None): + settings = installer_settings + if settings is None: + settings = self.config_manager.get_pk_installer_settings() + + key_dir = settings.setdefault(self.KEY_DIR, None) + client = settings.setdefault(self.CLIENT, None) + + return (key_dir, client) + + def get_chef_databag_names(self, installer_settings=None): + settings = installer_settings + if settings is None: + settings = self.config_manager.get_pk_installer_settings() + + if self.DATABAGS not in settings: + logging.info("No databags is set!") + return None + + return settings[self.DATABAGS] + + def get_chef_server_dns(self, installer_settings=None): + settings = installer_settings + if settings is None: + settings = self.config_manager.get_pk_installer_settings() + + return settings.setdefault(self.CHEFSERVER_DNS, None) diff --git a/compass/deployment/utils/__init__.py b/compass/deployment/utils/__init__.py new file mode 100644 index 00000000..cbd36e06 --- /dev/null +++ b/compass/deployment/utils/__init__.py @@ -0,0 +1,15 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" diff --git a/compass/deployment/utils/constants.py b/compass/deployment/utils/constants.py new file mode 100644 index 00000000..d7cb190d --- /dev/null +++ b/compass/deployment/utils/constants.py @@ -0,0 +1,80 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + + +"""All keywords variables in deployment are defined in this module.""" + + +# General keywords +BASEINFO = 'baseinfo' +CLUSTER = 'cluster' +HOST = 'host' +HOSTS = 'hosts' +ID = 'id' +NAME = 'name' +PASSWORD = 'password' +USERNAME = 'username' + + +# Adapter info related keywords +DIST_SYS_NAME = 'distributed_system_name' +FLAVOR = 'flavor' +FLAVORS = 'flavors' +FLAVOR_NAME = 'flavor_name' +TMPL = 'template' +INSTALLER_SETTINGS = 'settings' +METADATA = 'metadata' +OS_INSTALLER = 'os_installer' +PK_INSTALLER = 'package_installer' +SUPPORT_OSES = 'supported_oses' + + +# Cluster info related keywords +ADAPTER_ID = 'adapter_id' +OS_VERSION = 'os_name' + + +# Host info related keywords +DNS = 'dns' +DOMAIN = 'domain' +HOST_ID = 'host_id' +HOSTNAME = 'hostname' +IP_ADDR = 'ip' +IPMI = 'ipmi' +IPMI_CREDS = 'ipmi_credentials' +MAC_ADDR = 'mac' +MGMT_NIC_FLAG = 'is_mgmt' +NETMASK = 'netmask' +NETWORKS = 'networks' +NIC = 'interface' +ORIGIN_CLUSTER_ID = 'origin_cluster_id' +PROMISCUOUS_FLAG = 'is_promiscuous' +REINSTALL_OS_FLAG = 'reinstall_os' +SUBNET = 'subnet' + + +# Cluster/host config related keywords +COMPLETED_PK_CONFIG = 'completed_package_config' +COMPLETED_OS_CONFIG = 'completed_os_config' +DEPLOYED_OS_CONFIG = 'deployed_os_config' +DEPLOYED_PK_CONFIG = 'deployed_package_config' +NETWORK_MAPPING = 'network_mapping' +OS_CONFIG = 'os_config' +OS_CONFIG_GENERAL = 'general' +PK_CONFIG = 'package_config' +ROLES = 'roles' +ROLES_MAPPING = 'roles_mapping' +TMPL_VARS_DICT = 'vars_dict' diff --git a/compass/hdsdiscovery/hdmanager.py b/compass/hdsdiscovery/hdmanager.py index 46b12969..81108141 100644 --- a/compass/hdsdiscovery/hdmanager.py +++ b/compass/hdsdiscovery/hdmanager.py @@ -19,11 +19,14 @@ import re from compass.hdsdiscovery.error import TimeoutError from compass.hdsdiscovery import utils +from compass.utils import setting_wrapper as setting +from compass.utils import util UNREACHABLE = 'unreachable' NOTSUPPORTED = 'notsupported' ERROR = 'error' +REPOLLING = 'repolling' class HDManager(object): @@ -98,8 +101,11 @@ class HDManager(object): :return a tuple (vendor, switch_state, error) """ - # Returen appliance plugin once we see 127.0.0.1 ass switch ip - if host == '127.0.0.1': + switch_lists = util.load_configs(setting.SWITCH_LIST_DIR) + switch_list = None + for item in switch_lists: + switch_list = item['SWITCH_LIST'] + if host in switch_list: return ("appliance", "Found", "") # TODO(grace): Why do we need to have valid IP? @@ -147,7 +153,7 @@ class HDManager(object): logging.debug("[get_vendor] No vendor found! <==================") return (None, NOTSUPPORTED, "Not supported switch vendor!") - return (vendor, "Found", "") + return (vendor, REPOLLING, "") def get_sys_info(self, host, credential): """get sys info.""" diff --git a/compass/hdsdiscovery/vendors/appliance/__init__.py b/compass/hdsdiscovery/vendors/appliance/__init__.py index 4ee55a4c..e69de29b 100644 --- a/compass/hdsdiscovery/vendors/appliance/__init__.py +++ b/compass/hdsdiscovery/vendors/appliance/__init__.py @@ -1,13 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. diff --git a/compass/hdsdiscovery/vendors/appliance/plugins/mac.py b/compass/hdsdiscovery/vendors/appliance/plugins/mac.py index 48069c3a..4244eb13 100644 --- a/compass/hdsdiscovery/vendors/appliance/plugins/mac.py +++ b/compass/hdsdiscovery/vendors/appliance/plugins/mac.py @@ -14,6 +14,11 @@ """Compass Appliance Mac module.""" from compass.hdsdiscovery import base +from compass.utils import setting_wrapper as setting +from compass.utils import util + +import logging + CLASS_NAME = "Mac" @@ -31,15 +36,8 @@ class Mac(base.BaseSnmpMacPlugin): Dummy scan function for compass appliance. Returns fixed mac addresses. """ - mac_list = [ - { - 'port': 1, - 'mac': '00:01:02:03:04:05', - 'vlan': 0, - }, - { - 'port': 2, - 'mac': '06:07:08:09:0a:0b', - 'vlan': 0, - }] + mac_lists = util.load_configs(setting.MAC_LIST_DIR) + mac_list = None + for item in mac_lists: + mac_list = item['MAC_LIST'] return mac_list diff --git a/bin/__init__.py b/compass/hdsdiscovery/vendors/arista/__init__.py similarity index 100% rename from bin/__init__.py rename to compass/hdsdiscovery/vendors/arista/__init__.py diff --git a/compass/config_management/utils/config_filter_callbacks.py b/compass/hdsdiscovery/vendors/arista/arista.py similarity index 58% rename from compass/config_management/utils/config_filter_callbacks.py rename to compass/hdsdiscovery/vendors/arista/arista.py index 0960bdb2..609b9bc6 100644 --- a/compass/config_management/utils/config_filter_callbacks.py +++ b/compass/hdsdiscovery/vendors/arista/arista.py @@ -12,20 +12,22 @@ # See the License for the specific language governing permissions and # limitations under the License. -"""callback lib for config filter callbacks.""" +"""Vendor: Arista.""" +from compass.hdsdiscovery import base -def allow_if_not_empty(_key, ref): - """allow if ref is not empty.""" - if not ref.config: - return False - else: - return True +#Vendor_loader will load vendor instance by CLASS_NAME +CLASS_NAME = 'Arista' -def deny_if_empty(_key, ref): - """deny if ref is empty.""" - if not ref.config: - return True - else: - return False +class Arista(base.BaseSnmpVendor): + """Arista Network switch object.""" + + def __init__(self): + base.BaseSnmpVendor.__init__(self, ['arista']) + self._name = 'arista' + + @property + def name(self): + """Get 'name' proptery.""" + return self._name diff --git a/compass/config_management/__init__.py b/compass/hdsdiscovery/vendors/arista/plugins/__init__.py similarity index 100% rename from compass/config_management/__init__.py rename to compass/hdsdiscovery/vendors/arista/plugins/__init__.py diff --git a/compass/hdsdiscovery/vendors/arista/plugins/mac.py b/compass/hdsdiscovery/vendors/arista/plugins/mac.py new file mode 100644 index 00000000..ed2f3319 --- /dev/null +++ b/compass/hdsdiscovery/vendors/arista/plugins/mac.py @@ -0,0 +1,24 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Pica8 Switch Mac module.""" +from compass.hdsdiscovery.base import BaseSnmpMacPlugin + + +CLASS_NAME = 'Mac' + + +class Mac(BaseSnmpMacPlugin): + """Process MAC address by Arista switch.""" + pass diff --git a/compass/log_analyzor/adapter_matcher.py b/compass/log_analyzor/adapter_matcher.py index 3d6bb522..4d648298 100644 --- a/compass/log_analyzor/adapter_matcher.py +++ b/compass/log_analyzor/adapter_matcher.py @@ -19,60 +19,57 @@ import logging import re -from compass.db import database -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.log_analyzor.line_matcher import Progress - class AdapterItemMatcher(object): """Progress matcher for the os installing or package installing.""" def __init__(self, file_matchers): self.file_matchers_ = file_matchers - self.min_progress_ = 0.0 - self.max_progress_ = 1.0 - - def update_progress_range(self, min_progress, max_progress): - """update min_progress and max_progress.""" - self.min_progress_ = min_progress - self.max_progress_ = max_progress - for file_matcher in self.file_matchers_: - file_matcher.update_absolute_progress_range( - self.min_progress_, self.max_progress_) def __str__(self): return '%s[file_matchers: %s, min_progress: %s, max_progress: %s]' % ( - self.__class__.__name__, self.file_matchers_, - self.min_progress_, self.max_progress_) + self.__class__.__name__, self.file_matchers_ + ) - def update_progress(self, fullname, progress): + def update_progress( + self, file_reader_factory, name, state, log_history_mapping + ): """Update progress. - :param fullname: the fullname of the installing host. - :type fullname: str + :param name: the fullname of the installing host. + :type name: str :param progress: Progress instance to update. """ for file_matcher in self.file_matchers_: - file_matcher.update_progress(fullname, progress) + filename = file_matcher.filename_ + if filename not in log_history_mapping: + log_history_mapping[filename] = { + 'filename': filename, + 'partial_line': '', + 'position': 0, + 'line_matcher_name': 'start', + 'percentage': 0.0, + 'message': '', + 'severity': 'INFO' + } + log_history = log_history_mapping[filename] + file_matcher.update_progress( + file_reader_factory, name, state, log_history + ) class OSMatcher(object): """Progress matcher for os installer.""" - def __init__(self, os_installer_name, os_pattern, - item_matcher, min_progress, max_progress): - if not (0.0 <= min_progress <= max_progress <= 1.0): - raise IndexError('%s restriction not mat:' - '0.0 <= min_progress(%s) ' - '<= max_progress(%s) <= 1.0' % ( - self.__class__.__name__, - min_progress, max_progress)) - + def __init__( + self, os_installer_name, + os_pattern, item_matcher, + file_reader_factory + ): self.name_ = os_installer_name self.os_regex_ = re.compile(os_pattern) self.matcher_ = item_matcher - self.matcher_.update_progress_range(min_progress, max_progress) + self.file_reader_factory_ = file_reader_factory def __repr__(self): return '%s[name:%s, os_pattern:%s, matcher:%s]' % ( @@ -81,281 +78,49 @@ class OSMatcher(object): def match(self, os_installer_name, os_name): """Check if the os matcher is acceptable.""" - return all([ - self.name_ == os_installer_name, - self.os_regex_.match(os_name)]) + if os_name is None: + return False + else: + return all([ + self.name_ == os_installer_name, + self.os_regex_.match(os_name) + ]) - def update_progress(self, fullname, progress): + def update_progress(self, name, state, log_history_mapping): """Update progress.""" - self.matcher_.update_progress(fullname, progress) + self.matcher_.update_progress( + self.file_reader_factory_, name, state, log_history_mapping) class PackageMatcher(object): """Progress matcher for package installer.""" - def __init__(self, package_installer_name, target_system, - item_matcher, min_progress, max_progress): - if not (0.0 <= min_progress <= max_progress <= 1.0): - raise IndexError('%s restriction not mat:' - '0.0 <= min_progress(%s) ' - '<= max_progress(%s) <= 1.0' % ( - self.__class__.__name__, - min_progress, max_progress)) - - self.name_ = package_installer_name - self.target_system_ = target_system + def __init__( + self, package_installer_name, distributed_system_pattern, + item_matcher, file_reader_factory + ): + self.name_ = re.compile(package_installer_name) + self.ds_regex_ = re.compile(distributed_system_pattern) self.matcher_ = item_matcher - self.matcher_.update_progress_range(min_progress, max_progress) + self.file_reader_factory_ = file_reader_factory def __repr__(self): return '%s[name:%s, target_system:%s, matcher:%s]' % ( self.__class__.__name__, self.name_, self.target_system_, self.matcher_) - def match(self, package_installer_name, target_system): + def match(self, package_installer_name, distributed_system_name): """Check if the package matcher is acceptable.""" - return all([ - self.name_ == package_installer_name, - self.target_system_ == target_system]) + if package_installer_name is None: + return False + else: + return all([ + self.name_.match(package_installer_name), + self.ds_regex_.match(distributed_system_name) + ]) - def update_progress(self, fullname, progress): + def update_progress(self, name, state, log_history_mapping): """Update progress.""" - self.matcher_.update_progress(fullname, progress) - - -class AdapterMatcher(object): - """Adapter matcher to update adapter installing progress.""" - - def __init__(self, os_matcher, package_matcher): - self.os_matcher_ = os_matcher - self.package_matcher_ = package_matcher - - def match(self, os_installer_name, os_name, - package_installer_name, target_system): - """Check if the adapter matcher is acceptable. - - :param os_installer_name: the os installer name. - :type os_installer_name: str - :param os_name: the os name. - :type os_name: str - :param package_installer_name: the package installer name. - :type package_installer_name: str - :param target_system: the target system to deploy - :type target_system: str - - :returns: bool - - .. note:: - Return True if the AdapterMatcher can process the log files - generated from the os installation and package installation. - """ - return all([ - self.os_matcher_.match(os_installer_name, os_name), - self.package_matcher_.match( - package_installer_name, target_system)]) - - def __str__(self): - return '%s[os_matcher:%s, package_matcher:%s]' % ( - self.__class__.__name__, - self.os_matcher_, self.package_matcher_) - - @classmethod - def _get_host_progress(cls, hostid): - """Get Host Progress from database. - - .. notes:: - The function should be called in database session. - """ - session = database.current_session() - host = session.query( - ClusterHost - ).filter_by(id=hostid).first() - if not host: - logging.error( - 'there is no host for %s in ClusterHost', hostid) - return None, None, None - - if not host.state: - logging.error('there is no related HostState for %s', - hostid) - return host.fullname, None, None - - return ( - host.fullname, - host.state.state, - Progress(host.state.progress, - host.state.message, - host.state.severity)) - - @classmethod - def _update_host_progress(cls, hostid, progress): - """Update host progress to database. - - .. note:: - The function should be called in database session. - """ - session = database.current_session() - host = session.query( - ClusterHost).filter_by(id=hostid).first() - if not host: - logging.error( - 'there is no host for %s in ClusterHost', hostid) - return - - if not host.state: - logging.error( - 'there is no related HostState for %s', hostid) - return - - if host.state.state != 'INSTALLING': - logging.error( - 'host %s is not in INSTALLING state', - hostid) - return - - if host.state.progress > progress.progress: - logging.error( - 'host %s progress is not increased ' - 'from %s to %s', - hostid, host.state, progress) - return - - if ( - host.state.progress == progress.progress and - host.state.message == progress.message - ): - logging.info( - 'ignore update host %s progress %s to %s', - hostid, progress, host.state) - return - - host.state.progress = progress.progress - host.state.message = progress.message - if progress.severity: - host.state.severity = progress.severity - - if host.state.progress >= 1.0: - host.state.state = 'READY' - - if host.state.severity == 'ERROR': - host.state.state = 'ERROR' - - if host.state.state != 'INSTALLING': - host.mutable = True - - logging.debug( - 'update host %s state %s', - hostid, host.state) - - @classmethod - def _update_cluster_progress(cls, clusterid): - """Update cluster installing progress to database. - - .. note:: - The function should be called in the database session. - """ - session = database.current_session() - cluster = session.query( - Cluster).filter_by(id=clusterid).first() - if not cluster: - logging.error( - 'there is no cluster for %s in Cluster', - clusterid) - return - - if not cluster.state: - logging.error( - 'there is no ClusterState for %s', - clusterid) - - if cluster.state.state != 'INSTALLING': - logging.error('cluster %s is not in INSTALLING state', - clusterid) - return - - cluster_progress = 0.0 - cluster_messages = {} - cluster_severities = set([]) - hostids = [] - for host in cluster.hosts: - if host.state: - hostids.append(host.id) - cluster_progress += host.state.progress - if host.state.message: - cluster_messages[host.hostname] = host.state.message - - if host.state.severity: - cluster_severities.add(host.state.severity) - - cluster.state.progress = cluster_progress / len(hostids) - cluster.state.message = '\n'.join( - [ - '%s: %s' % (hostname, message) - for hostname, message in cluster_messages.items() - ] + self.matcher_.update_progress( + self.file_reader_factory_, name, state, log_history_mapping ) - for severity in ['ERROR', 'WARNING', 'INFO']: - if severity in cluster_severities: - cluster.state.severity = severity - break - - if cluster.state.progress >= 1.0: - cluster.state.state = 'READY' - - if cluster.state.severity == 'ERROR': - cluster.state.state = 'ERROR' - - if cluster.state.state != 'INSTALLING': - cluster.mutable = True - - logging.debug( - 'update cluster %s state %s', - clusterid, cluster.state) - - def update_progress(self, clusterid, hostids): - """Update cluster progress and hosts progresses. - - :param clusterid: the id of the cluster to update. - :type clusterid: int. - :param hostids: the ids of the hosts to update. - :type hostids: list of int. - """ - host_progresses = {} - with database.session(): - for hostid in hostids: - fullname, host_state, host_progress = ( - self._get_host_progress(hostid)) - if not fullname or not host_progress: - logging.error( - 'nothing to update host %s => ' - 'state %s progress %s', - fullname, host_state, host_progress) - continue - - logging.debug('got host %s state %s progress %s', - fullname, host_state, host_progress) - host_progresses[hostid] = ( - fullname, host_state, host_progress) - - for hostid, host_value in host_progresses.items(): - fullname, host_state, host_progress = host_value - if host_state == 'INSTALLING' and host_progress.progress < 1.0: - self.os_matcher_.update_progress( - fullname, host_progress) - self.package_matcher_.update_progress( - fullname, host_progress) - else: - logging.error( - 'there is no need to update host %s ' - 'progress: state %s progress %s', - fullname, host_state, host_progress) - - with database.session(): - for hostid in hostids: - if hostid not in host_progresses: - continue - - _, _, host_progress = host_progresses[hostid] - self._update_host_progress(hostid, host_progress) - - self._update_cluster_progress(clusterid) diff --git a/compass/log_analyzor/file_matcher.py b/compass/log_analyzor/file_matcher.py index 28a3bdbc..f91b58f1 100644 --- a/compass/log_analyzor/file_matcher.py +++ b/compass/log_analyzor/file_matcher.py @@ -19,9 +19,6 @@ import logging import os.path -from compass.db import database -from compass.db.model import LogProgressingHistory -from compass.log_analyzor.line_matcher import Progress from compass.utils import setting_wrapper as setting @@ -65,7 +62,7 @@ class FilterFileExist(FileFilter): """filter log file.""" file_exist = os.path.isfile(pathname) if not file_exist: - logging.error("%s is not exist", pathname) + logging.debug("%s is not exist", pathname) return file_exist @@ -83,115 +80,43 @@ class FileReader(object): it has read last time. and update the position when it finish reading the log. """ - def __init__(self, pathname): + def __init__(self, pathname, log_history): self.pathname_ = pathname - self.position_ = 0 - self.partial_line_ = '' + self.log_history_ = log_history def __repr__(self): return ( - '%s[pathname:%s, position:%s, partial_line:%s]' % ( - self.__class__.__name__, self.pathname_, self.position_, - self.partial_line_ + '%s[pathname:%s, log_history:%s]' % ( + self.__class__.__name__, self.pathname_, + self.log_history_ ) ) - def get_history(self): - """Get log file read history from database. - - :returns: (line_matcher_name progress) - - .. note:: - The function should be called out of database session. - It reads the log_progressing_history table to get the - position in the log file it has read in last run, - the partial line of the log, the line matcher name - in the last run, the progress, the message and the - severity it has got in the last run. - """ - with database.session() as session: - history = session.query( - LogProgressingHistory - ).filter_by( - pathname=self.pathname_ - ).first() - if history: - self.position_ = history.position - self.partial_line_ = history.partial_line - line_matcher_name = history.line_matcher_name - progress = Progress(history.progress, - history.message, - history.severity) - else: - line_matcher_name = 'start' - progress = Progress(0.0, '', None) - - return line_matcher_name, progress - - def update_history(self, line_matcher_name, progress): - """Update log_progressing_history table. - - :param line_matcher_name: the line matcher name. - :param progress: Progress instance to record the installing progress. - - .. note:: - The function should be called out of database session. - It updates the log_processing_history table. - """ - with database.session() as session: - history = session.query(LogProgressingHistory).filter_by( - pathname=self.pathname_).first() - - if history: - if history.position >= self.position_: - logging.error( - '%s history position %s is ahead of current ' - 'position %s', - self.pathname_, - history.position, - self.position_) - return - - history.position = self.position_ - history.partial_line = self.partial_line_ - history.line_matcher_name = line_matcher_name - history.progress = progress.progress - history.message = progress.message - history.severity = progress.severity - else: - history = LogProgressingHistory( - pathname=self.pathname_, position=self.position_, - partial_line=self.partial_line_, - line_matcher_name=line_matcher_name, - progress=progress.progress, - message=progress.message, - severity=progress.severity) - session.merge(history) - logging.debug('update file %s to history %s', - self.pathname_, history) - def readline(self): """Generate each line of the log file.""" - old_position = self.position_ + old_position = self.log_history_['position'] + position = self.log_history_['position'] + partial_line = self.log_history_['partial_line'] try: with open(self.pathname_) as logfile: - logfile.seek(self.position_) + logfile.seek(position) while True: line = logfile.readline() - self.partial_line_ += line + partial_line += line position = logfile.tell() - if position > self.position_: - self.position_ = position + if position > self.log_history_['position']: + self.log_history_['position'] = position - if self.partial_line_.endswith('\n'): - yield_line = self.partial_line_ - self.partial_line_ = '' - yield yield_line + if partial_line.endswith('\n'): + self.log_history_['partial_line'] = '' + yield partial_line + partial_line = self.log_history_['partial_line'] else: break - - if self.partial_line_: - yield self.partial_line_ + if partial_line: + self.log_history_['partial_line'] = '' + yield partial_line + partial_line = self.log_history_['partial_line'] except Exception as error: logging.error('failed to processing file %s', self.pathname_) @@ -199,22 +124,22 @@ class FileReader(object): logging.debug( 'processing file %s log %s bytes to position %s', - self.pathname_, self.position_ - old_position, - self.position_) + self.pathname_, position - old_position, position + ) class FileReaderFactory(object): """factory class to create FileReader instance.""" - def __init__(self, logdir, filefilter): + def __init__(self, logdir): self.logdir_ = logdir - self.filefilter_ = filefilter + self.filefilter_ = get_file_filter() def __str__(self): return '%s[logdir: %s filefilter: %s]' % ( self.__class__.__name__, self.logdir_, self.filefilter_) - def get_file_reader(self, fullname, filename): + def get_file_reader(self, hostname, filename, log_history): """Get FileReader instance. :param fullname: fullname of installing host. @@ -222,17 +147,13 @@ class FileReaderFactory(object): :returns: :class:`FileReader` instance if it is not filtered. """ - pathname = os.path.join(self.logdir_, fullname, filename) + pathname = os.path.join(self.logdir_, hostname, filename) logging.debug('get FileReader from %s', pathname) if not self.filefilter_.filter(pathname): - logging.error('%s is filtered', pathname) + logging.debug('%s is filtered', pathname) return None - return FileReader(pathname) - - -FILE_READER_FACTORY = FileReaderFactory( - setting.INSTALLATION_LOGDIR, get_file_filter()) + return FileReader(pathname, log_history) class FileMatcher(object): @@ -245,71 +166,52 @@ class FileMatcher(object): self.__class__.__name__, min_progress, max_progress)) - + if 'start' not in line_matchers: + raise KeyError( + 'key `start` does not in line matchers %s' % line_matchers + ) self.line_matchers_ = line_matchers self.min_progress_ = min_progress self.max_progress_ = max_progress - self.absolute_min_progress_ = 0.0 - self.absolute_max_progress_ = 1.0 - self.absolute_progress_diff_ = 1.0 + self.progress_diff_ = max_progress - min_progress self.filename_ = filename - def update_absolute_progress_range(self, min_progress, max_progress): - """update the min progress and max progress the log file indicates.""" - progress_diff = max_progress - min_progress - self.absolute_min_progress_ = ( - min_progress + self.min_progress_ * progress_diff) - self.absolute_max_progress_ = ( - min_progress + self.max_progress_ * progress_diff) - self.absolute_progress_diff_ = ( - self.absolute_max_progress_ - self.absolute_min_progress_) - def __str__(self): return ( - '%s[ filename: %s, progress range: [%s:%s], ' + '%s[ filename: %s, progress:[%s:%s], ' 'line_matchers: %s]' % ( self.__class__.__name__, self.filename_, - self.absolute_min_progress_, - self.absolute_max_progress_, self.line_matchers_) + self.min_progress_, + self.max_progress_, self.line_matchers_) ) - def update_total_progress(self, file_progress, total_progress): - """Get the total progress from file progress.""" - if not file_progress.message: - logging.info( - 'ignore update file %s progress %s to total progress', - self.filename_, file_progress) - return - - total_progress_data = min( - ( - self.absolute_min_progress_ + ( - file_progress.progress * self.absolute_progress_diff_ - ) - ), - self.absolute_max_progress_ + def update_progress_from_log_history(self, state, log_history): + file_percentage = log_history['percentage'] + percentage = max( + self.min_progress_, + min( + self.max_progress_, + self.min_progress_ + file_percentage * self.progress_diff_ + ) ) - - # total progress should only be updated when the new calculated - # progress is greater than the recored total progress or the - # progress to update is the same but the message is different. if ( - total_progress.progress < total_progress_data or ( - total_progress.progress == total_progress_data and - total_progress.message != file_progress.message + percentage > state['percentage'] or + ( + percentage == state['percentage'] and + log_history['message'] != state['message'] ) ): - total_progress.progress = total_progress_data - total_progress.message = file_progress.message - total_progress.severity = file_progress.severity - logging.debug('update file %s total progress %s', - self.filename_, total_progress) + state['percentage'] = percentage + state['message'] = log_history['message'] + state['severity'] = log_history['severity'] else: - logging.info( - 'ignore update file %s progress %s to total progress %s', - self.filename_, file_progress, total_progress) + logging.debug( + 'ingore update state %s from log history %s ' + 'since the updated progress %s lag behind', + state, log_history, percentage + ) - def update_progress(self, fullname, total_progress): + def update_progress(self, file_reader_factory, name, state, log_history): """update progress from file. :param fullname: the fullname of the installing host. @@ -325,23 +227,27 @@ class FileMatcher(object): run, it will be reprocessed at the beginning because there is no line end indicator for the last line of the file. """ - file_reader = FILE_READER_FACTORY.get_file_reader( - fullname, self.filename_) + file_reader = file_reader_factory.get_file_reader( + name, self.filename_, log_history) if not file_reader: return - line_matcher_name, file_progress = file_reader.get_history() + line_matcher_name = log_history['line_matcher_name'] for line in file_reader.readline(): if line_matcher_name not in self.line_matchers_: logging.debug('early exit at\n%s\nbecause %s is not in %s', line, line_matcher_name, self.line_matchers_) break - index = line_matcher_name - while index in self.line_matchers_: - line_matcher = self.line_matchers_[index] - index, line_matcher_name = line_matcher.update_progress( - line, file_progress) - - file_reader.update_history(line_matcher_name, file_progress) - self.update_total_progress(file_progress, total_progress) + same_line_matcher_name = line_matcher_name + while same_line_matcher_name in self.line_matchers_: + line_matcher = self.line_matchers_[same_line_matcher_name] + same_line_matcher_name, line_matcher_name = ( + line_matcher.update_progress(line, log_history) + ) + log_history['line_matcher_name'] = line_matcher_name + logging.debug( + 'updated log history %s after processing %s', + log_history, self + ) + self.update_progress_from_log_history(state, log_history) diff --git a/compass/log_analyzor/line_matcher.py b/compass/log_analyzor/line_matcher.py index 81305792..87a6f6f5 100644 --- a/compass/log_analyzor/line_matcher.py +++ b/compass/log_analyzor/line_matcher.py @@ -21,28 +21,6 @@ from abc import ABCMeta from compass.utils import util -class Progress(object): - """Progress object to store installing progress and message.""" - - def __init__(self, progress, message, severity): - """Constructor - - :param progress: installing progress between 0 to 1. - :param message: installing message. - :param severity: installing message severity. - """ - self.progress = progress - self.message = message - self.severity = severity - - def __repr__(self): - return '%s[progress:%s, message:%s, severity:%s]' % ( - self.__class__.__name__, - self.progress, - self.message, - self.severity) - - class ProgressCalculator(object): """base class to generate progress.""" @@ -51,7 +29,7 @@ class ProgressCalculator(object): @classmethod def update_progress( cls, progress_data, message, - severity, progress + severity, log_history ): """Update progress with the given progress_data, message and severity. @@ -65,24 +43,22 @@ class ProgressCalculator(object): # is greater than the stored progress or the progress # to update is the same but the message is different. if ( - progress_data > progress.progress or ( - progress_data == progress.progress and - message != progress.message + progress_data > log_history['percentage'] or ( + progress_data == log_history['percentage'] and + message != log_history['message'] ) ): - progress.progress = progress_data + log_history['percentage'] = progress_data if message: - progress.message = message - + log_history['message'] = message if severity: - progress.severity = severity - - logging.debug('update progress to %s', progress) + log_history['severity'] = severity + logging.debug('update progress to %s', log_history) else: - logging.info('ignore update progress %s to %s', - progress_data, progress) + logging.debug('ignore update progress %s to %s', + progress_data, log_history) - def update(self, message, severity, progress): + def update(self, message, severity, log_history): """vritual method to update progress by message and severity. :param message: installing message. @@ -125,17 +101,17 @@ class IncrementalProgress(ProgressCalculator): self.incremental_progress_ ) - def update(self, message, severity, progress): + def update(self, message, severity, log_history): """update progress from message and severity.""" progress_data = max( self.min_progress_, min( self.max_progress_, - progress.progress + self.incremental_progress_ + log_history['percentage'] + self.incremental_progress_ ) ) self.update_progress(progress_data, - message, severity, progress) + message, severity, log_history) class RelativeProgress(ProgressCalculator): @@ -153,19 +129,19 @@ class RelativeProgress(ProgressCalculator): def __str__(self): return '%s[%s]' % (self.__class__.__name__, self.progress_) - def update(self, message, severity, progress): + def update(self, message, severity, log_history): """update progress from message and severity.""" self.update_progress( - self.progress_, message, severity, progress) + self.progress_, message, severity, log_history) class SameProgress(ProgressCalculator): """class to update message and severity for progress.""" - def update(self, message, severity, progress): + def update(self, message, severity, log_history): """update progress from the message and severity.""" - self.update_progress(progress.progress, message, - severity, progress) + self.update_progress(log_history['percentage'], message, + severity, log_history) class LineMatcher(object): @@ -201,7 +177,7 @@ class LineMatcher(object): self.__class__.__name__, self.regex_.pattern, self.message_template_, self.severity_) - def update_progress(self, line, progress): + def update_progress(self, line, log_history): """Update progress by the line. :param line: one line in log file to indicate the installing progress. @@ -209,7 +185,7 @@ class LineMatcher(object): The line may be partial if the latest line of the log file is not the whole line. But the whole line may be resent in the next run. - :praam progress: the :class:`Progress` instance to update. + :param progress: the :class:`Progress` instance to update. """ mat = self.regex_.search(line) if not mat: @@ -224,7 +200,7 @@ class LineMatcher(object): self.message_template_, mat.groupdict(), self) raise error - self.progress_.update(message, self.severity_, progress) + self.progress_.update(message, self.severity_, log_history) return ( self.match_sameline_, self.match_nextline_) diff --git a/compass/log_analyzor/progress_calculator.py b/compass/log_analyzor/progress_calculator.py index d50f8af1..50fbb9ab 100644 --- a/compass/log_analyzor/progress_calculator.py +++ b/compass/log_analyzor/progress_calculator.py @@ -19,437 +19,528 @@ import logging from compass.log_analyzor.adapter_matcher import AdapterItemMatcher -from compass.log_analyzor.adapter_matcher import AdapterMatcher from compass.log_analyzor.adapter_matcher import OSMatcher from compass.log_analyzor.adapter_matcher import PackageMatcher from compass.log_analyzor.file_matcher import FileMatcher +from compass.log_analyzor.file_matcher import FileReaderFactory from compass.log_analyzor.line_matcher import IncrementalProgress from compass.log_analyzor.line_matcher import LineMatcher +from compass.utils import setting_wrapper as setting + # TODO(weidong): reconsider intialization method for the following. OS_INSTALLER_CONFIGURATIONS = { - 'Ubuntu': AdapterItemMatcher( - file_matchers=[ - FileMatcher( - filename='syslog', - min_progress=0.0, - max_progress=1.0, - line_matchers={ - 'start': LineMatcher( - pattern=r'.*', - progress=.05, - message_template='start installing', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='ethdetect' - ), - 'ethdetect': LineMatcher( - pattern=r'Menu.*item.*\'ethdetect\'.*selected', - progress=.1, - message_template='ethdetect selected', - unmatch_nextline_next_matcher_name='ethdetect', - match_nextline_next_matcher_name='netcfg' - ), - 'netcfg': LineMatcher( - pattern=r'Menu.*item.*\'netcfg\'.*selected', - progress=.12, - message_template='netcfg selected', - unmatch_nextline_next_matcher_name='netcfg', - match_nextline_next_matcher_name='network-preseed' - ), - 'network-preseed': LineMatcher( - pattern=r'Menu.*item.*\'network-preseed\'.*selected', - progress=.15, - message_template='network-preseed selected', - unmatch_nextline_next_matcher_name='network-preseed', - match_nextline_next_matcher_name='localechooser' - ), - 'localechoose': LineMatcher( - pattern=r'Menu.*item.*\'localechooser\'.*selected', - progress=.18, - message_template='localechooser selected', - unmatch_nextline_next_matcher_name='localechooser', - match_nextline_next_matcher_name='download-installer' - ), - 'download-installer': LineMatcher( - pattern=( - r'Menu.*item.*\'download-installer\'.*selected' + 'cobbler': { + 'Ubuntu': AdapterItemMatcher( + file_matchers=[ + FileMatcher( + filename='syslog', + min_progress=0.0, + max_progress=1.0, + line_matchers={ + 'start': LineMatcher( + pattern=r'.*', + progress=.05, + message_template='start installing', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='ethdetect' ), - progress=.2, - message_template='download installer selected', - unmatch_nextline_next_matcher_name=( - 'download-installer'), - match_nextline_next_matcher_name='clock-setup' - ), - 'clock-setup': LineMatcher( - pattern=r'Menu.*item.*\'clock-setup\'.*selected', - progress=.3, - message_template='clock-setup selected', - unmatch_nextline_next_matcher_name='clock-setup', - match_nextline_next_matcher_name='disk-detect' - ), - 'disk-detect': LineMatcher( - pattern=r'Menu.*item.*\'disk-detect\'.*selected', - progress=.32, - message_template='disk-detect selected', - unmatch_nextline_next_matcher_name='disk-detect', - match_nextline_next_matcher_name='partman-base' - ), - 'partman-base': LineMatcher( - pattern=r'Menu.*item.*\'partman-base\'.*selected', - progress=.35, - message_template='partman-base selected', - unmatch_nextline_next_matcher_name='partman-base', - match_nextline_next_matcher_name='live-installer' - ), - 'live-installer': LineMatcher( - pattern=r'Menu.*item.*\'live-installer\'.*selected', - progress=.45, - message_template='live-installer selected', - unmatch_nextline_next_matcher_name='live-installer', - match_nextline_next_matcher_name='pkgsel' - ), - 'pkgsel': LineMatcher( - pattern=r'Menu.*item.*\'pkgsel\'.*selected', - progress=.5, - message_template='pkgsel selected', - unmatch_nextline_next_matcher_name='pkgsel', - match_nextline_next_matcher_name='grub-installer' - ), - 'grub-installer': LineMatcher( - pattern=r'Menu.*item.*\'grub-installer\'.*selected', - progress=.9, - message_template='grub-installer selected', - unmatch_nextline_next_matcher_name='grub-installer', - match_nextline_next_matcher_name='finish-install' - ), - 'finish-install': LineMatcher( - pattern=r'Menu.*item.*\'finish-install\'.*selected', - progress=.95, - message_template='finish-install selected', - unmatch_nextline_next_matcher_name='finish-install', - match_nextline_next_matcher_name='finish-install-done' - ), - 'finish-install-done': LineMatcher( - pattern=r'Running.*finish-install.d/.*save-logs', - progress=1.0, - message_template='finish-install is done', - unmatch_nextline_next_matcher_name=( - 'finish-install-done' + 'ethdetect': LineMatcher( + pattern=r'Menu.*item.*\'ethdetect\'.*selected', + progress=.1, + message_template='ethdetect selected', + unmatch_nextline_next_matcher_name='ethdetect', + match_nextline_next_matcher_name='netcfg' ), - match_nextline_next_matcher_name='exit' - ), - } - ), - FileMatcher( - filename='status', - min_progress=.2, - max_progress=.3, - line_matchers={ - 'start': LineMatcher( - pattern=r'Package: (?P.*)', - progress=IncrementalProgress(0.0, 0.99, 0.05), - message_template='Installing udeb %(package)s', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='start' - ) - } - ), - FileMatcher( - filename='initial-status', - min_progress=.5, - max_progress=.9, - line_matchers={ - 'start': LineMatcher( - pattern=r'Package: (?P.*)', - progress=IncrementalProgress(0.0, 0.99, 0.01), - message_template='Installing deb %(package)s', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='start' - ) - } - ), - ] - ), - 'CentOS': AdapterItemMatcher( - file_matchers=[ - FileMatcher( - filename='sys.log', - min_progress=0.0, - max_progress=0.1, - line_matchers={ - 'start': LineMatcher( - pattern=r'NOTICE (?P.*)', - progress=IncrementalProgress(.1, .9, .1), - message_template='%(message)s', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='exit' - ), - } - ), - FileMatcher( - filename='anaconda.log', - min_progress=0.1, - max_progress=1.0, - line_matchers={ - 'start': LineMatcher( - pattern=r'setting.*up.*kickstart', - progress=.1, - message_template=( - 'Setting up kickstart configurations'), - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='STEP_STAGE2' - ), - 'STEP_STAGE2': LineMatcher( - pattern=r'starting.*STEP_STAGE2', - progress=.15, - message_template=( - 'Downloading installation ' - 'images from server'), - unmatch_nextline_next_matcher_name='STEP_STAGE2', - match_nextline_next_matcher_name='start_anaconda' - ), - 'start_anaconda': LineMatcher( - pattern=r'Running.*anaconda.*script', - progress=.2, - unmatch_nextline_next_matcher_name=( - 'start_anaconda'), - match_nextline_next_matcher_name=( - 'start_kickstart_pre') - ), - 'start_kickstart_pre': LineMatcher( - pattern=r'Running.*kickstart.*pre.*script', - progress=.25, - unmatch_nextline_next_matcher_name=( - 'start_kickstart_pre'), - match_nextline_next_matcher_name=( - 'kickstart_pre_done') - ), - 'kickstart_pre_done': LineMatcher( - pattern=( - r'All.*kickstart.*pre.*script.*have.*been.*run'), - progress=.3, - unmatch_nextline_next_matcher_name=( - 'kickstart_pre_done'), - match_nextline_next_matcher_name=( - 'start_enablefilesystem') - ), - 'start_enablefilesystem': LineMatcher( - pattern=r'moving.*step.*enablefilesystems', - progress=0.3, - message_template=( - 'Performing hard-disk partitioning and ' - 'enabling filesystems'), - unmatch_nextline_next_matcher_name=( - 'start_enablefilesystem'), - match_nextline_next_matcher_name=( - 'enablefilesystem_done') - ), - 'enablefilesystem_done': LineMatcher( - pattern=r'leaving.*step.*enablefilesystems', - progress=.35, - message_template='Filesystems are enabled', - unmatch_nextline_next_matcher_name=( - 'enablefilesystem_done'), - match_nextline_next_matcher_name=( - 'setup_repositories') - ), - 'setup_repositories': LineMatcher( - pattern=r'moving.*step.*reposetup', - progress=0.35, - message_template=( - 'Setting up Customized Repositories'), - unmatch_nextline_next_matcher_name=( - 'setup_repositories'), - match_nextline_next_matcher_name=( - 'repositories_ready') - ), - 'repositories_ready': LineMatcher( - pattern=r'leaving.*step.*reposetup', - progress=0.4, - message_template=( - 'Customized Repositories setting up are done'), - unmatch_nextline_next_matcher_name=( - 'repositories_ready'), - match_nextline_next_matcher_name='checking_dud' - ), - 'checking_dud': LineMatcher( - pattern=r'moving.*step.*postselection', - progress=0.4, - message_template='Checking DUD modules', - unmatch_nextline_next_matcher_name='checking_dud', - match_nextline_next_matcher_name='dud_checked' - ), - 'dud_checked': LineMatcher( - pattern=r'leaving.*step.*postselection', - progress=0.5, - message_template='Checking DUD modules are done', - unmatch_nextline_next_matcher_name='dud_checked', - match_nextline_next_matcher_name='installing_packages' - ), - 'installing_packages': LineMatcher( - pattern=r'moving.*step.*installpackages', - progress=0.5, - message_template='Installing packages', - unmatch_nextline_next_matcher_name=( - 'installing_packages'), - match_nextline_next_matcher_name=( - 'packages_installed') - ), - 'packages_installed': LineMatcher( - pattern=r'leaving.*step.*installpackages', - progress=0.8, - message_template='Packages are installed', - unmatch_nextline_next_matcher_name=( - 'packages_installed'), - match_nextline_next_matcher_name=( - 'installing_bootloader') - ), - 'installing_bootloader': LineMatcher( - pattern=r'moving.*step.*instbootloader', - progress=0.9, - message_template='Installing bootloaders', - unmatch_nextline_next_matcher_name=( - 'installing_bootloader'), - match_nextline_next_matcher_name=( - 'bootloader_installed'), - ), - 'bootloader_installed': LineMatcher( - pattern=r'leaving.*step.*instbootloader', - progress=1.0, - message_template='bootloaders is installed', - unmatch_nextline_next_matcher_name=( - 'bootloader_installed'), - match_nextline_next_matcher_name='exit' - ), - } - ), - FileMatcher( - filename='install.log', - min_progress=0.56, - max_progress=0.80, - line_matchers={ - 'start': LineMatcher( - pattern=r'Installing (?P.*)', - progress=IncrementalProgress(0.0, 0.99, 0.005), - message_template='Installing %(package)s', - unmatch_sameline_next_matcher_name='package_complete', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='start' - ), - 'package_complete': LineMatcher( - pattern='FINISHED.*INSTALLING.*PACKAGES', - progress=1.0, - message_template='installing packages finished', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='exit' - ), - } - ), - ] - ), + 'netcfg': LineMatcher( + pattern=r'Menu.*item.*\'netcfg\'.*selected', + progress=.12, + message_template='netcfg selected', + unmatch_nextline_next_matcher_name='netcfg', + match_nextline_next_matcher_name='network-preseed' + ), + 'network-preseed': LineMatcher( + pattern=( + r'Menu.*item.*\'network-preseed\'.*selected' + ), + progress=.15, + message_template='network-preseed selected', + unmatch_nextline_next_matcher_name=( + 'network-preseed' + ), + match_nextline_next_matcher_name='localechooser' + ), + 'localechooser': LineMatcher( + pattern=r'Menu.*item.*\'localechooser\'.*selected', + progress=.18, + message_template='localechooser selected', + unmatch_nextline_next_matcher_name='localechooser', + match_nextline_next_matcher_name=( + 'download-installer' + ) + ), + 'download-installer': LineMatcher( + pattern=( + r'Menu.*item.*\'download-installer\'.*selected' + ), + progress=.2, + message_template='download installer selected', + unmatch_nextline_next_matcher_name=( + 'download-installer'), + match_nextline_next_matcher_name='clock-setup' + ), + 'clock-setup': LineMatcher( + pattern=r'Menu.*item.*\'clock-setup\'.*selected', + progress=.3, + message_template='clock-setup selected', + unmatch_nextline_next_matcher_name='clock-setup', + match_nextline_next_matcher_name='disk-detect' + ), + 'disk-detect': LineMatcher( + pattern=r'Menu.*item.*\'disk-detect\'.*selected', + progress=.32, + message_template='disk-detect selected', + unmatch_nextline_next_matcher_name='disk-detect', + match_nextline_next_matcher_name='partman-base' + ), + 'partman-base': LineMatcher( + pattern=( + r'Menu.*item.*\'partman-base\'.*selected' + ), + progress=.35, + message_template='partman-base selected', + unmatch_nextline_next_matcher_name='partman-base', + match_nextline_next_matcher_name='bootstrap-base' + ), + 'bootstrap-base': LineMatcher( + pattern=( + r'Menu.*item.*\'bootstrap-base\'.*selected' + ), + progress=.40, + message_template='bootstrap-base selected', + unmatch_nextline_next_matcher_name=( + 'bootstrap-base' + ), + match_nextline_next_matcher_name='apt-setup-udeb' + ), + 'apt-setup-udeb': LineMatcher( + pattern=( + r'Menu.*item.*\'apt-setup-udeb\'.*selected' + ), + progress=.45, + message_template='apt-setup-udeb selected', + unmatch_nextline_next_matcher_name=( + 'apt-setup-udeb' + ), + match_nextline_next_matcher_name='pkgsel' + ), + 'pkgsel': LineMatcher( + pattern=r'Menu.*item.*\'pkgsel\'.*selected', + progress=.5, + message_template='pkgsel selected', + unmatch_nextline_next_matcher_name='pkgsel', + match_nextline_next_matcher_name='grub-installer' + ), + 'grub-installer': LineMatcher( + pattern=( + r'Menu.*item.*\'grub-installer\'.*selected' + ), + progress=.9, + message_template='grub-installer selected', + unmatch_nextline_next_matcher_name=( + 'grub-installer' + ), + match_nextline_next_matcher_name='finish-install' + ), + 'finish-install': LineMatcher( + pattern=( + r'Menu.*item.*\'finish-install\'.*selected' + ), + progress=.95, + message_template='finish-install selected', + unmatch_nextline_next_matcher_name=( + 'finish-install' + ), + match_nextline_next_matcher_name=( + 'finish-install-done' + ) + ), + 'finish-install-done': LineMatcher( + pattern=( + r'Running.*finish-install.d/.*save-logs' + ), + progress=1.0, + message_template='finish-install is done', + unmatch_nextline_next_matcher_name=( + 'finish-install-done' + ), + match_nextline_next_matcher_name='exit' + ), + } + ), + FileMatcher( + filename='status', + min_progress=.2, + max_progress=.3, + line_matchers={ + 'start': LineMatcher( + pattern=r'Package: (?P.*)', + progress=IncrementalProgress(0.0, 0.99, 0.05), + message_template='Installing udeb %(package)s', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='start' + ) + } + ), + FileMatcher( + filename='initial-status', + min_progress=.5, + max_progress=.9, + line_matchers={ + 'start': LineMatcher( + pattern=r'Package: (?P.*)', + progress=IncrementalProgress(0.0, 0.99, 0.01), + message_template='Installing deb %(package)s', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='start' + ) + } + ), + ] + ), + 'CentOS': AdapterItemMatcher( + file_matchers=[ + FileMatcher( + filename='sys.log', + min_progress=0.0, + max_progress=0.1, + line_matchers={ + 'start': LineMatcher( + pattern=r'NOTICE (?P.*)', + progress=IncrementalProgress(.1, .9, .1), + message_template='%(message)s', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='exit' + ), + } + ), + FileMatcher( + filename='anaconda.log', + min_progress=0.1, + max_progress=1.0, + line_matchers={ + 'start': LineMatcher( + pattern=r'setting.*up.*kickstart', + progress=.1, + message_template=( + 'Setting up kickstart configurations'), + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='STEP_STAGE2' + ), + 'STEP_STAGE2': LineMatcher( + pattern=r'starting.*STEP_STAGE2', + progress=.15, + message_template=( + 'Downloading installation ' + 'images from server'), + unmatch_nextline_next_matcher_name='STEP_STAGE2', + match_nextline_next_matcher_name='start_anaconda' + ), + 'start_anaconda': LineMatcher( + pattern=r'Running.*anaconda.*script', + progress=.2, + unmatch_nextline_next_matcher_name=( + 'start_anaconda'), + match_nextline_next_matcher_name=( + 'start_kickstart_pre') + ), + 'start_kickstart_pre': LineMatcher( + pattern=r'Running.*kickstart.*pre.*script', + progress=.25, + unmatch_nextline_next_matcher_name=( + 'start_kickstart_pre'), + match_nextline_next_matcher_name=( + 'kickstart_pre_done') + ), + 'kickstart_pre_done': LineMatcher( + pattern=( + r'All.*kickstart.*pre' + '.*script.*have.*been.*run' + ), + progress=.3, + unmatch_nextline_next_matcher_name=( + 'kickstart_pre_done'), + match_nextline_next_matcher_name=( + 'start_enablefilesystem') + ), + 'start_enablefilesystem': LineMatcher( + pattern=( + r'moving.*step.*enablefilesystems' + ), + progress=0.3, + message_template=( + 'Performing hard-disk partitioning and ' + 'enabling filesystems' + ), + unmatch_nextline_next_matcher_name=( + 'start_enablefilesystem'), + match_nextline_next_matcher_name=( + 'enablefilesystem_done') + ), + 'enablefilesystem_done': LineMatcher( + pattern=( + r'leaving.*step.*enablefilesystems' + ), + progress=.35, + message_template='Filesystems are enabled', + unmatch_nextline_next_matcher_name=( + 'enablefilesystem_done'), + match_nextline_next_matcher_name=( + 'setup_repositories') + ), + 'setup_repositories': LineMatcher( + pattern=r'moving.*step.*reposetup', + progress=0.35, + message_template=( + 'Setting up Customized Repositories' + ), + unmatch_nextline_next_matcher_name=( + 'setup_repositories'), + match_nextline_next_matcher_name=( + 'repositories_ready') + ), + 'repositories_ready': LineMatcher( + pattern=r'leaving.*step.*reposetup', + progress=0.4, + message_template=( + 'Customized Repositories setting up are done' + ), + unmatch_nextline_next_matcher_name=( + 'repositories_ready'), + match_nextline_next_matcher_name='checking_dud' + ), + 'checking_dud': LineMatcher( + pattern=r'moving.*step.*postselection', + progress=0.4, + message_template='Checking DUD modules', + unmatch_nextline_next_matcher_name='checking_dud', + match_nextline_next_matcher_name='dud_checked' + ), + 'dud_checked': LineMatcher( + pattern=r'leaving.*step.*postselection', + progress=0.5, + message_template='Checking DUD modules are done', + unmatch_nextline_next_matcher_name='dud_checked', + match_nextline_next_matcher_name=( + 'installing_packages' + ) + ), + 'installing_packages': LineMatcher( + pattern=r'moving.*step.*installpackages', + progress=0.5, + message_template='Installing packages', + unmatch_nextline_next_matcher_name=( + 'installing_packages'), + match_nextline_next_matcher_name=( + 'packages_installed') + ), + 'packages_installed': LineMatcher( + pattern=r'leaving.*step.*installpackages', + progress=0.8, + message_template='Packages are installed', + unmatch_nextline_next_matcher_name=( + 'packages_installed'), + match_nextline_next_matcher_name=( + 'installing_bootloader') + ), + 'installing_bootloader': LineMatcher( + pattern=r'moving.*step.*instbootloader', + progress=0.9, + message_template='Installing bootloaders', + unmatch_nextline_next_matcher_name=( + 'installing_bootloader'), + match_nextline_next_matcher_name=( + 'bootloader_installed'), + ), + 'bootloader_installed': LineMatcher( + pattern=r'leaving.*step.*instbootloader', + progress=1.0, + message_template='bootloaders is installed', + unmatch_nextline_next_matcher_name=( + 'bootloader_installed'), + match_nextline_next_matcher_name='exit' + ), + } + ), + FileMatcher( + filename='install.log', + min_progress=0.56, + max_progress=0.80, + line_matchers={ + 'start': LineMatcher( + pattern=r'Installing (?P.*)', + progress=IncrementalProgress(0.0, 0.99, 0.005), + message_template='Installing %(package)s', + unmatch_sameline_next_matcher_name=( + 'package_complete' + ), + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='start' + ), + 'package_complete': LineMatcher( + pattern='FINISHED.*INSTALLING.*PACKAGES', + progress=1.0, + message_template='installing packages finished', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='exit' + ), + } + ), + ] + ), + } } PACKAGE_INSTALLER_CONFIGURATIONS = { - 'openstack': AdapterItemMatcher( - file_matchers=[ - FileMatcher( - filename='chef-client.log', - min_progress=0.1, - max_progress=1.0, - line_matchers={ - 'start': LineMatcher( - pattern=( - r'Processing\s*(?P.*)' - r'\[(?P.*)\].*'), - progress=IncrementalProgress(0.0, .90, 0.005), - message_template=( - 'Processing %(install_type)s %(package)s'), - unmatch_sameline_next_matcher_name=( - 'chef_complete'), - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='start' - ), - 'chef_complete': LineMatcher( - pattern=r'Chef.*Run.*complete', - progress=1.0, - message_template='Chef run complete', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='exit' - ), - } - ), - ] - ), + 'chef_installer': { + 'openstack': AdapterItemMatcher( + file_matchers=[ + FileMatcher( + filename='chef-client.log', + min_progress=0.1, + max_progress=1.0, + line_matchers={ + 'start': LineMatcher( + pattern=( + r'Processing\s*(?P.*)' + r'\[(?P.*)\].*'), + progress=IncrementalProgress(0.0, .90, 0.005), + message_template=( + 'Processing %(install_type)s %(package)s'), + unmatch_sameline_next_matcher_name=( + 'chef_complete'), + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='start' + ), + 'chef_complete': LineMatcher( + pattern=r'Chef.*Run.*complete', + progress=1.0, + message_template='Chef run complete', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='exit' + ), + } + ), + ] + ), + } } +OS_ADAPTER_CONFIGURATIONS = [ + OSMatcher( + os_installer_name='cobbler', + os_pattern='CentOS.*', + item_matcher=OS_INSTALLER_CONFIGURATIONS['cobbler']['CentOS'], + file_reader_factory=FileReaderFactory( + setting.INSTALLATION_LOGDIR['CobblerInstaller'] + ) + ), + OSMatcher( + os_installer_name='cobbler', + os_pattern='Ubuntu.*', + item_matcher=OS_INSTALLER_CONFIGURATIONS['cobbler']['Ubuntu'], + file_reader_factory=FileReaderFactory( + setting.INSTALLATION_LOGDIR['CobblerInstaller'] + ) + ) +] -ADAPTER_CONFIGURATIONS = [ - AdapterMatcher( - os_matcher=OSMatcher( - os_installer_name='cobbler', - os_pattern='CentOS.*', - item_matcher=OS_INSTALLER_CONFIGURATIONS['CentOS'], - min_progress=0.0, - max_progress=0.6), - package_matcher=PackageMatcher( - package_installer_name='chef', - target_system='openstack', - item_matcher=PACKAGE_INSTALLER_CONFIGURATIONS['openstack'], - min_progress=0.6, - max_progress=1.0) - ), - AdapterMatcher( - os_matcher=OSMatcher( - os_installer_name='cobbler', - os_pattern='Ubuntu.*', - item_matcher=OS_INSTALLER_CONFIGURATIONS['Ubuntu'], - min_progress=0.0, - max_progress=0.6), - package_matcher=PackageMatcher( - package_installer_name='chef', - target_system='openstack', - item_matcher=PACKAGE_INSTALLER_CONFIGURATIONS['openstack'], - min_progress=0.6, - max_progress=1.0) - ), +PACKAGE_ADAPTER_CONFIGURATIONS = [ + PackageMatcher( + package_installer_name='chef_installer', + distributed_system_pattern='openstack.*', + item_matcher=PACKAGE_INSTALLER_CONFIGURATIONS[ + 'chef_installer']['openstack'], + file_reader_factory=FileReaderFactory( + setting.INSTALLATION_LOGDIR['ChefInstaller'] + ) + ) ] -def _get_adapter_matcher( - os_installer, os_name, - package_installer, target_system -): - """Get adapter matcher by os name and package installer name.""" - for configuration in ADAPTER_CONFIGURATIONS: - if configuration.match(os_installer, os_name, - package_installer, target_system): +def _get_os_matcher(os_installer_name, os_name): + """Get OS adapter matcher by os name and installer name.""" + for configuration in OS_ADAPTER_CONFIGURATIONS: + if configuration.match(os_installer_name, os_name): return configuration else: logging.debug('configuration %s does not match %s and %s', - configuration, os_name, target_system) - - logging.error('No configuration found with os installer %s os %s ' - 'package_installer %s, target_system %s', - os_installer, os_name, package_installer, target_system) + configuration, os_name, os_installer_name) + logging.error('No configuration found for os installer %s os %s', + os_installer_name, os_name) return None -def update_progress(os_installer, os_names, package_installer, target_systems, - cluster_hosts): - """Update adapter installing progress. +def _get_package_matcher( + package_installer_name, distributed_system_name +): + """Get package adapter matcher by pacakge name and installer name.""" + for configuration in PACKAGE_ADAPTER_CONFIGURATIONS: + if configuration.match( + package_installer_name, + distributed_system_name + ): + return configuration + else: + logging.debug('configuration %s does not match %s and %s', + configuration, distributed_system_name, + package_installer_name) + logging.error('No configuration found for package installer %s os %s', + package_installer_name, distributed_system_name) + return None - :param os_installer: os installer name - :param package_installer: package installer name. - :param cluster_hosts: clusters and hosts in each cluster to update. - :param cluster_hosts: dict of int to list of int. - """ - for clusterid, hostids in cluster_hosts.items(): - adapter = _get_adapter_matcher(os_installer, os_names[clusterid], - package_installer, - target_systems[clusterid]) - if not adapter: + +def update_host_progress(host_mappping): + for host_id, (host, host_state, host_log_history_mapping) in ( + host_mappping.items() + ): + os_name = host['os_name'] + os_installer_name = host['os_installer']['name'] + os_matcher = _get_os_matcher( + os_installer_name, os_name + ) + if not os_matcher: continue + name = host[setting.HOST_INSTALLATION_LOGDIR_NAME] + os_matcher.update_progress( + name, host_state, host_log_history_mapping + ) - adapter.update_progress(clusterid, hostids) + +def update_clusterhost_progress(clusterhost_mapping): + for ( + clusterhost_id, + (clusterhost, clusterhost_state, clusterhost_log_history_mapping) + ) in ( + clusterhost_mapping.items() + ): + distributed_system_name = clusterhost['distributed_system_name'] + package_installer_name = clusterhost['package_installer']['name'] + package_matcher = _get_package_matcher( + package_installer_name, + distributed_system_name + ) + if not package_matcher: + continue + name = clusterhost[setting.CLUSTERHOST_INATALLATION_LOGDIR_NAME] + package_matcher.update_progress( + name, clusterhost_state, + clusterhost_log_history_mapping + ) + + +def update_cluster_progress(cluster_mapping): + for cluster_id, (cluster, cluster_state) in cluster_mapping.items(): + pass diff --git a/compass/static/css/bootstrap.min.css b/compass/static/css/bootstrap.min.css deleted file mode 100644 index 43e16d72..00000000 --- a/compass/static/css/bootstrap.min.css +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * Bootstrap v2.2.1 - * - * Copyright 2012 Twitter, Inc - * Licensed under the Apache License v2.0 - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Designed and built with all the love in the world @twitter by @mdo and @fat. - */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{width:auto\9;height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas img,.google-maps img{max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:after{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid [class*="span"]{display:block;float:left;width:100%;min-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row [class*="span"]+[class*="span"]{margin-left:2.127659574468085%}.row-fluid .span12{width:100%;*width:99.94680851063829%}.row-fluid .span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid .span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid .span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid .span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid .span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid .span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid .span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid .span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid .span3{width:23.404255319148934%;*width:23.351063829787233%}.row-fluid .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid .span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid .offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid .offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid .offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid .offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid .offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid .offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid .offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid .offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid .offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid .offset8:first-child{margin-left:68.08510638297872%;*margin-left:67.9787234042553%}.row-fluid .offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid .offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid .offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid .offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid .offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid .offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid .offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid .offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid .offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid .offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid .offset2{margin-left:19.148936170212764%;*margin-left:19.04255319148936%}.row-fluid .offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid .offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid .offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid [class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}.text-warning{color:#c09853}a.text-warning:hover{color:#a47e3c}.text-error{color:#b94a48}a.text-error:hover{color:#953b39}.text-info{color:#3a87ad}a.text-info:hover{color:#2d6987}.text-success{color:#468847}a.text-success:hover{color:#356635}h1,h2,h3,h4,h5,h6{margin:10px 0;font-family:inherit;font-weight:bold;line-height:20px;color:inherit;text-rendering:optimizelegibility}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px solid #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;line-height:0;content:""}.dl-horizontal:after{clear:both}.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid #fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{margin-bottom:0;font-size:16px;font-weight:300;line-height:25px}blockquote small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;color:inherit;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0 0 20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px solid #e5e5e5}legend small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#555;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;*margin-top:0;line-height:normal;cursor:pointer}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px solid #ccc}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:20px;padding-left:20px}.radio input[type="radio"],.checkbox input[type="checkbox"]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append .uneditable-input[class*="span"],.input-prepend input[class*="span"],.input-prepend .uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend [class*="span"],.row-fluid .input-append [class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row [class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row [class*="span"],.row-fluid .controls-row [class*="span"]{float:left}.controls-row .checkbox[class*="span"],.controls-row .radio[class*="span"]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning>label,.control-group.warning .help-block,.control-group.warning .help-inline{color:#c09853}.control-group.warning .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning select,.control-group.warning textarea{color:#c09853}.control-group.warning input,.control-group.warning select,.control-group.warning textarea{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.warning input:focus,.control-group.warning select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend .add-on,.control-group.warning .input-append .add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error>label,.control-group.error .help-block,.control-group.error .help-inline{color:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error input,.control-group.error select,.control-group.error textarea{color:#b94a48}.control-group.error input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error .input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success>label,.control-group.success .help-block,.control-group.success .help-inline{color:#468847}.control-group.success .checkbox,.control-group.success .radio,.control-group.success input,.control-group.success select,.control-group.success textarea{color:#468847}.control-group.success input,.control-group.success select,.control-group.success textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success input:focus,.control-group.success select:focus,.control-group.success textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success .input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}.control-group.info>label,.control-group.info .help-block,.control-group.info .help-inline{color:#3a87ad}.control-group.info .checkbox,.control-group.info .radio,.control-group.info input,.control-group.info select,.control-group.info textarea{color:#3a87ad}.control-group.info input,.control-group.info select,.control-group.info textarea{border-color:#3a87ad;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.info input:focus,.control-group.info select:focus,.control-group.info textarea:focus{border-color:#2d6987;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3}.control-group.info .input-prepend .add-on,.control-group.info .input-append .add-on{color:#3a87ad;background-color:#d9edf7;border-color:#3a87ad}input:focus:required:invalid,textarea:focus:required:invalid,select:focus:required:invalid{color:#b94a48;border-color:#ee5f5b}input:focus:required:invalid:focus,textarea:focus:required:invalid:focus,select:focus:required:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid #e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{margin-bottom:5px;font-size:0;white-space:nowrap}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend .dropdown-menu{font-size:14px}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append input:focus,.input-prepend input:focus,.input-append select:focus,.input-prepend select:focus,.input-append .uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append .btn,.input-prepend .btn{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append .active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend .add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend .btn:first-child{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input+.btn-group .btn,.input-append select+.btn-group .btn,.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append .add-on:last-child,.input-append .btn:last-child{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append .uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append .uneditable-input+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-prepend.input-append .btn-group:first-child{margin-left:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px \9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search .input-append .search-query,.form-search .input-prepend .search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append .search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend .btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline textarea,.form-horizontal textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search .help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search .uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search .input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search .input-append,.form-inline .input-append,.form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search .hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search .input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline .input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline .checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="radio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal .control-group:after{display:table;line-height:0;content:""}.form-horizontal .control-group:after{clear:both}.form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal .controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block{margin-top:10px}.form-horizontal .form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table-condensed th,.table-condensed td{padding:4px 5px}.table-bordered{border:1px solid #ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child tr:first-child td{border-top:0}.table-bordered thead:first-child tr:first-child th:first-child,.table-bordered tbody:first-child tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered thead:first-child tr:first-child th:last-child,.table-bordered tbody:first-child tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered thead:last-child tr:last-child th:first-child,.table-bordered tbody:last-child tr:last-child td:first-child,.table-bordered tfoot:last-child tr:last-child td:first-child{-webkit-border-radius:0 0 0 4px;-moz-border-radius:0 0 0 4px;border-radius:0 0 0 4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered thead:last-child tr:last-child th:last-child,.table-bordered tbody:last-child tr:last-child td:last-child,.table-bordered tfoot:last-child tr:last-child td:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody tr:first-child td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody tr:first-child td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-striped tbody tr:nth-child(odd) td,.table-striped tbody tr:nth-child(odd) th{background-color:#f9f9f9}.table-hover tbody tr:hover td,.table-hover tbody tr:hover th{background-color:#f5f5f5}table td[class*="span"],table th[class*="span"],.row-fluid table td[class*="span"],.row-fluid table th[class*="span"]{display:table-cell;float:none;margin-left:0}.table td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody tr.success td{background-color:#dff0d8}.table tbody tr.error td{background-color:#f2dede}.table tbody tr.warning td{background-color:#fcf8e3}.table tbody tr.info td{background-color:#d9edf7}.table-hover tbody tr.success:hover td{background-color:#d0e9c6}.table-hover tbody tr.error:hover td{background-color:#ebcccc}.table-hover tbody tr.warning:hover td{background-color:#faf2cc}.table-hover tbody tr.info:hover td{background-color:#c4e3f3}[class^="icon-"],[class*=" icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px 14px;background-repeat:no-repeat}.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 0}.icon-user{background-position:-168px 0}.icon-film{background-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 -24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px -24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px -24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px -24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px -24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-alt{background-position:-264px -24px}.icon-lock{background-position:-287px -24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px -24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px -24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px -24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 -48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px -48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px -48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px -48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px -48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px -48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{background-position:-288px -48px}.icon-align-right{background-position:-312px -48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px -48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px -48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px -48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px -72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px -72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px -72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px -72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px -72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px -72px}.icon-pause{background-position:-288px -72px}.icon-stop{background-position:-312px -72px}.icon-forward{background-position:-336px -72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px -72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px -72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 -96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px -96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px -96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px -96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px -96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px -96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px -96px}.icon-arrow-down{background-position:-312px -96px}.icon-share-alt{background-position:-336px -96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px -96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px -96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 -120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px -120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px -120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px -120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px -120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px -120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px -120px}.icon-chevron-down{background-position:-313px -119px}.icon-retweet{background-position:-336px -120px}.icon-shopping-cart{background-position:-360px -120px}.icon-folder-close{background-position:-384px -120px}.icon-folder-open{width:16px;background-position:-408px -120px}.icon-resize-vertical{background-position:-432px -119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 -144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px -144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px -144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px -144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px -144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px -144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{background-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px -144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px -144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px -144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px -144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open .dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown .caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-width:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.dropdown-menu li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu li>a:hover,.dropdown-menu li>a:focus,.dropdown-submenu:hover>a{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .active>a,.dropdown-menu .active>a:hover{color:#333;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu .disabled>a,.dropdown-menu .disabled>a:hover{color:#999}.dropdown-menu .disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent;background-image:none}.open{*z-index:1000}.open>.dropdown-menu{display:block}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup .dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 5px 5px 0;-moz-border-radius:5px 5px 5px 0;border-radius:5px 5px 5px 0}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px 0 5px 5px;content:" "}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu .nav-header{padding-right:20px;padding-left:20px}.typeahead{margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;*line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #bbb;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn:hover,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc \9}.btn:first-child{*margin-left:0}.btn:hover{color:#333;text-decoration:none;background-color:#e6e6e6;*background-color:#d9d9d9;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-color:#e6e6e6;background-color:#d9d9d9 \9;background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-color:#e6e6e6;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:11px 19px;font-size:17.5px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.btn-large [class^="icon-"],.btn-large [class*=" icon-"]{margin-top:2px}.btn-small{padding:2px 10px;font-size:11.9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-small [class^="icon-"],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini{padding:1px 6px;font-size:10.5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn{border-color:#c5c5c5;border-color:rgba(0,0,0,0.15) rgba(0,0,0,0.15) rgba(0,0,0,0.25)}.btn-primary{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;border-color:#04c #04c #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-primary:hover,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-warning:hover,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to bottom,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-danger:hover,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-moz-linear-gradient(top,#62c462,#51a351);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to bottom,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:hover,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to bottom,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 #1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-moz-linear-gradient(top,#444,#222);background-image:-webkit-gradient(linear,0 0,0 100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to bottom,#444,#222);background-repeat:repeat-x;border-color:#222 #222 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:active,.btn-inverse.active,.btn-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808 \9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover{color:#005580;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover{color:#333;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*margin-left:.3em;font-size:0;white-space:nowrap;vertical-align:middle;*zoom:1}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar .btn+.btn,.btn-toolbar .btn-group+.btn,.btn-toolbar .btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu{font-size:14px}.btn-group>.btn-mini{font-size:11px}.btn-group>.btn-small{font-size:12px}.btn-group>.btn-large{font-size:16px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open .btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open .btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open .btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open .btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open .btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open .btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open .btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-mini .caret,.btn-small .caret,.btn-large .caret{margin-top:6px}.btn-large .caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse .caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline;*zoom:1}.btn-group-vertical .btn{display:block;float:none;width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical .btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical .btn:first-child{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.btn-group-vertical .btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.btn-group-vertical .btn-large:first-child{-webkit-border-radius:6px 6px 0 0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 0}.btn-group-vertical .btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;color:#c09853;text-shadow:0 1px 0 rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid #fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert h4{margin:0}.alert .close{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 rgba(255,255,255,0.5);text-transform:uppercase}.nav li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:15px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 15px}.nav-list>.active>a,.nav-list>.active>a:hover{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px solid #ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav .dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav .dropdown-toggle:hover .caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle .caret{margin-top:8px}.nav .active .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active .dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover{cursor:pointer}.nav-tabs .open .dropdown-toggle,.nav-pills .open .dropdown-toggle,.nav>li.dropdown.open.active>a:hover{color:#fff;background-color:#999;border-color:#999}.nav li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked .open>a:hover{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px solid #ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.tabs-below>.nav-tabs>li>a:hover{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover{border-color:transparent #ddd #ddd #ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover{border-color:#eee #ddd #eee #eee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs .active>a:hover{border-color:#ddd transparent #ddd #ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid #ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.tabs-right>.nav-tabs>li>a:hover{border-color:#eee #eee #eee #ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover{border-color:#ddd #ddd #ddd transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible;color:#777}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);*zoom:1;-webkit-box-shadow:0 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px rgba(0,0,0,0.065)}.navbar-inner:before,.navbar-inner:after{display:table;line-height:0;content:""}.navbar-inner:after{clear:both}.navbar .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar .brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;font-weight:200;color:#777;text-shadow:0 1px 0 #fff}.navbar .brand:hover{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px}.navbar-link{color:#777}.navbar-link:hover{color:#333}.navbar .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar .btn,.navbar .btn-group{margin-top:5px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar .input-append .btn{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type="radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form .input-prepend{margin-top:6px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search .search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top .navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom .navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom .navbar-inner{padding-right:0;padding-left:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top .container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top .navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,0.1);box-shadow:0 1px 10px rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 10px rgba(0,0,0,0.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,0.1);box-shadow:0 -1px 10px rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar .nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar .nav>li>a{float:none;padding:10px 15px 10px;color:#777;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar .nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar .nav>li>a:hover{color:#333;text-decoration:none;background-color:transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar .nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to bottom,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar .btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar .btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar .icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.icon-bar{margin-top:3px}.navbar .nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-left:7px solid transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar .nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom .nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid #ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom .nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar .nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dropdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#777;border-bottom-color:#777}.navbar .nav li.dropdown.open>.dropdown-toggle .caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar .pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar .pull-right>li>.dropdown-menu:before,.navbar .nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar .pull-right>li>.dropdown-menu:after,.navbar .nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu .dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right .dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse{color:#999}.navbar-inverse .navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse .brand:hover,.navbar-inverse .nav>li>a:hover{color:#fff}.navbar-inverse .nav>li>a:focus,.navbar-inverse .nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav .active>a:hover,.navbar-inverse .nav .active>a:focus{color:#fff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav li.dropdown>.dropdown-toggle .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search .search-query{color:#fff;background-color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search .search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse .btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-moz-linear-gradient(top,#151515,#040404);background-image:-webkit-gradient(linear,0 0,0 100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to bottom,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 #000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse .btn-navbar:hover,.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse .btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse .btn-navbar:active,.navbar-inverse .btn-navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb li{display:inline-block;*display:inline;text-shadow:0 1px 0 #fff;*zoom:1}.breadcrumb .divider{padding:0 5px;color:#ccc}.breadcrumb .active{color:#999}.pagination{margin:20px 0}.pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px rgba(0,0,0,0.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#fff;border:1px solid #ddd;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>.active>a,.pagination ul>.active>span{background-color:#f5f5f5}.pagination ul>.active>a,.pagination ul>.active>span{color:#999;cursor:default}.pagination ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover{color:#999;cursor:default;background-color:transparent}.pagination ul>li:first-child>a,.pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.pagination ul>li:last-child>a,.pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:17.5px}.pagination-large ul>li:first-child>a,.pagination-large ul>li:first-child>span{-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.pagination-large ul>li:last-child>a,.pagination-large ul>li:last-child>span{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.pagination-mini ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini ul>li:first-child>span,.pagination-small ul>li:first-child>span{-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-bottomleft:3px;-moz-border-radius-topleft:3px}.pagination-mini ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini ul>li:last-child>span,.pagination-small ul>li:last-child>span{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:3px}.pagination-small ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini ul>li>a,.pagination-mini ul>li>span{padding:1px 6px;font-size:10.5px}.pager{margin:20px 0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>span{color:#999;cursor:default;background-color:#fff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:50%;left:50%;z-index:1050;width:560px;margin:-250px 0 0 -280px;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid #999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;outline:0;-webkit-box-shadow:0 3px 7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s linear,top .3s ease-out;transition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:50%}.modal-header{padding:9px 15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header h3{margin:0;line-height:30px}.modal-body{max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid #ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.tooltip{position:absolute;z-index:1030;display:block;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{margin-top:-3px}.tooltip.right{margin-left:3px}.tooltip.bottom{margin-top:3px}.tooltip.left{margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;width:236px;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover-content p,.popover-content ul,.popover-content ol{margin-bottom:0}.popover .arrow,.popover .arrow:after{position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow:after{z-index:-1;content:""}.popover.top .arrow{bottom:-10px;left:50%;margin-left:-10px;border-top-color:#fff;border-width:10px 10px 0}.popover.top .arrow:after{bottom:-1px;left:-11px;border-top-color:rgba(0,0,0,0.25);border-width:11px 11px 0}.popover.right .arrow{top:50%;left:-10px;margin-top:-10px;border-right-color:#fff;border-width:10px 10px 10px 0}.popover.right .arrow:after{bottom:-11px;left:-1px;border-right-color:rgba(0,0,0,0.25);border-width:11px 11px 11px 0}.popover.bottom .arrow{top:-10px;left:50%;margin-left:-10px;border-bottom-color:#fff;border-width:0 10px 10px}.popover.bottom .arrow:after{top:-1px;left:-11px;border-bottom-color:rgba(0,0,0,0.25);border-width:0 11px 11px}.popover.left .arrow{top:50%;right:-10px;margin-top:-10px;border-left-color:#fff;border-width:10px 0 10px 10px}.popover.left .arrow:after{right:-1px;bottom:-11px;border-left-color:rgba(0,0,0,0.25);border-width:11px 0 11px 11px}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid .thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}a.thumbnail:hover{border-color:#08c;-webkit-box-shadow:0 1px 4px rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px rgba(0,105,214,0.25)}.thumbnail>img{display:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#555}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media .pull-left{margin-right:10px}.media .pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-right:9px;padding-left:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}a.label:hover,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{background-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-ms-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0 0,0 100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress .bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-danger .bar,.progress .bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0 0,0 100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to bottom,#ee5f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-success .bar,.progress .bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0 0,0 100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-info .bar,.progress .bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-warning .bar,.progress .bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to bottom,#fbb450,#f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid #e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading .accordion-toggle{display:block;padding:8px 15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid #e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel .item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel .item>img{display:block;line-height:1}.carousel .active,.carousel .next,.carousel .prev{display:block}.carousel .active{left:0}.carousel .next,.carousel .prev{position:absolute;top:0;width:100%}.carousel .next{left:100%}.carousel .prev{left:-100%}.carousel .next.left,.carousel .prev.right{left:0}.carousel .active.left{left:-100%}.carousel .active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px solid #fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed} diff --git a/compass/static/img/glyphicons-halflings-white.png b/compass/static/img/glyphicons-halflings-white.png deleted file mode 100644 index 3bf6484a29d8da269f9bc874b25493a45fae3bae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8777 zcmZvC1yGz#v+m*$LXcp=A$ZWB0fL7wNbp_U*$~{_gL`my3oP#L!5tQYy99Ta`+g_q zKlj|KJ2f@c)ARJx{q*bbkhN_!|Wn*Vos8{TEhUT@5e;_WJsIMMcG5%>DiS&dv_N`4@J0cnAQ-#>RjZ z00W5t&tJ^l-QC*ST1-p~00u^9XJ=AUl7oW-;2a+x2k__T=grN{+1c4XK0ZL~^z^i$ zp&>vEhr@4fZWb380S18T&!0cQ3IKpHF)?v=b_NIm0Q>vwY7D0baZ)n z31Fa5sELUQARIVaU0nqf0XzT+fB_63aA;@<$l~wse|mcA;^G1TmX?-)e)jkGPfkuA z92@|!<>h5S_4f8QP-JRq>d&7)^Yin8l7K8gED$&_FaV?gY+wLjpoW%~7NDe=nHfMG z5DO3j{R9kv5GbssrUpO)OyvVrlx>u0UKD0i;Dpm5S5dY16(DL5l{ixz|mhJU@&-OWCTb7_%}8-fE(P~+XIRO zJU|wp1|S>|J3KrLcz^+v1f&BDpd>&MAaibR4#5A_4(MucZwG9E1h4@u0P@C8;oo+g zIVj7kfJi{oV~E(NZ*h(@^-(Q(C`Psb3KZ{N;^GB(a8NE*Vwc715!9 zr-H4Ao|T_c6+VT_JH9H+P3>iXSt!a$F`>s`jn`w9GZ_~B!{0soaiV|O_c^R2aWa%}O3jUE)WO=pa zs~_Wz08z|ieY5A%$@FcBF9^!1a}m5ks@7gjn;67N>}S~Hrm`4sM5Hh`q7&5-N{|31 z6x1{ol7BnskoViZ0GqbLa#kW`Z)VCjt1MysKg|rT zi!?s##Ck>8c zpi|>$lGlw#@yMNi&V4`6OBGJ(H&7lqLlcTQ&1zWriG_fL>BnFcr~?;E93{M-xIozQ zO=EHQ#+?<}%@wbWWv23#!V70h9MOuUVaU>3kpTvYfc|LBw?&b*89~Gc9i&8tlT#kF ztpbZoAzkdB+UTy=tx%L3Z4)I{zY(Kb)eg{InobSJmNwPZt$14aS-uc4eKuY8h$dtfyxu^a%zA)>fYI&)@ZXky?^{5>xSC?;w4r&td6vBdi%vHm4=XJH!3yL3?Ep+T5aU_>i;yr_XGq zxZfCzUU@GvnoIk+_Nd`aky>S&H!b*{A%L>?*XPAgWL(Vf(k7qUS}>Zn=U(ZfcOc{B z3*tOHH@t5Ub5D~#N7!Fxx}P2)sy{vE_l(R7$aW&CX>c|&HY+7};vUIietK%}!phrCuh+;C@1usp;XLU<8Gq8P!rEI3ieg#W$!= zQcZr{hp>8sF?k&Yl0?B84OneiQxef-4TEFrq3O~JAZR}yEJHA|Xkqd49tR&8oq{zP zY@>J^HBV*(gJvJZc_0VFN7Sx?H7#75E3#?N8Z!C+_f53YU}pyggxx1?wQi5Yb-_`I`_V*SMx5+*P^b=ec5RON-k1cIlsBLk}(HiaJyab0`CI zo0{=1_LO$~oE2%Tl_}KURuX<`+mQN_sTdM&* zkFf!Xtl^e^gTy6ON=&gTn6)$JHQq2)33R@_!#9?BLNq-Wi{U|rVX7Vny$l6#+SZ@KvQt@VYb%<9JfapI^b9j=wa+Tqb4ei;8c5 z&1>Uz@lVFv6T4Z*YU$r4G`g=91lSeA<=GRZ!*KTWKDPR}NPUW%peCUj`Ix_LDq!8| zMH-V`Pv!a~QkTL||L@cqiTz)*G-0=ytr1KqTuFPan9y4gYD5>PleK`NZB$ev@W%t= zkp)_=lBUTLZJpAtZg;pjI;7r2y|26-N7&a(hX|`1YNM9N8{>8JAuv}hp1v`3JHT-=5lbXpbMq7X~2J5Kl zh7tyU`_AusMFZ{ej9D;Uyy;SQ!4nwgSnngsYBwdS&EO3NS*o04)*juAYl;57c2Ly0(DEZ8IY?zSph-kyxu+D`tt@oU{32J#I{vmy=#0ySPK zA+i(A3yl)qmTz*$dZi#y9FS;$;h%bY+;StNx{_R56Otq+?pGe^T^{5d7Gs&?`_r`8 zD&dzOA|j8@3A&FR5U3*eQNBf<4^4W_iS_()*8b4aaUzfk2 zzIcMWSEjm;EPZPk{j{1>oXd}pXAj!NaRm8{Sjz!D=~q3WJ@vmt6ND_?HI~|wUS1j5 z9!S1MKr7%nxoJ3k`GB^7yV~*{n~O~n6($~x5Bu{7s|JyXbAyKI4+tO(zZYMslK;Zc zzeHGVl{`iP@jfSKq>R;{+djJ9n%$%EL()Uw+sykjNQdflkJZSjqV_QDWivbZS~S{K zkE@T^Jcv)Dfm93!mf$XYnCT--_A$zo9MOkPB6&diM8MwOfV?+ApNv`moV@nqn>&lv zYbN1-M|jc~sG|yLN^1R2=`+1ih3jCshg`iP&mY$GMTcY^W^T`WOCX!{-KHmZ#GiRH zYl{|+KLn5!PCLtBy~9i}`#d^gCDDx$+GQb~uc;V#K3OgbbOG0j5{BRG-si%Bo{@lB zGIt+Ain8^C`!*S0d0OSWVO+Z89}}O8aFTZ>p&k}2gGCV zh#<$gswePFxWGT$4DC^8@84_e*^KT74?7n8!$8cg=sL$OlKr&HMh@Rr5%*Wr!xoOl zo7jItnj-xYgVTX)H1=A2bD(tleEH57#V{xAeW_ezISg5OC zg=k>hOLA^urTH_e6*vSYRqCm$J{xo}-x3@HH;bsHD1Z`Pzvsn}%cvfw%Q(}h`Dgtb z0_J^niUmoCM5$*f)6}}qi(u;cPgxfyeVaaVmOsG<)5`6tzU4wyhF;k|~|x>7-2hXpVBpc5k{L4M`Wbe6Q?tr^*B z`Y*>6*&R#~%JlBIitlZ^qGe3s21~h3U|&k%%jeMM;6!~UH|+0+<5V-_zDqZQN79?n?!Aj!Nj`YMO9?j>uqI9-Tex+nJD z%e0#Yca6(zqGUR|KITa?9x-#C0!JKJHO(+fy@1!B$%ZwJwncQW7vGYv?~!^`#L~Um zOL++>4qmqW`0Chc0T23G8|vO)tK=Z2`gvS4*qpqhIJCEv9i&&$09VO8YOz|oZ+ubd zNXVdLc&p=KsSgtmIPLN69P7xYkYQ1vJ?u1g)T!6Ru`k2wkdj*wDC)VryGu2=yb0?F z>q~~e>KZ0d_#7f3UgV%9MY1}vMgF{B8yfE{HL*pMyhYF)WDZ^^3vS8F zGlOhs%g_~pS3=WQ#494@jAXwOtr^Y|TnQ5zki>qRG)(oPY*f}U_=ip_{qB0!%w7~G zWE!P4p3khyW-JJnE>eECuYfI?^d366Shq!Wm#x&jAo>=HdCllE$>DPO0N;y#4G)D2y#B@5=N=+F%Xo2n{gKcPcK2!hP*^WSXl+ut; zyLvVoY>VL{H%Kd9^i~lsb8j4>$EllrparEOJNT?Ym>vJa$(P^tOG)5aVb_5w^*&M0 zYOJ`I`}9}UoSnYg#E(&yyK(tqr^@n}qU2H2DhkK-`2He% zgXr_4kpXoQHxAO9S`wEdmqGU4j=1JdG!OixdqB4PPP6RXA}>GM zumruUUH|ZG2$bBj)Qluj&uB=dRb)?^qomw?Z$X%#D+Q*O97eHrgVB2*mR$bFBU`*} zIem?dM)i}raTFDn@5^caxE^XFXVhBePmH9fqcTi`TLaXiueH=@06sl}>F%}h9H_e9 z>^O?LxM1EjX}NVppaO@NNQr=AtHcH-BU{yBT_vejJ#J)l^cl69Z7$sk`82Zyw7Wxt z=~J?hZm{f@W}|96FUJfy65Gk8?^{^yjhOahUMCNNpt5DJw}ZKH7b!bGiFY9y6OY&T z_N)?Jj(MuLTN36ZCJ6I5Xy7uVlrb$o*Z%=-)kPo9s?<^Yqz~!Z* z_mP8(unFq65XSi!$@YtieSQ!<7IEOaA9VkKI?lA`*(nURvfKL8cX}-+~uw9|_5)uC2`ZHcaeX7L8aG6Ghleg@F9aG%X$#g6^yP5apnB>YTz&EfS{q z9UVfSyEIczebC)qlVu5cOoMzS_jrC|)rQlAzK7sfiW0`M8mVIohazPE9Jzn*qPt%6 zZL8RELY@L09B83@Be;x5V-IHnn$}{RAT#<2JA%ttlk#^(%u}CGze|1JY5MPhbfnYG zIw%$XfBmA-<_pKLpGKwbRF$#P;@_)ech#>vj25sv25VM$ouo)?BXdRcO{)*OwTw)G zv43W~T6ekBMtUD%5Bm>`^Ltv!w4~65N!Ut5twl!Agrzyq4O2Fi3pUMtCU~>9gt_=h-f% z;1&OuSu?A_sJvIvQ+dZNo3?m1%b1+s&UAx?8sUHEe_sB7zkm4R%6)<@oYB_i5>3Ip zIA+?jVdX|zL{)?TGpx+=Ta>G80}0}Ax+722$XFNJsC1gcH56{8B)*)eU#r~HrC&}` z|EWW92&;6y;3}!L5zXa385@?-D%>dSvyK;?jqU2t_R3wvBW;$!j45uQ7tyEIQva;Db}r&bR3kqNSh)Q_$MJ#Uj3Gj1F;)sO|%6z#@<+ zi{pbYsYS#u`X$Nf($OS+lhw>xgjos1OnF^$-I$u;qhJswhH~p|ab*nO>zBrtb0ndn zxV0uh!LN`&xckTP+JW}gznSpU492)u+`f{9Yr)js`NmfYH#Wdtradc0TnKNz@Su!e zu$9}G_=ku;%4xk}eXl>)KgpuT>_<`Ud(A^a++K&pm3LbN;gI}ku@YVrA%FJBZ5$;m zobR8}OLtW4-i+qPPLS-(7<>M{)rhiPoi@?&vDeVq5%fmZk=mDdRV>Pb-l7pP1y6|J z8I>sF+TypKV=_^NwBU^>4JJq<*14GLfM2*XQzYdlqqjnE)gZsPW^E@mp&ww* zW9i>XL=uwLVZ9pO*8K>t>vdL~Ek_NUL$?LQi5sc#1Q-f6-ywKcIT8Kw?C(_3pbR`e|)%9S-({if|E+hR2W!&qfQ&UiF^I!|M#xhdWsenv^wpKCBiuxXbnp85`{i|;BM?Ba`lqTA zyRm=UWJl&E{8JzYDHFu>*Z10-?#A8D|5jW9Ho0*CAs0fAy~MqbwYuOq9jjt9*nuHI zbDwKvh)5Ir$r!fS5|;?Dt>V+@F*v8=TJJF)TdnC#Mk>+tGDGCw;A~^PC`gUt*<(|i zB{{g{`uFehu`$fm4)&k7`u{xIV)yvA(%5SxX9MS80p2EKnLtCZ>tlX>*Z6nd&6-Mv$5rHD*db;&IBK3KH&M<+ArlGXDRdX1VVO4)&R$f4NxXI>GBh zSv|h>5GDAI(4E`@F?EnW zS>#c&Gw6~_XL`qQG4bK`W*>hek4LX*efn6|_MY+rXkNyAuu?NxS%L7~9tD3cn7&p( zCtfqe6sjB&Q-Vs7BP5+%;#Gk};4xtwU!KY0XXbmkUy$kR9)!~?*v)qw00!+Yg^#H> zc#8*z6zZo>+(bud?K<*!QO4ehiTCK&PD4G&n)Tr9X_3r-we z?fI+}-G~Yn93gI6F{}Dw_SC*FLZ)5(85zp4%uubtD)J)UELLkvGk4#tw&Tussa)mTD$R2&O~{ zCI3>fr-!-b@EGRI%g0L8UU%%u_<;e9439JNV;4KSxd|78v+I+8^rmMf3f40Jb}wEszROD?xBZu>Ll3;sUIoNxDK3|j3*sam2tC@@e$ z^!;+AK>efeBJB%ALsQ{uFui)oDoq()2USi?n=6C3#eetz?wPswc={I<8x=(8lE4EIsUfyGNZ{|KYn1IR|=E==f z(;!A5(-2y^2xRFCSPqzHAZn5RCN_bp22T(KEtjA(rFZ%>a4@STrHZflxKoqe9Z4@^ zM*scx_y73?Q{vt6?~WEl?2q*;@8 z3M*&@%l)SQmXkcUm)d@GT2#JdzhfSAP9|n#C;$E8X|pwD!r#X?0P>0ZisQ~TNqupW z*lUY~+ikD`vQb?@SAWX#r*Y+;=_|oacL$2CL$^(mV}aKO77pg}O+-=T1oLBT5sL2i z42Qth2+0@C`c+*D0*5!qy26sis<9a7>LN2{z%Qj49t z=L@x`4$ALHb*3COHoT?5S_c(Hs}g!V>W^=6Q0}zaubkDn)(lTax0+!+%B}9Vqw6{H zvL|BRM`O<@;eVi1DzM!tXtBrA20Ce@^Jz|>%X-t`vi-%WweXCh_LhI#bUg2*pcP~R z*RuTUzBKLXO~~uMd&o$v3@d0shHfUjC6c539PE6rF&;Ufa(Rw@K1*m7?f5)t`MjH0 z)_V(cajV5Am>f!kWcI@5rE8t6$S>5M=k=aRZROH6fA^jJp~2NlR4;Q2>L$7F#RT#9 z>4@1RhWG`Khy>P2j1Yx^BBL{S`niMaxlSWV-JBU0-T9zZ%>7mR3l$~QV$({o0;jTI ze5=cN^!Bc2bT|BcojXp~K#2cM>OTe*cM{Kg-j*CkiW)EGQot^}s;cy8_1_@JA0Whq zlrNr+R;Efa+`6N)s5rH*|E)nYZ3uqkk2C(E7@A|3YI`ozP~9Lexx#*1(r8luq+YPk z{J}c$s` zPM35Fx(YWB3Z5IYnN+L_4|jaR(5iWJi2~l&xy}aU7kW?o-V*6Av2wyZTG!E2KSW2* zGRLQkQU;Oz##ie-Z4fI)WSRxn$(ZcD;TL+;^r=a4(G~H3ZhK$lSXZj?cvyY8%d9JM zzc3#pD^W_QnWy#rx#;c&N@sqHhrnHRmj#i;s%zLm6SE(n&BWpd&f7>XnjV}OlZntI70fq%8~9<7 zMYaw`E-rp49-oC1N_uZTo)Cu%RR2QWdHpzQIcNsoDp`3xfP+`gI?tVQZ4X={qU?(n zV>0ASES^Xuc;9JBji{)RnFL(Lez;8XbB1uWaMp@p?7xhXk6V#!6B@aP4Rz7-K%a>i z?fvf}va_DGUXlI#4--`A3qK7J?-HwnG7O~H2;zR~RLW)_^#La!=}+>KW#anZ{|^D3 B7G?kd diff --git a/compass/static/img/glyphicons-halflings.png b/compass/static/img/glyphicons-halflings.png deleted file mode 100644 index a9969993201f9cee63cf9f49217646347297b643..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12799 zcma*OWmH^Ivn@*S;K3nSf_t!#;0f+&pm7Po8`nk}2q8f5;M%x$SdAkd9FAvlc$ zx660V9e3Ox@4WZ^?7jZ%QFGU-T~%||Ug4iK6bbQY@zBuF2$hxOw9wF=A)nUSxR_5@ zEX>HBryGrjyuOFFv$Y4<+|3H@gQfEqD<)+}a~mryD|1U9*I_FOG&F%+Ww{SJ-V2BR zjt<81Ek$}Yb*95D4RS0HCps|uLyovt;P05hchQb-u2bzLtmog&f2}1VlNhxXV);S9 zM2buBg~!q9PtF)&KGRgf3#z7B(hm5WlNClaCWFs!-P!4-u*u5+=+D|ZE9e`KvhTHT zJBnLwGM%!u&vlE%1ytJ=!xt~y_YkFLQb6bS!E+s8l7PiPGSt9xrmg?LV&&SL?J~cI zS(e9TF1?SGyh+M_p@o1dyWu7o7_6p;N6hO!;4~ z2B`I;y`;$ZdtBpvK5%oQ^p4eR2L)BH>B$FQeC*t)c`L71gXHPUa|vyu`Bnz)H$ZcXGve(}XvR!+*8a>BLV;+ryG1kt0=)ytl zNJxFUN{V7P?#|Cp85QTa@(*Q3%K-R(Pkv1N8YU*(d(Y}9?PQ(j;NzWoEVWRD-~H$=f>j9~PN^BM2okI(gY-&_&BCV6RP&I$FnSEM3d=0fCxbxA6~l>54-upTrw zYgX@%m>jsSGi`0cQt6b8cX~+02IghVlNblR7eI;0ps}mpWUcxty1yG56C5rh%ep(X z?)#2d?C<4t-KLc*EAn>>M8%HvC1TyBSoPNg(4id~H8JwO#I)Bf;N*y6ai6K9_bA`4 z_g9(-R;qyH&6I$`b42v|0V3Z8IXN*p*8g$gE98+JpXNY+jXxU0zsR^W$#V=KP z3AEFp@OL}WqwOfsV<)A^UTF4&HF1vQecz?LWE@p^Z2){=KEC_3Iopx_eS42>DeiDG zWMXGbYfG~W7C8s@@m<_?#Gqk;!&)_Key@^0xJxrJahv{B&{^!>TV7TEDZlP|$=ZCz zmX=ZWtt4QZKx**)lQQoW8y-XLiOQy#T`2t}p6l*S`68ojyH@UXJ-b~@tN`WpjF z%7%Yzv807gsO!v=!(2uR)16!&U5~VPrPHtGzUU?2w(b1Xchq}(5Ed^G|SD7IG+kvgyVksU) z(0R)SW1V(>&q2nM%Z!C9=;pTg!(8pPSc%H01urXmQI6Gi^dkYCYfu6b4^tW))b^U+ z$2K&iOgN_OU7n#GC2jgiXU{caO5hZt0(>k+c^(r><#m|#J^s?zA6pi;^#*rp&;aqL zRcZi0Q4HhVX3$ybclxo4FFJW*`IV`)Bj_L3rQe?5{wLJh168Ve1jZv+f1D}f0S$N= zm4i|9cEWz&C9~ZI3q*gwWH^<6sBWuphgy@S3Qy?MJiL>gwd|E<2h9-$3;gT9V~S6r z)cAcmE0KXOwDA5eJ02-75d~f?3;n7a9d_xPBJaO;Z)#@s7gk5$Qn(Fc^w@9c5W0zY z59is0?Mt^@Rolcn{4%)Ioat(kxQH6}hIykSA)zht=9F_W*D#<}N(k&&;k;&gKkWIL z0Of*sP=X(Uyu$Pw;?F@?j{}=>{aSHFcii#78FC^6JGrg-)!)MV4AKz>pXnhVgTgx8 z1&5Y=>|8RGA6++FrSy=__k_imx|z-EI@foKi>tK0Hq2LetjUotCgk2QFXaej!BWYL zJc{fv(&qA7UUJ|AXLc5z*_NW#yWzKtl(c8mEW{A>5Hj^gfZ^HC9lQNQ?RowXjmuCj4!!54Us1=hY z0{@-phvC}yls!PmA~_z>Y&n&IW9FQcj}9(OLO-t^NN$c0o}YksCUWt|DV(MJB%%Sr zdf}8!9ylU2TW!=T{?)g-ojAMKc>3pW;KiZ7f0;&g)k}K^#HBhE5ot)%oxq$*$W@b# zg4p<Ou`ME|Kd1WHK@8 zzLD+0(NHWa`B{em3Ye?@aVsEi>y#0XVZfaFuq#;X5C3{*ikRx7UY4FF{ZtNHNO?A_ z#Q?hwRv~D8fPEc%B5E-ZMI&TAmikl||EERumQCRh7p;)>fdZMxvKq;ky0}7IjhJph zW*uuu*(Y6)S;Od--8uR^R#sb$cmFCnPcj9PPCWhPN;n`i1Q#Qn>ii z{WR|0>8F`vf&#E(c2NsoH=I7Cd-FV|%(7a`i}gZw4N~QFFG2WtS^H%@c?%9UZ+kez z;PwGgg_r6V>Kn5n(nZ40P4qMyrCP3bDkJp@hp6&X3>gzC>=f@Hsen<%I~7W+x@}b> z0}Et*vx_50-q@PIV=(3&Tbm}}QRo*FP2@)A#XX-8jYspIhah`9ukPBr)$8>Tmtg&R z?JBoH17?+1@Y@r>anoKPQ}F8o9?vhcG79Cjv^V6ct709VOQwg{c0Q#rBSsSmK3Q;O zBpNihl3S0_IGVE)^`#94#j~$;7+u870yWiV$@={|GrBmuz4b)*bCOPkaN0{6$MvazOEBxFdKZDlbVvv{8_*kJ zfE6C`4&Kkz<5u%dEdStd85-5UHG5IOWbo8i9azgg#zw-(P1AA049hddAB*UdG3Vn0 zX`OgM+EM|<+KhJ<=k?z~WA5waVj?T9eBdfJGebVifBKS1u<$#vl^BvSg)xsnT5Aw_ZY#}v*LXO#htB>f}x3qDdDHoFeb zAq7;0CW;XJ`d&G*9V)@H&739DpfWYzdQt+Kx_E1K#Cg1EMtFa8eQRk_JuUdHD*2;W zR~XFnl!L2A?48O;_iqCVr1oxEXvOIiN_9CUVTZs3C~P+11}ebyTRLACiJuMIG#`xP zKlC|E(S@QvN+%pBc6vPiQS8KgQAUh75C0a2xcPQDD$}*bM&z~g8+=9ltmkT$;c;s z5_=8%i0H^fEAOQbHXf0;?DN5z-5+1 zDxj50yYkz4ox9p$HbZ|H?8ukAbLE^P$@h}L%i6QVcY>)i!w=hkv2zvrduut%!8>6b zcus3bh1w~L804EZ*s96?GB&F7c5?m?|t$-tp2rKMy>F*=4;w*jW}^;8v`st&8)c; z2Ct2{)?S(Z;@_mjAEjb8x=qAQvx=}S6l9?~H?PmP`-xu;ME*B8sm|!h@BX4>u(xg_ zIHmQzp4Tgf*J}Y=8STR5_s)GKcmgV!$JKTg@LO402{{Wrg>#D4-L%vjmtJ4r?p&$F!o-BOf7ej~ z6)BuK^^g1b#(E>$s`t3i13{6-mmSp7{;QkeG5v}GAN&lM2lQT$@(aQCcFP(%UyZbF z#$HLTqGT^@F#A29b0HqiJsRJAlh8kngU`BDI6 zJUE~&!cQ*&f95Ot$#mxU5+*^$qg_DWNdfu+1irglB7yDglzH()2!@#rpu)^3S8weW z_FE$=j^GTY*|5SH95O8o8W9FluYwB=2PwtbW|JG6kcV^dMVmX(wG+Otj;E$%gfu^K z!t~<3??8=()WQSycsBKy24>NjRtuZ>zxJIED;YXaUz$@0z4rl+TW zWxmvM$%4jYIpO>j5k1t1&}1VKM~s!eLsCVQ`TTjn3JRXZD~>GM z$-IT~(Y)flNqDkC%DfbxaV9?QuWCV&-U1yzrV@0jRhE;)ZO0=r-{s@W?HOFbRHDDV zq;eLo+wOW;nI|#mNf(J?RImB9{YSO2Y`9825Lz#u4(nk3)RGv3X8B(A$TsontJ8L! z9JP^eWxtKC?G8^xAZa1HECx*rp35s!^%;&@Jyk)NexVc)@U4$^X1Dag6`WKs|(HhZ#rzO2KEw3xh~-0<;|zcs0L>OcO#YYX{SN8m6`9pp+ zQG@q$I)T?aoe#AoR@%om_#z=c@ych!bj~lV13Qi-xg$i$hXEAB#l=t7QWENGbma4L zbBf*X*4oNYZUd_;1{Ln_ZeAwQv4z?n9$eoxJeI?lU9^!AB2Y~AwOSq67dT9ADZ)s@ zCRYS7W$Zpkdx$3T>7$I%3EI2ik~m!f7&$Djpt6kZqDWZJ-G{*_eXs*B8$1R4+I}Kf zqniwCI64r;>h2Lu{0c(#Atn)%E8&)=0S4BMhq9$`vu|Ct;^ur~gL`bD>J@l)P$q_A zO7b3HGOUG`vgH{}&&AgrFy%K^>? z>wf**coZ2vdSDcNYSm~dZ(vk6&m6bVKmVgrx-X<>{QzA!)2*L+HLTQz$e8UcB&Djq zl)-%s$ZtUN-R!4ZiG=L0#_P=BbUyH+YPmFl_ogkkQ$=s@T1v}rNnZ^eMaqJ|quc+6 z*ygceDOrldsL30w`H;rNu+IjlS+G~p&0SawXCA1+D zC%cZtjUkLNq%FadtHE?O(yQTP486A{1x<{krq#rpauNQaeyhM3*i0%tBpQHQo-u)x z{0{&KS`>}vf2_}b160XZO2$b)cyrHq7ZSeiSbRvaxnKUH{Q`-P(nL&^fcF2){vhN- zbX&WEjP7?b4A%0y6n_=m%l00uZ+}mCYO(!x?j$+O$*TqoD_Q5EoyDJ?w?^UIa491H zE}87(bR`X;@u#3Qy~9wWdWQIg1`cXrk$x9=ccR|RY1~%{fAJ@uq@J3e872x0v$hmv ze_KcL(wM|n0EOp;t{hKoohYyDmYO;!`7^Lx;0k=PWPGZpI>V5qYlzjSL_(%|mud50 z7#{p97s`U|Sn$WYF>-i{i4`kzlrV6a<}=72q2sAT7Zh{>P%*6B;Zl;~0xWymt10Mo zl5{bmR(wJefJpNGK=fSRP|mpCI-)Nf6?Pv==FcFmpSwF1%CTOucV{yqxSyx4Zws3O z8hr5Uyd%ezIO7?PnEO0T%af#KOiXD$e?V&OX-B|ZX-YsgSs%sv-6U+sLPuz{D4bq| zpd&|o5tNCmpT>(uIbRf?8c}d3IpOb3sn6>_dr*26R#ev<_~vi)wleW$PX|5)$_ z+_|=pi(0D(AB_sjQ;sQQSM&AWqzDO1@NHw;C9cPdXRKRI#@nUW)CgFxzQ1nyd!+h& zcjU!U=&u|>@}R(9D$%lu2TlV>@I2-n@fCr5PrZNVyKWR7hm zWjoy^p7v8m#$qN0K#8jT- zq`mSirDZDa1Jxm;Rg3rAPhC)LcI4@-RvKT+@9&KsR3b0_0zuM!Fg7u>oF>3bzOxZPU&$ab$Z9@ zY)f7pKh22I7ZykL{YsdjcqeN++=0a}elQM-4;Q)(`Ep3|VFHqnXOh14`!Bus& z9w%*EWK6AiAM{s$6~SEQS;A>ey$#`7)khZvamem{P?>k)5&7Sl&&NXKk}o!%vd;-! zpo2p-_h^b$DNBO>{h4JdGB=D>fvGIYN8v&XsfxU~VaefL?q} z3ekM?iOKkCzQHkBkhg=hD!@&(L}FcHKoa zbZ7)H1C|lHjwEb@tu=n^OvdHOo7o+W`0-y3KdP#bb~wM=Vr_gyoEq|#B?$&d$tals ziIs-&7isBpvS|CjC|7C&3I0SE?~`a%g~$PI%;au^cUp@ER3?mn-|vyu!$7MV6(uvt z+CcGuM(Ku2&G0tcRCo7#D$Dirfqef2qPOE5I)oCGzmR5G!o#Q~(k~)c=LpIfrhHQk zeAva6MilEifE7rgP1M7AyWmLOXK}i8?=z2;N=no)`IGm#y%aGE>-FN zyXCp0Sln{IsfOBuCdE*#@CQof%jzuU*jkR*Su3?5t}F(#g0BD0Zzu|1MDes8U7f9; z$JBg|mqTXt`muZ8=Z`3wx$uizZG_7>GI7tcfOHW`C2bKxNOR)XAwRkLOaHS4xwlH4 zDpU29#6wLXI;H?0Se`SRa&I_QmI{zo7p%uveBZ0KZKd9H6@U?YGArbfm)D*^5=&Rp z`k{35?Z5GbZnv>z@NmJ%+sx=1WanWg)8r}C_>EGR8mk(NR$pW<-l8OTU^_u3M@gwS z7}GGa1)`z5G|DZirw;FB@VhH7Dq*0qc=|9lLe{w2#`g+_nt>_%o<~9(VZe=zI*SSz4w43-_o>4E4`M@NPKTWZuQJs)?KXbWp1M zimd5F;?AP(LWcaI-^Sl{`~>tmxsQB9Y$Xi*{Zr#py_+I$vx7@NY`S?HFfS!hUiz$a z{>!&e1(16T!Om)m)&k1W#*d#GslD^4!TwiF2WjFBvi=Ms!ADT)ArEW6zfVuIXcXVk z>AHjPADW+mJzY`_Ieq(s?jbk4iD2Rb8*V3t6?I+E06(K8H!!xnDzO%GB;Z$N-{M|B zeT`jo%9)s%op*XZKDd6*)-^lWO{#RaIGFdBH+;XXjI(8RxpBc~azG1H^2v7c^bkFE zZCVPE+E*Q=FSe8Vm&6|^3ki{9~qafiMAf7i4APZg>b%&5>nT@pHH z%O*pOv(77?ZiT{W zBibx}Q12tRc7Py1NcZTp`Q4ey%T_nj@1WKg5Fz_Rjl4wlJQj)rtp8yL3r!Shy zvZvnmh!tH4T6Js-?vI0<-rzzl{mgT*S0d_7^AU_8gBg^03o-J=p(1o6kww2hx|!%T z-jqp}m^G*W?$!R#M%Ef?&2jYxmx+lXWZszpI4d$pUN`(S)|*c^CgdwY>Fa>> zgGBJhwe8y#Xd*q0=@SLEgPF>+Qe4?%E*v{a`||luZ~&dqMBrRfJ{SDMaJ!s_;cSJp zSqZHXIdc@@XteNySUZs^9SG7xK`8=NBNM)fRVOjw)D^)w%L2OPkTQ$Tel-J)GD3=YXy+F4in(ILy*A3m@3o73uv?JC}Q>f zrY&8SWmesiba0|3X-jmlMT3 z*ST|_U@O=i*sM_*48G)dgXqlwoFp5G6qSM3&%_f_*n!PiT>?cNI)fAUkA{qWnqdMi+aNK_yVQ&lx4UZknAc9FIzVk% zo6JmFH~c{_tK!gt4+o2>)zoP{sR}!!vfRjI=13!z5}ijMFQ4a4?QIg-BE4T6!#%?d&L;`j5=a`4is>U;%@Rd~ zXC~H7eGQhhYWhMPWf9znDbYIgwud(6$W3e>$W4$~d%qoJ z+JE`1g$qJ%>b|z*xCKenmpV$0pM=Gl-Y*LT8K+P)2X#;XYEFF4mRbc~jj?DM@(1e`nL=F4Syv)TKIePQUz)bZ?Bi3@G@HO$Aps1DvDGkYF50O$_welu^cL7;vPiMGho74$;4fDqKbE{U zd1h{;LfM#Fb|Z&uH~Rm_J)R~Vy4b;1?tW_A)Iz#S_=F|~pISaVkCnQ0&u%Yz%o#|! zS-TSg87LUfFSs{tTuM3$!06ZzH&MFtG)X-l7>3)V?Txuj2HyG*5u;EY2_5vU0ujA? zHXh5G%6e3y7v?AjhyX79pnRBVr}RmPmtrxoB7lkxEzChX^(vKd+sLh?SBic=Q)5nA zdz7Mw3_iA>;T^_Kl~?1|5t%GZ;ki_+i>Q~Q1EVdKZ)$Sh3LM@ea&D~{2HOG++7*wF zAC6jW4>fa~!Vp5+$Z{<)Qxb|{unMgCv2)@%3j=7)Zc%U<^i|SAF88s!A^+Xs!OASYT%7;Jx?olg_6NFP1475N z#0s<@E~FI}#LNQ{?B1;t+N$2k*`K$Hxb%#8tRQi*Z#No0J}Pl;HWb){l7{A8(pu#@ zfE-OTvEreoz1+p`9sUI%Y{e5L-oTP_^NkgpYhZjp&ykinnW;(fu1;ttpSsgYM8ABX4dHe_HxU+%M(D=~) zYM}XUJ5guZ;=_ZcOsC`_{CiU$zN3$+x&5C`vX-V3`8&RjlBs^rf00MNYZW+jCd~7N z%{jJuUUwY(M`8$`B>K&_48!Li682ZaRknMgQ3~dnlp8C?__!P2z@=Auv;T^$yrsNy zCARmaA@^Yo2sS%2$`031-+h9KMZsIHfB>s@}>Y(z988e!`%4=EDoAQ0kbk>+lCoK60Mx9P!~I zlq~wf7kcm_NFImt3ZYlE(b3O1K^QWiFb$V^a2Jlwvm(!XYx<`i@ZMS3UwFt{;x+-v zhx{m=m;4dgvkKp5{*lfSN3o^keSpp9{hlXj%=}e_7Ou{Yiw(J@NXuh*;pL6@$HsfB zh?v+r^cp@jQ4EspC#RqpwPY(}_SS$wZ{S959`C25777&sgtNh%XTCo9VHJC-G z;;wi9{-iv+ETiY;K9qvlEc04f;ZnUP>cUL_T*ms``EtGoP^B#Q>n2dSrbAg8a>*Lg zd0EJ^=tdW~7fbcLFsqryFEcy*-8!?;n%;F+8i{eZyCDaiYxghr z$8k>L|2&-!lhvuVdk!r-kpSFl`5F5d4DJr%M4-qOy3gdmQbqF1=aBtRM7)c_Ae?$b8 zQg4c8*KQ{XJmL)1c7#0Yn0#PTMEs4-IHPjkn0!=;JdhMXqzMLeh`yOylXROP- zl#z3+fwM9l3%VN(6R77ua*uI9%hO7l7{+Hcbr(peh;afUK?B4EC09J{-u{mv)+u#? zdKVBCPt`eU@IzL)OXA`Ebu`Xp?u0m%h&X41}FNfnJ*g1!1wcbbpo%F4x!-#R9ft!8{5`Ho}04?FI#Kg zL|k`tF1t_`ywdy8(wnTut>HND(qNnq%Sq=AvvZbXnLx|mJhi!*&lwG2g|edBdVgLy zjvVTKHAx(+&P;P#2Xobo7_RttUi)Nllc}}hX>|N?-u5g7VJ-NNdwYcaOG?NK=5)}` zMtOL;o|i0mSKm(UI_7BL_^6HnVOTkuPI6y@ZLR(H?c1cr-_ouSLp{5!bx^DiKd*Yb z{K78Ci&Twup zTKm)ioN|wcYy%Qnwb)IzbH>W!;Ah5Zdm_jRY`+VRJ2 zhkspZ9hbK3iQD91A$d!0*-1i#%x81|s+SPRmD}d~<1p6!A13(!vABP2kNgqEG z?AMgl^P+iRoIY(9@_I?n1829lGvAsRnHwS~|5vD2+Zi53j<5N4wNn0{q>>jF9*bI) zL$kMXM-awNOElF>{?Jr^tOz1glbwaD-M0OKOlTeW3C!1ZyxRbB>8JDof(O&R1bh%3x#>y2~<>OXO#IIedH0Q`(&&?eo-c~ z>*Ah#3~09unym~UC-UFqqI>{dmUD$Y4@evG#ORLI*{ZM)Jl=e1it!XzY($S3V zLG!Y6fCjE>x6r@5FG1n|8ompSZaJ>9)q6jqU;XxCQk9zV(?C9+i*>w z21+KYt1gXX&0`x3E)hS7I5}snbBzox9C@Xzcr|{B8Hw;SY1$}&BoYKXH^hpjW-RgJ z-Fb}tannKCv>y~^`r|(1Q9;+sZlYf3XPSX|^gR01UFtu$B*R;$sPZdIZShRr>|b@J z;#G{EdoY+O;REEjQ}X7_YzWLO+Ey3>a_KDe1CjSe| z6arqcEZ)CX!8r(si`dqbF$uu&pnf^Np{1f*TdJ`r2;@SaZ z#hb4xlaCA@Pwqj#LlUEe5L{I$k(Zj$d3(~)u(F%&xb8={N9hKxlZIO1ABsM{Mt|)2 zJ^t9Id;?%4PfR4&Ph9B9cFK~@tG3wlFW-0fXZS_L4U*EiAA%+`h%q2^6BCC;t0iO4V=s4Qug{M|iDV@s zC7|ef-dxiR7T&Mpre!%hiUhHM%3Qxi$Lzw6&(Tvlx9QA_7LhYq<(o~=Y>3ka-zrQa zhGpfFK@)#)rtfz61w35^sN1=IFw&Oc!Nah+8@qhJ0UEGr;JplaxOGI82OVqZHsqfX ze1}r{jy;G?&}Da}a7>SCDsFDuzuseeCKof|Dz2BPsP8? zY;a)Tkr2P~0^2BeO?wnzF_Ul-ekY=-w26VnU%U3f19Z-pj&2 z4J_a|o4Dci+MO)mPQIM>kdPG1xydiR9@#8m zh27D7GF{p|a{8({Q-Pr-;#jV{2zHR>lGoFtIfIpoMo?exuQyX_A;;l0AP4!)JEM$EwMInZkj+8*IHP4vKRd zKx_l-i*>A*C@{u%ct`y~s6MWAfO{@FPIX&sg8H{GMDc{4M3%$@c8&RAlw0-R<4DO3 trJqdc$mBpWeznn?E0M$F`|3v=`3%T2A17h;rxP7$%JLd=6(2u;`(N3pt&so# diff --git a/compass/static/js/bootstrap.min.js b/compass/static/js/bootstrap.min.js deleted file mode 100644 index 55da8c39..00000000 --- a/compass/static/js/bootstrap.min.js +++ /dev/null @@ -1,6 +0,0 @@ -/*! -* Bootstrap.js by @fat & @mdo -* Copyright 2012 Twitter, Inc. -* http://www.apache.org/licenses/LICENSE-2.0.txt -*/ -!function(e){"use strict";e(function(){e.support.transition=function(){var e=function(){var e=document.createElement("bootstrap"),t={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},n;for(n in t)if(e.style[n]!==undefined)return t[n]}();return e&&{end:e}}()})}(window.jQuery),!function(e){"use strict";var t='[data-dismiss="alert"]',n=function(n){e(n).on("click",t,this.close)};n.prototype.close=function(t){function s(){i.trigger("closed").remove()}var n=e(this),r=n.attr("data-target"),i;r||(r=n.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,"")),i=e(r),t&&t.preventDefault(),i.length||(i=n.hasClass("alert")?n:n.parent()),i.trigger(t=e.Event("close"));if(t.isDefaultPrevented())return;i.removeClass("in"),e.support.transition&&i.hasClass("fade")?i.on(e.support.transition.end,s):s()},e.fn.alert=function(t){return this.each(function(){var r=e(this),i=r.data("alert");i||r.data("alert",i=new n(this)),typeof t=="string"&&i[t].call(r)})},e.fn.alert.Constructor=n,e(document).on("click.alert.data-api",t,n.prototype.close)}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.button.defaults,n)};t.prototype.setState=function(e){var t="disabled",n=this.$element,r=n.data(),i=n.is("input")?"val":"html";e+="Text",r.resetText||n.data("resetText",n[i]()),n[i](r[e]||this.options[e]),setTimeout(function(){e=="loadingText"?n.addClass(t).attr(t,t):n.removeClass(t).removeAttr(t)},0)},t.prototype.toggle=function(){var e=this.$element.closest('[data-toggle="buttons-radio"]');e&&e.find(".active").removeClass("active"),this.$element.toggleClass("active")},e.fn.button=function(n){return this.each(function(){var r=e(this),i=r.data("button"),s=typeof n=="object"&&n;i||r.data("button",i=new t(this,s)),n=="toggle"?i.toggle():n&&i.setState(n)})},e.fn.button.defaults={loadingText:"loading..."},e.fn.button.Constructor=t,e(document).on("click.button.data-api","[data-toggle^=button]",function(t){var n=e(t.target);n.hasClass("btn")||(n=n.closest(".btn")),n.button("toggle")})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=n,this.options.slide&&this.slide(this.options.slide),this.options.pause=="hover"&&this.$element.on("mouseenter",e.proxy(this.pause,this)).on("mouseleave",e.proxy(this.cycle,this))};t.prototype={cycle:function(t){return t||(this.paused=!1),this.options.interval&&!this.paused&&(this.interval=setInterval(e.proxy(this.next,this),this.options.interval)),this},to:function(t){var n=this.$element.find(".item.active"),r=n.parent().children(),i=r.index(n),s=this;if(t>r.length-1||t<0)return;return this.sliding?this.$element.one("slid",function(){s.to(t)}):i==t?this.pause().cycle():this.slide(t>i?"next":"prev",e(r[t]))},pause:function(t){return t||(this.paused=!0),this.$element.find(".next, .prev").length&&e.support.transition.end&&(this.$element.trigger(e.support.transition.end),this.cycle()),clearInterval(this.interval),this.interval=null,this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(t,n){var r=this.$element.find(".item.active"),i=n||r[t](),s=this.interval,o=t=="next"?"left":"right",u=t=="next"?"first":"last",a=this,f;this.sliding=!0,s&&this.pause(),i=i.length?i:this.$element.find(".item")[u](),f=e.Event("slide",{relatedTarget:i[0]});if(i.hasClass("active"))return;if(e.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(f);if(f.isDefaultPrevented())return;i.addClass(t),i[0].offsetWidth,r.addClass(o),i.addClass(o),this.$element.one(e.support.transition.end,function(){i.removeClass([t,o].join(" ")).addClass("active"),r.removeClass(["active",o].join(" ")),a.sliding=!1,setTimeout(function(){a.$element.trigger("slid")},0)})}else{this.$element.trigger(f);if(f.isDefaultPrevented())return;r.removeClass("active"),i.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return s&&this.cycle(),this}},e.fn.carousel=function(n){return this.each(function(){var r=e(this),i=r.data("carousel"),s=e.extend({},e.fn.carousel.defaults,typeof n=="object"&&n),o=typeof n=="string"?n:s.slide;i||r.data("carousel",i=new t(this,s)),typeof n=="number"?i.to(n):o?i[o]():s.interval&&i.cycle()})},e.fn.carousel.defaults={interval:5e3,pause:"hover"},e.fn.carousel.Constructor=t,e(document).on("click.carousel.data-api","[data-slide]",function(t){var n=e(this),r,i=e(n.attr("data-target")||(r=n.attr("href"))&&r.replace(/.*(?=#[^\s]+$)/,"")),s=e.extend({},i.data(),n.data());i.carousel(s),t.preventDefault()})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.collapse.defaults,n),this.options.parent&&(this.$parent=e(this.options.parent)),this.options.toggle&&this.toggle()};t.prototype={constructor:t,dimension:function(){var e=this.$element.hasClass("width");return e?"width":"height"},show:function(){var t,n,r,i;if(this.transitioning)return;t=this.dimension(),n=e.camelCase(["scroll",t].join("-")),r=this.$parent&&this.$parent.find("> .accordion-group > .in");if(r&&r.length){i=r.data("collapse");if(i&&i.transitioning)return;r.collapse("hide"),i||r.data("collapse",null)}this.$element[t](0),this.transition("addClass",e.Event("show"),"shown"),e.support.transition&&this.$element[t](this.$element[0][n])},hide:function(){var t;if(this.transitioning)return;t=this.dimension(),this.reset(this.$element[t]()),this.transition("removeClass",e.Event("hide"),"hidden"),this.$element[t](0)},reset:function(e){var t=this.dimension();return this.$element.removeClass("collapse")[t](e||"auto")[0].offsetWidth,this.$element[e!==null?"addClass":"removeClass"]("collapse"),this},transition:function(t,n,r){var i=this,s=function(){n.type=="show"&&i.reset(),i.transitioning=0,i.$element.trigger(r)};this.$element.trigger(n);if(n.isDefaultPrevented())return;this.transitioning=1,this.$element[t]("in"),e.support.transition&&this.$element.hasClass("collapse")?this.$element.one(e.support.transition.end,s):s()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}},e.fn.collapse=function(n){return this.each(function(){var r=e(this),i=r.data("collapse"),s=typeof n=="object"&&n;i||r.data("collapse",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.collapse.defaults={toggle:!0},e.fn.collapse.Constructor=t,e(document).on("click.collapse.data-api","[data-toggle=collapse]",function(t){var n=e(this),r,i=n.attr("data-target")||t.preventDefault()||(r=n.attr("href"))&&r.replace(/.*(?=#[^\s]+$)/,""),s=e(i).data("collapse")?"toggle":n.data();n[e(i).hasClass("in")?"addClass":"removeClass"]("collapsed"),e(i).collapse(s)})}(window.jQuery),!function(e){"use strict";function r(){e(t).each(function(){i(e(this)).removeClass("open")})}function i(t){var n=t.attr("data-target"),r;return n||(n=t.attr("href"),n=n&&/#/.test(n)&&n.replace(/.*(?=#[^\s]*$)/,"")),r=e(n),r.length||(r=t.parent()),r}var t="[data-toggle=dropdown]",n=function(t){var n=e(t).on("click.dropdown.data-api",this.toggle);e("html").on("click.dropdown.data-api",function(){n.parent().removeClass("open")})};n.prototype={constructor:n,toggle:function(t){var n=e(this),s,o;if(n.is(".disabled, :disabled"))return;return s=i(n),o=s.hasClass("open"),r(),o||(s.toggleClass("open"),n.focus()),!1},keydown:function(t){var n,r,s,o,u,a;if(!/(38|40|27)/.test(t.keyCode))return;n=e(this),t.preventDefault(),t.stopPropagation();if(n.is(".disabled, :disabled"))return;o=i(n),u=o.hasClass("open");if(!u||u&&t.keyCode==27)return n.click();r=e("[role=menu] li:not(.divider) a",o);if(!r.length)return;a=r.index(r.filter(":focus")),t.keyCode==38&&a>0&&a--,t.keyCode==40&&a').appendTo(document.body),this.$backdrop.click(this.options.backdrop=="static"?e.proxy(this.$element[0].focus,this.$element[0]):e.proxy(this.hide,this)),i&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),i?this.$backdrop.one(e.support.transition.end,t):t()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),e.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(e.support.transition.end,e.proxy(this.removeBackdrop,this)):this.removeBackdrop()):t&&t()}},e.fn.modal=function(n){return this.each(function(){var r=e(this),i=r.data("modal"),s=e.extend({},e.fn.modal.defaults,r.data(),typeof n=="object"&&n);i||r.data("modal",i=new t(this,s)),typeof n=="string"?i[n]():s.show&&i.show()})},e.fn.modal.defaults={backdrop:!0,keyboard:!0,show:!0},e.fn.modal.Constructor=t,e(document).on("click.modal.data-api",'[data-toggle="modal"]',function(t){var n=e(this),r=n.attr("href"),i=e(n.attr("data-target")||r&&r.replace(/.*(?=#[^\s]+$)/,"")),s=i.data("modal")?"toggle":e.extend({remote:!/#/.test(r)&&r},i.data(),n.data());t.preventDefault(),i.modal(s).one("hide",function(){n.focus()})})}(window.jQuery),!function(e){"use strict";var t=function(e,t){this.init("tooltip",e,t)};t.prototype={constructor:t,init:function(t,n,r){var i,s;this.type=t,this.$element=e(n),this.options=this.getOptions(r),this.enabled=!0,this.options.trigger=="click"?this.$element.on("click."+this.type,this.options.selector,e.proxy(this.toggle,this)):this.options.trigger!="manual"&&(i=this.options.trigger=="hover"?"mouseenter":"focus",s=this.options.trigger=="hover"?"mouseleave":"blur",this.$element.on(i+"."+this.type,this.options.selector,e.proxy(this.enter,this)),this.$element.on(s+"."+this.type,this.options.selector,e.proxy(this.leave,this))),this.options.selector?this._options=e.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(t){return t=e.extend({},e.fn[this.type].defaults,t,this.$element.data()),t.delay&&typeof t.delay=="number"&&(t.delay={show:t.delay,hide:t.delay}),t},enter:function(t){var n=e(t.currentTarget)[this.type](this._options).data(this.type);if(!n.options.delay||!n.options.delay.show)return n.show();clearTimeout(this.timeout),n.hoverState="in",this.timeout=setTimeout(function(){n.hoverState=="in"&&n.show()},n.options.delay.show)},leave:function(t){var n=e(t.currentTarget)[this.type](this._options).data(this.type);this.timeout&&clearTimeout(this.timeout);if(!n.options.delay||!n.options.delay.hide)return n.hide();n.hoverState="out",this.timeout=setTimeout(function(){n.hoverState=="out"&&n.hide()},n.options.delay.hide)},show:function(){var e,t,n,r,i,s,o;if(this.hasContent()&&this.enabled){e=this.tip(),this.setContent(),this.options.animation&&e.addClass("fade"),s=typeof this.options.placement=="function"?this.options.placement.call(this,e[0],this.$element[0]):this.options.placement,t=/in/.test(s),e.detach().css({top:0,left:0,display:"block"}).insertAfter(this.$element),n=this.getPosition(t),r=e[0].offsetWidth,i=e[0].offsetHeight;switch(t?s.split(" ")[1]:s){case"bottom":o={top:n.top+n.height,left:n.left+n.width/2-r/2};break;case"top":o={top:n.top-i,left:n.left+n.width/2-r/2};break;case"left":o={top:n.top+n.height/2-i/2,left:n.left-r};break;case"right":o={top:n.top+n.height/2-i/2,left:n.left+n.width}}e.offset(o).addClass(s).addClass("in")}},setContent:function(){var e=this.tip(),t=this.getTitle();e.find(".tooltip-inner")[this.options.html?"html":"text"](t),e.removeClass("fade in top bottom left right")},hide:function(){function r(){var t=setTimeout(function(){n.off(e.support.transition.end).detach()},500);n.one(e.support.transition.end,function(){clearTimeout(t),n.detach()})}var t=this,n=this.tip();return n.removeClass("in"),e.support.transition&&this.$tip.hasClass("fade")?r():n.detach(),this},fixTitle:function(){var e=this.$element;(e.attr("title")||typeof e.attr("data-original-title")!="string")&&e.attr("data-original-title",e.attr("title")||"").removeAttr("title")},hasContent:function(){return this.getTitle()},getPosition:function(t){return e.extend({},t?{top:0,left:0}:this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var e,t=this.$element,n=this.options;return e=t.attr("data-original-title")||(typeof n.title=="function"?n.title.call(t[0]):n.title),e},tip:function(){return this.$tip=this.$tip||e(this.options.template)},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(t){var n=e(t.currentTarget)[this.type](this._options).data(this.type);n[n.tip().hasClass("in")?"hide":"show"]()},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}},e.fn.tooltip=function(n){return this.each(function(){var r=e(this),i=r.data("tooltip"),s=typeof n=="object"&&n;i||r.data("tooltip",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.tooltip.Constructor=t,e.fn.tooltip.defaults={animation:!0,placement:"top",selector:!1,template:'
',trigger:"hover",title:"",delay:0,html:!1}}(window.jQuery),!function(e){"use strict";var t=function(e,t){this.init("popover",e,t)};t.prototype=e.extend({},e.fn.tooltip.Constructor.prototype,{constructor:t,setContent:function(){var e=this.tip(),t=this.getTitle(),n=this.getContent();e.find(".popover-title")[this.options.html?"html":"text"](t),e.find(".popover-content > *")[this.options.html?"html":"text"](n),e.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var e,t=this.$element,n=this.options;return e=t.attr("data-content")||(typeof n.content=="function"?n.content.call(t[0]):n.content),e},tip:function(){return this.$tip||(this.$tip=e(this.options.template)),this.$tip},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}}),e.fn.popover=function(n){return this.each(function(){var r=e(this),i=r.data("popover"),s=typeof n=="object"&&n;i||r.data("popover",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.popover.Constructor=t,e.fn.popover.defaults=e.extend({},e.fn.tooltip.defaults,{placement:"right",trigger:"click",content:"",template:'

'})}(window.jQuery),!function(e){"use strict";function t(t,n){var r=e.proxy(this.process,this),i=e(t).is("body")?e(window):e(t),s;this.options=e.extend({},e.fn.scrollspy.defaults,n),this.$scrollElement=i.on("scroll.scroll-spy.data-api",r),this.selector=(this.options.target||(s=e(t).attr("href"))&&s.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.$body=e("body"),this.refresh(),this.process()}t.prototype={constructor:t,refresh:function(){var t=this,n;this.offsets=e([]),this.targets=e([]),n=this.$body.find(this.selector).map(function(){var t=e(this),n=t.data("target")||t.attr("href"),r=/^#\w/.test(n)&&e(n);return r&&r.length&&[[r.position().top,n]]||null}).sort(function(e,t){return e[0]-t[0]}).each(function(){t.offsets.push(this[0]),t.targets.push(this[1])})},process:function(){var e=this.$scrollElement.scrollTop()+this.options.offset,t=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,n=t-this.$scrollElement.height(),r=this.offsets,i=this.targets,s=this.activeTarget,o;if(e>=n)return s!=(o=i.last()[0])&&this.activate(o);for(o=r.length;o--;)s!=i[o]&&e>=r[o]&&(!r[o+1]||e<=r[o+1])&&this.activate(i[o])},activate:function(t){var n,r;this.activeTarget=t,e(this.selector).parent(".active").removeClass("active"),r=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',n=e(r).parent("li").addClass("active"),n.parent(".dropdown-menu").length&&(n=n.closest("li.dropdown").addClass("active")),n.trigger("activate")}},e.fn.scrollspy=function(n){return this.each(function(){var r=e(this),i=r.data("scrollspy"),s=typeof n=="object"&&n;i||r.data("scrollspy",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.scrollspy.Constructor=t,e.fn.scrollspy.defaults={offset:10},e(window).on("load",function(){e('[data-spy="scroll"]').each(function(){var t=e(this);t.scrollspy(t.data())})})}(window.jQuery),!function(e){"use strict";var t=function(t){this.element=e(t)};t.prototype={constructor:t,show:function(){var t=this.element,n=t.closest("ul:not(.dropdown-menu)"),r=t.attr("data-target"),i,s,o;r||(r=t.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,""));if(t.parent("li").hasClass("active"))return;i=n.find(".active:last a")[0],o=e.Event("show",{relatedTarget:i}),t.trigger(o);if(o.isDefaultPrevented())return;s=e(r),this.activate(t.parent("li"),n),this.activate(s,s.parent(),function(){t.trigger({type:"shown",relatedTarget:i})})},activate:function(t,n,r){function o(){i.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),t.addClass("active"),s?(t[0].offsetWidth,t.addClass("in")):t.removeClass("fade"),t.parent(".dropdown-menu")&&t.closest("li.dropdown").addClass("active"),r&&r()}var i=n.find("> .active"),s=r&&e.support.transition&&i.hasClass("fade");s?i.one(e.support.transition.end,o):o(),i.removeClass("in")}},e.fn.tab=function(n){return this.each(function(){var r=e(this),i=r.data("tab");i||r.data("tab",i=new t(this)),typeof n=="string"&&i[n]()})},e.fn.tab.Constructor=t,e(document).on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(t){t.preventDefault(),e(this).tab("show")})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.typeahead.defaults,n),this.matcher=this.options.matcher||this.matcher,this.sorter=this.options.sorter||this.sorter,this.highlighter=this.options.highlighter||this.highlighter,this.updater=this.options.updater||this.updater,this.$menu=e(this.options.menu).appendTo("body"),this.source=this.options.source,this.shown=!1,this.listen()};t.prototype={constructor:t,select:function(){var e=this.$menu.find(".active").attr("data-value");return this.$element.val(this.updater(e)).change(),this.hide()},updater:function(e){return e},show:function(){var t=e.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});return this.$menu.css({top:t.top+t.height,left:t.left}),this.$menu.show(),this.shown=!0,this},hide:function(){return this.$menu.hide(),this.shown=!1,this},lookup:function(t){var n;return this.query=this.$element.val(),!this.query||this.query.length"+t+""})},render:function(t){var n=this;return t=e(t).map(function(t,r){return t=e(n.options.item).attr("data-value",r),t.find("a").html(n.highlighter(r)),t[0]}),t.first().addClass("active"),this.$menu.html(t),this},next:function(t){var n=this.$menu.find(".active").removeClass("active"),r=n.next();r.length||(r=e(this.$menu.find("li")[0])),r.addClass("active")},prev:function(e){var t=this.$menu.find(".active").removeClass("active"),n=t.prev();n.length||(n=this.$menu.find("li").last()),n.addClass("active")},listen:function(){this.$element.on("blur",e.proxy(this.blur,this)).on("keypress",e.proxy(this.keypress,this)).on("keyup",e.proxy(this.keyup,this)),this.eventSupported("keydown")&&this.$element.on("keydown",e.proxy(this.keydown,this)),this.$menu.on("click",e.proxy(this.click,this)).on("mouseenter","li",e.proxy(this.mouseenter,this))},eventSupported:function(e){var t=e in this.$element;return t||(this.$element.setAttribute(e,"return;"),t=typeof this.$element[e]=="function"),t},move:function(e){if(!this.shown)return;switch(e.keyCode){case 9:case 13:case 27:e.preventDefault();break;case 38:e.preventDefault(),this.prev();break;case 40:e.preventDefault(),this.next()}e.stopPropagation()},keydown:function(t){this.suppressKeyPressRepeat=!~e.inArray(t.keyCode,[40,38,9,13,27]),this.move(t)},keypress:function(e){if(this.suppressKeyPressRepeat)return;this.move(e)},keyup:function(e){switch(e.keyCode){case 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(!this.shown)return;this.select();break;case 27:if(!this.shown)return;this.hide();break;default:this.lookup()}e.stopPropagation(),e.preventDefault()},blur:function(e){var t=this;setTimeout(function(){t.hide()},150)},click:function(e){e.stopPropagation(),e.preventDefault(),this.select()},mouseenter:function(t){this.$menu.find(".active").removeClass("active"),e(t.currentTarget).addClass("active")}},e.fn.typeahead=function(n){return this.each(function(){var r=e(this),i=r.data("typeahead"),s=typeof n=="object"&&n;i||r.data("typeahead",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.typeahead.defaults={source:[],items:8,menu:'',item:'
  • ',minLength:1},e.fn.typeahead.Constructor=t,e(document).on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(t){var n=e(this);if(n.data("typeahead"))return;t.preventDefault(),n.typeahead(n.data())})}(window.jQuery),!function(e){"use strict";var t=function(t,n){this.options=e.extend({},e.fn.affix.defaults,n),this.$window=e(window).on("scroll.affix.data-api",e.proxy(this.checkPosition,this)).on("click.affix.data-api",e.proxy(function(){setTimeout(e.proxy(this.checkPosition,this),1)},this)),this.$element=e(t),this.checkPosition()};t.prototype.checkPosition=function(){if(!this.$element.is(":visible"))return;var t=e(document).height(),n=this.$window.scrollTop(),r=this.$element.offset(),i=this.options.offset,s=i.bottom,o=i.top,u="affix affix-top affix-bottom",a;typeof i!="object"&&(s=o=i),typeof o=="function"&&(o=i.top()),typeof s=="function"&&(s=i.bottom()),a=this.unpin!=null&&n+this.unpin<=r.top?!1:s!=null&&r.top+this.$element.height()>=t-s?"bottom":o!=null&&n<=o?"top":!1;if(this.affixed===a)return;this.affixed=a,this.unpin=a=="bottom"?r.top-n:null,this.$element.removeClass(u).addClass("affix"+(a?"-"+a:""))},e.fn.affix=function(n){return this.each(function(){var r=e(this),i=r.data("affix"),s=typeof n=="object"&&n;i||r.data("affix",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.affix.Constructor=t,e.fn.affix.defaults={offset:0},e(window).on("load",function(){e('[data-spy="affix"]').each(function(){var t=e(this),n=t.data();n.offset=n.offset||{},n.offsetBottom&&(n.offset.bottom=n.offsetBottom),n.offsetTop&&(n.offset.top=n.offsetTop),t.affix(n)})})}(window.jQuery); \ No newline at end of file diff --git a/compass/static/js/jquery-1.8.3.min.js b/compass/static/js/jquery-1.8.3.min.js deleted file mode 100644 index 83589daa..00000000 --- a/compass/static/js/jquery-1.8.3.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v1.8.3 jquery.com | jquery.org/license */ -(function(e,t){function _(e){var t=M[e]={};return v.each(e.split(y),function(e,n){t[n]=!0}),t}function H(e,n,r){if(r===t&&e.nodeType===1){var i="data-"+n.replace(P,"-$1").toLowerCase();r=e.getAttribute(i);if(typeof r=="string"){try{r=r==="true"?!0:r==="false"?!1:r==="null"?null:+r+""===r?+r:D.test(r)?v.parseJSON(r):r}catch(s){}v.data(e,n,r)}else r=t}return r}function B(e){var t;for(t in e){if(t==="data"&&v.isEmptyObject(e[t]))continue;if(t!=="toJSON")return!1}return!0}function et(){return!1}function tt(){return!0}function ut(e){return!e||!e.parentNode||e.parentNode.nodeType===11}function at(e,t){do e=e[t];while(e&&e.nodeType!==1);return e}function ft(e,t,n){t=t||0;if(v.isFunction(t))return v.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return v.grep(e,function(e,r){return e===t===n});if(typeof t=="string"){var r=v.grep(e,function(e){return e.nodeType===1});if(it.test(t))return v.filter(t,r,!n);t=v.filter(t,r)}return v.grep(e,function(e,r){return v.inArray(e,t)>=0===n})}function lt(e){var t=ct.split("|"),n=e.createDocumentFragment();if(n.createElement)while(t.length)n.createElement(t.pop());return n}function Lt(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function At(e,t){if(t.nodeType!==1||!v.hasData(e))return;var n,r,i,s=v._data(e),o=v._data(t,s),u=s.events;if(u){delete o.handle,o.events={};for(n in u)for(r=0,i=u[n].length;r").appendTo(i.body),n=t.css("display");t.remove();if(n==="none"||n===""){Pt=i.body.appendChild(Pt||v.extend(i.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!Ht||!Pt.createElement)Ht=(Pt.contentWindow||Pt.contentDocument).document,Ht.write(""),Ht.close();t=Ht.body.appendChild(Ht.createElement(e)),n=Dt(t,"display"),i.body.removeChild(Pt)}return Wt[e]=n,n}function fn(e,t,n,r){var i;if(v.isArray(t))v.each(t,function(t,i){n||sn.test(e)?r(e,i):fn(e+"["+(typeof i=="object"?t:"")+"]",i,n,r)});else if(!n&&v.type(t)==="object")for(i in t)fn(e+"["+i+"]",t[i],n,r);else r(e,t)}function Cn(e){return function(t,n){typeof t!="string"&&(n=t,t="*");var r,i,s,o=t.toLowerCase().split(y),u=0,a=o.length;if(v.isFunction(n))for(;u)[^>]*$|#([\w\-]*)$)/,E=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,S=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,T=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,N=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,C=/^-ms-/,k=/-([\da-z])/gi,L=function(e,t){return(t+"").toUpperCase()},A=function(){i.addEventListener?(i.removeEventListener("DOMContentLoaded",A,!1),v.ready()):i.readyState==="complete"&&(i.detachEvent("onreadystatechange",A),v.ready())},O={};v.fn=v.prototype={constructor:v,init:function(e,n,r){var s,o,u,a;if(!e)return this;if(e.nodeType)return this.context=this[0]=e,this.length=1,this;if(typeof e=="string"){e.charAt(0)==="<"&&e.charAt(e.length-1)===">"&&e.length>=3?s=[null,e,null]:s=w.exec(e);if(s&&(s[1]||!n)){if(s[1])return n=n instanceof v?n[0]:n,a=n&&n.nodeType?n.ownerDocument||n:i,e=v.parseHTML(s[1],a,!0),E.test(s[1])&&v.isPlainObject(n)&&this.attr.call(e,n,!0),v.merge(this,e);o=i.getElementById(s[2]);if(o&&o.parentNode){if(o.id!==s[2])return r.find(e);this.length=1,this[0]=o}return this.context=i,this.selector=e,this}return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e)}return v.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),v.makeArray(e,this))},selector:"",jquery:"1.8.3",length:0,size:function(){return this.length},toArray:function(){return l.call(this)},get:function(e){return e==null?this.toArray():e<0?this[this.length+e]:this[e]},pushStack:function(e,t,n){var r=v.merge(this.constructor(),e);return r.prevObject=this,r.context=this.context,t==="find"?r.selector=this.selector+(this.selector?" ":"")+n:t&&(r.selector=this.selector+"."+t+"("+n+")"),r},each:function(e,t){return v.each(this,e,t)},ready:function(e){return v.ready.promise().done(e),this},eq:function(e){return e=+e,e===-1?this.slice(e):this.slice(e,e+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(l.apply(this,arguments),"slice",l.call(arguments).join(","))},map:function(e){return this.pushStack(v.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:[].sort,splice:[].splice},v.fn.init.prototype=v.fn,v.extend=v.fn.extend=function(){var e,n,r,i,s,o,u=arguments[0]||{},a=1,f=arguments.length,l=!1;typeof u=="boolean"&&(l=u,u=arguments[1]||{},a=2),typeof u!="object"&&!v.isFunction(u)&&(u={}),f===a&&(u=this,--a);for(;a0)return;r.resolveWith(i,[v]),v.fn.trigger&&v(i).trigger("ready").off("ready")},isFunction:function(e){return v.type(e)==="function"},isArray:Array.isArray||function(e){return v.type(e)==="array"},isWindow:function(e){return e!=null&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return e==null?String(e):O[h.call(e)]||"object"},isPlainObject:function(e){if(!e||v.type(e)!=="object"||e.nodeType||v.isWindow(e))return!1;try{if(e.constructor&&!p.call(e,"constructor")&&!p.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||p.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw new Error(e)},parseHTML:function(e,t,n){var r;return!e||typeof e!="string"?null:(typeof t=="boolean"&&(n=t,t=0),t=t||i,(r=E.exec(e))?[t.createElement(r[1])]:(r=v.buildFragment([e],t,n?null:[]),v.merge([],(r.cacheable?v.clone(r.fragment):r.fragment).childNodes)))},parseJSON:function(t){if(!t||typeof t!="string")return null;t=v.trim(t);if(e.JSON&&e.JSON.parse)return e.JSON.parse(t);if(S.test(t.replace(T,"@").replace(N,"]").replace(x,"")))return(new Function("return "+t))();v.error("Invalid JSON: "+t)},parseXML:function(n){var r,i;if(!n||typeof n!="string")return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(s){r=t}return(!r||!r.documentElement||r.getElementsByTagName("parsererror").length)&&v.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&g.test(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(C,"ms-").replace(k,L)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,n,r){var i,s=0,o=e.length,u=o===t||v.isFunction(e);if(r){if(u){for(i in e)if(n.apply(e[i],r)===!1)break}else for(;s0&&e[0]&&e[a-1]||a===0||v.isArray(e));if(f)for(;u-1)a.splice(n,1),i&&(n<=o&&o--,n<=u&&u--)}),this},has:function(e){return v.inArray(e,a)>-1},empty:function(){return a=[],this},disable:function(){return a=f=n=t,this},disabled:function(){return!a},lock:function(){return f=t,n||c.disable(),this},locked:function(){return!f},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],a&&(!r||f)&&(i?f.push(t):l(t)),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!r}};return c},v.extend({Deferred:function(e){var t=[["resolve","done",v.Callbacks("once memory"),"resolved"],["reject","fail",v.Callbacks("once memory"),"rejected"],["notify","progress",v.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return v.Deferred(function(n){v.each(t,function(t,r){var s=r[0],o=e[t];i[r[1]](v.isFunction(o)?function(){var e=o.apply(this,arguments);e&&v.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[s+"With"](this===i?n:this,[e])}:n[s])}),e=null}).promise()},promise:function(e){return e!=null?v.extend(e,r):r}},i={};return r.pipe=r.then,v.each(t,function(e,s){var o=s[2],u=s[3];r[s[1]]=o.add,u&&o.add(function(){n=u},t[e^1][2].disable,t[2][2].lock),i[s[0]]=o.fire,i[s[0]+"With"]=o.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t=0,n=l.call(arguments),r=n.length,i=r!==1||e&&v.isFunction(e.promise)?r:0,s=i===1?e:v.Deferred(),o=function(e,t,n){return function(r){t[e]=this,n[e]=arguments.length>1?l.call(arguments):r,n===u?s.notifyWith(t,n):--i||s.resolveWith(t,n)}},u,a,f;if(r>1){u=new Array(r),a=new Array(r),f=new Array(r);for(;t
    a",n=p.getElementsByTagName("*"),r=p.getElementsByTagName("a")[0];if(!n||!r||!n.length)return{};s=i.createElement("select"),o=s.appendChild(i.createElement("option")),u=p.getElementsByTagName("input")[0],r.style.cssText="top:1px;float:left;opacity:.5",t={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(r.getAttribute("style")),hrefNormalized:r.getAttribute("href")==="/a",opacity:/^0.5/.test(r.style.opacity),cssFloat:!!r.style.cssFloat,checkOn:u.value==="on",optSelected:o.selected,getSetAttribute:p.className!=="t",enctype:!!i.createElement("form").enctype,html5Clone:i.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",boxModel:i.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},u.checked=!0,t.noCloneChecked=u.cloneNode(!0).checked,s.disabled=!0,t.optDisabled=!o.disabled;try{delete p.test}catch(d){t.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",h=function(){t.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick"),p.detachEvent("onclick",h)),u=i.createElement("input"),u.value="t",u.setAttribute("type","radio"),t.radioValue=u.value==="t",u.setAttribute("checked","checked"),u.setAttribute("name","t"),p.appendChild(u),a=i.createDocumentFragment(),a.appendChild(p.lastChild),t.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,t.appendChecked=u.checked,a.removeChild(u),a.appendChild(p);if(p.attachEvent)for(l in{submit:!0,change:!0,focusin:!0})f="on"+l,c=f in p,c||(p.setAttribute(f,"return;"),c=typeof p[f]=="function"),t[l+"Bubbles"]=c;return v(function(){var n,r,s,o,u="padding:0;margin:0;border:0;display:block;overflow:hidden;",a=i.getElementsByTagName("body")[0];if(!a)return;n=i.createElement("div"),n.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",a.insertBefore(n,a.firstChild),r=i.createElement("div"),n.appendChild(r),r.innerHTML="
    t
    ",s=r.getElementsByTagName("td"),s[0].style.cssText="padding:0;margin:0;border:0;display:none",c=s[0].offsetHeight===0,s[0].style.display="",s[1].style.display="none",t.reliableHiddenOffsets=c&&s[0].offsetHeight===0,r.innerHTML="",r.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",t.boxSizing=r.offsetWidth===4,t.doesNotIncludeMarginInBodyOffset=a.offsetTop!==1,e.getComputedStyle&&(t.pixelPosition=(e.getComputedStyle(r,null)||{}).top!=="1%",t.boxSizingReliable=(e.getComputedStyle(r,null)||{width:"4px"}).width==="4px",o=i.createElement("div"),o.style.cssText=r.style.cssText=u,o.style.marginRight=o.style.width="0",r.style.width="1px",r.appendChild(o),t.reliableMarginRight=!parseFloat((e.getComputedStyle(o,null)||{}).marginRight)),typeof r.style.zoom!="undefined"&&(r.innerHTML="",r.style.cssText=u+"width:1px;padding:1px;display:inline;zoom:1",t.inlineBlockNeedsLayout=r.offsetWidth===3,r.style.display="block",r.style.overflow="visible",r.innerHTML="
    ",r.firstChild.style.width="5px",t.shrinkWrapBlocks=r.offsetWidth!==3,n.style.zoom=1),a.removeChild(n),n=r=s=o=null}),a.removeChild(p),n=r=s=o=u=a=p=null,t}();var D=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;v.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(v.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?v.cache[e[v.expando]]:e[v.expando],!!e&&!B(e)},data:function(e,n,r,i){if(!v.acceptData(e))return;var s,o,u=v.expando,a=typeof n=="string",f=e.nodeType,l=f?v.cache:e,c=f?e[u]:e[u]&&u;if((!c||!l[c]||!i&&!l[c].data)&&a&&r===t)return;c||(f?e[u]=c=v.deletedIds.pop()||v.guid++:c=u),l[c]||(l[c]={},f||(l[c].toJSON=v.noop));if(typeof n=="object"||typeof n=="function")i?l[c]=v.extend(l[c],n):l[c].data=v.extend(l[c].data,n);return s=l[c],i||(s.data||(s.data={}),s=s.data),r!==t&&(s[v.camelCase(n)]=r),a?(o=s[n],o==null&&(o=s[v.camelCase(n)])):o=s,o},removeData:function(e,t,n){if(!v.acceptData(e))return;var r,i,s,o=e.nodeType,u=o?v.cache:e,a=o?e[v.expando]:v.expando;if(!u[a])return;if(t){r=n?u[a]:u[a].data;if(r){v.isArray(t)||(t in r?t=[t]:(t=v.camelCase(t),t in r?t=[t]:t=t.split(" ")));for(i=0,s=t.length;i1,null,!1))},removeData:function(e){return this.each(function(){v.removeData(this,e)})}}),v.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=v._data(e,t),n&&(!r||v.isArray(n)?r=v._data(e,t,v.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=v.queue(e,t),r=n.length,i=n.shift(),s=v._queueHooks(e,t),o=function(){v.dequeue(e,t)};i==="inprogress"&&(i=n.shift(),r--),i&&(t==="fx"&&n.unshift("inprogress"),delete s.stop,i.call(e,o,s)),!r&&s&&s.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return v._data(e,n)||v._data(e,n,{empty:v.Callbacks("once memory").add(function(){v.removeData(e,t+"queue",!0),v.removeData(e,n,!0)})})}}),v.fn.extend({queue:function(e,n){var r=2;return typeof e!="string"&&(n=e,e="fx",r--),arguments.length1)},removeAttr:function(e){return this.each(function(){v.removeAttr(this,e)})},prop:function(e,t){return v.access(this,v.prop,e,t,arguments.length>1)},removeProp:function(e){return e=v.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,s,o,u;if(v.isFunction(e))return this.each(function(t){v(this).addClass(e.call(this,t,this.className))});if(e&&typeof e=="string"){t=e.split(y);for(n=0,r=this.length;n=0)r=r.replace(" "+n[s]+" "," ");i.className=e?v.trim(r):""}}}return this},toggleClass:function(e,t){var n=typeof e,r=typeof t=="boolean";return v.isFunction(e)?this.each(function(n){v(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if(n==="string"){var i,s=0,o=v(this),u=t,a=e.split(y);while(i=a[s++])u=r?u:!o.hasClass(i),o[u?"addClass":"removeClass"](i)}else if(n==="undefined"||n==="boolean")this.className&&v._data(this,"__className__",this.className),this.className=this.className||e===!1?"":v._data(this,"__className__")||""})},hasClass:function(e){var t=" "+e+" ",n=0,r=this.length;for(;n=0)return!0;return!1},val:function(e){var n,r,i,s=this[0];if(!arguments.length){if(s)return n=v.valHooks[s.type]||v.valHooks[s.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(s,"value"))!==t?r:(r=s.value,typeof r=="string"?r.replace(R,""):r==null?"":r);return}return i=v.isFunction(e),this.each(function(r){var s,o=v(this);if(this.nodeType!==1)return;i?s=e.call(this,r,o.val()):s=e,s==null?s="":typeof s=="number"?s+="":v.isArray(s)&&(s=v.map(s,function(e){return e==null?"":e+""})),n=v.valHooks[this.type]||v.valHooks[this.nodeName.toLowerCase()];if(!n||!("set"in n)||n.set(this,s,"value")===t)this.value=s})}}),v.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){var t,n,r=e.options,i=e.selectedIndex,s=e.type==="select-one"||i<0,o=s?null:[],u=s?i+1:r.length,a=i<0?u:s?i:0;for(;a=0}),n.length||(e.selectedIndex=-1),n}}},attrFn:{},attr:function(e,n,r,i){var s,o,u,a=e.nodeType;if(!e||a===3||a===8||a===2)return;if(i&&v.isFunction(v.fn[n]))return v(e)[n](r);if(typeof e.getAttribute=="undefined")return v.prop(e,n,r);u=a!==1||!v.isXMLDoc(e),u&&(n=n.toLowerCase(),o=v.attrHooks[n]||(X.test(n)?F:j));if(r!==t){if(r===null){v.removeAttr(e,n);return}return o&&"set"in o&&u&&(s=o.set(e,r,n))!==t?s:(e.setAttribute(n,r+""),r)}return o&&"get"in o&&u&&(s=o.get(e,n))!==null?s:(s=e.getAttribute(n),s===null?t:s)},removeAttr:function(e,t){var n,r,i,s,o=0;if(t&&e.nodeType===1){r=t.split(y);for(;o=0}})});var $=/^(?:textarea|input|select)$/i,J=/^([^\.]*|)(?:\.(.+)|)$/,K=/(?:^|\s)hover(\.\S+|)\b/,Q=/^key/,G=/^(?:mouse|contextmenu)|click/,Y=/^(?:focusinfocus|focusoutblur)$/,Z=function(e){return v.event.special.hover?e:e.replace(K,"mouseenter$1 mouseleave$1")};v.event={add:function(e,n,r,i,s){var o,u,a,f,l,c,h,p,d,m,g;if(e.nodeType===3||e.nodeType===8||!n||!r||!(o=v._data(e)))return;r.handler&&(d=r,r=d.handler,s=d.selector),r.guid||(r.guid=v.guid++),a=o.events,a||(o.events=a={}),u=o.handle,u||(o.handle=u=function(e){return typeof v=="undefined"||!!e&&v.event.triggered===e.type?t:v.event.dispatch.apply(u.elem,arguments)},u.elem=e),n=v.trim(Z(n)).split(" ");for(f=0;f=0&&(y=y.slice(0,-1),a=!0),y.indexOf(".")>=0&&(b=y.split("."),y=b.shift(),b.sort());if((!s||v.event.customEvent[y])&&!v.event.global[y])return;n=typeof n=="object"?n[v.expando]?n:new v.Event(y,n):new v.Event(y),n.type=y,n.isTrigger=!0,n.exclusive=a,n.namespace=b.join("."),n.namespace_re=n.namespace?new RegExp("(^|\\.)"+b.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h=y.indexOf(":")<0?"on"+y:"";if(!s){u=v.cache;for(f in u)u[f].events&&u[f].events[y]&&v.event.trigger(n,r,u[f].handle.elem,!0);return}n.result=t,n.target||(n.target=s),r=r!=null?v.makeArray(r):[],r.unshift(n),p=v.event.special[y]||{};if(p.trigger&&p.trigger.apply(s,r)===!1)return;m=[[s,p.bindType||y]];if(!o&&!p.noBubble&&!v.isWindow(s)){g=p.delegateType||y,l=Y.test(g+y)?s:s.parentNode;for(c=s;l;l=l.parentNode)m.push([l,g]),c=l;c===(s.ownerDocument||i)&&m.push([c.defaultView||c.parentWindow||e,g])}for(f=0;f=0:v.find(h,this,null,[s]).length),u[h]&&f.push(c);f.length&&w.push({elem:s,matches:f})}d.length>m&&w.push({elem:this,matches:d.slice(m)});for(r=0;r0?this.on(t,null,e,n):this.trigger(t)},Q.test(t)&&(v.event.fixHooks[t]=v.event.keyHooks),G.test(t)&&(v.event.fixHooks[t]=v.event.mouseHooks)}),function(e,t){function nt(e,t,n,r){n=n||[],t=t||g;var i,s,a,f,l=t.nodeType;if(!e||typeof e!="string")return n;if(l!==1&&l!==9)return[];a=o(t);if(!a&&!r)if(i=R.exec(e))if(f=i[1]){if(l===9){s=t.getElementById(f);if(!s||!s.parentNode)return n;if(s.id===f)return n.push(s),n}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(f))&&u(t,s)&&s.id===f)return n.push(s),n}else{if(i[2])return S.apply(n,x.call(t.getElementsByTagName(e),0)),n;if((f=i[3])&&Z&&t.getElementsByClassName)return S.apply(n,x.call(t.getElementsByClassName(f),0)),n}return vt(e.replace(j,"$1"),t,n,r,a)}function rt(e){return function(t){var n=t.nodeName.toLowerCase();return n==="input"&&t.type===e}}function it(e){return function(t){var n=t.nodeName.toLowerCase();return(n==="input"||n==="button")&&t.type===e}}function st(e){return N(function(t){return t=+t,N(function(n,r){var i,s=e([],n.length,t),o=s.length;while(o--)n[i=s[o]]&&(n[i]=!(r[i]=n[i]))})})}function ot(e,t,n){if(e===t)return n;var r=e.nextSibling;while(r){if(r===t)return-1;r=r.nextSibling}return 1}function ut(e,t){var n,r,s,o,u,a,f,l=L[d][e+" "];if(l)return t?0:l.slice(0);u=e,a=[],f=i.preFilter;while(u){if(!n||(r=F.exec(u)))r&&(u=u.slice(r[0].length)||u),a.push(s=[]);n=!1;if(r=I.exec(u))s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=r[0].replace(j," ");for(o in i.filter)(r=J[o].exec(u))&&(!f[o]||(r=f[o](r)))&&(s.push(n=new m(r.shift())),u=u.slice(n.length),n.type=o,n.matches=r);if(!n)break}return t?u.length:u?nt.error(e):L(e,a).slice(0)}function at(e,t,r){var i=t.dir,s=r&&t.dir==="parentNode",o=w++;return t.first?function(t,n,r){while(t=t[i])if(s||t.nodeType===1)return e(t,n,r)}:function(t,r,u){if(!u){var a,f=b+" "+o+" ",l=f+n;while(t=t[i])if(s||t.nodeType===1){if((a=t[d])===l)return t.sizset;if(typeof a=="string"&&a.indexOf(f)===0){if(t.sizset)return t}else{t[d]=l;if(e(t,r,u))return t.sizset=!0,t;t.sizset=!1}}}else while(t=t[i])if(s||t.nodeType===1)if(e(t,r,u))return t}}function ft(e){return e.length>1?function(t,n,r){var i=e.length;while(i--)if(!e[i](t,n,r))return!1;return!0}:e[0]}function lt(e,t,n,r,i){var s,o=[],u=0,a=e.length,f=t!=null;for(;u-1&&(s[f]=!(o[f]=c))}}else g=lt(g===o?g.splice(d,g.length):g),i?i(null,o,g,a):S.apply(o,g)})}function ht(e){var t,n,r,s=e.length,o=i.relative[e[0].type],u=o||i.relative[" "],a=o?1:0,f=at(function(e){return e===t},u,!0),l=at(function(e){return T.call(t,e)>-1},u,!0),h=[function(e,n,r){return!o&&(r||n!==c)||((t=n).nodeType?f(e,n,r):l(e,n,r))}];for(;a1&&ft(h),a>1&&e.slice(0,a-1).join("").replace(j,"$1"),n,a0,s=e.length>0,o=function(u,a,f,l,h){var p,d,v,m=[],y=0,w="0",x=u&&[],T=h!=null,N=c,C=u||s&&i.find.TAG("*",h&&a.parentNode||a),k=b+=N==null?1:Math.E;T&&(c=a!==g&&a,n=o.el);for(;(p=C[w])!=null;w++){if(s&&p){for(d=0;v=e[d];d++)if(v(p,a,f)){l.push(p);break}T&&(b=k,n=++o.el)}r&&((p=!v&&p)&&y--,u&&x.push(p))}y+=w;if(r&&w!==y){for(d=0;v=t[d];d++)v(x,m,a,f);if(u){if(y>0)while(w--)!x[w]&&!m[w]&&(m[w]=E.call(l));m=lt(m)}S.apply(l,m),T&&!u&&m.length>0&&y+t.length>1&&nt.uniqueSort(l)}return T&&(b=k,c=N),x};return o.el=0,r?N(o):o}function dt(e,t,n){var r=0,i=t.length;for(;r2&&(f=u[0]).type==="ID"&&t.nodeType===9&&!s&&i.relative[u[1].type]){t=i.find.ID(f.matches[0].replace($,""),t,s)[0];if(!t)return n;e=e.slice(u.shift().length)}for(o=J.POS.test(e)?-1:u.length-1;o>=0;o--){f=u[o];if(i.relative[l=f.type])break;if(c=i.find[l])if(r=c(f.matches[0].replace($,""),z.test(u[0].type)&&t.parentNode||t,s)){u.splice(o,1),e=r.length&&u.join("");if(!e)return S.apply(n,x.call(r,0)),n;break}}}return a(e,h)(r,t,s,n,z.test(e)),n}function mt(){}var n,r,i,s,o,u,a,f,l,c,h=!0,p="undefined",d=("sizcache"+Math.random()).replace(".",""),m=String,g=e.document,y=g.documentElement,b=0,w=0,E=[].pop,S=[].push,x=[].slice,T=[].indexOf||function(e){var t=0,n=this.length;for(;ti.cacheLength&&delete e[t.shift()],e[n+" "]=r},e)},k=C(),L=C(),A=C(),O="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",_=M.replace("w","w#"),D="([*^$|!~]?=)",P="\\["+O+"*("+M+")"+O+"*(?:"+D+O+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+_+")|)|)"+O+"*\\]",H=":("+M+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+P+")|[^:]|\\\\.)*|.*))\\)|)",B=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+O+"*((?:-\\d)?\\d*)"+O+"*\\)|)(?=[^-]|$)",j=new RegExp("^"+O+"+|((?:^|[^\\\\])(?:\\\\.)*)"+O+"+$","g"),F=new RegExp("^"+O+"*,"+O+"*"),I=new RegExp("^"+O+"*([\\x20\\t\\r\\n\\f>+~])"+O+"*"),q=new RegExp(H),R=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,U=/^:not/,z=/[\x20\t\r\n\f]*[+~]/,W=/:not\($/,X=/h\d/i,V=/input|select|textarea|button/i,$=/\\(?!\\)/g,J={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),NAME:new RegExp("^\\[name=['\"]?("+M+")['\"]?\\]"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+H),POS:new RegExp(B,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+O+"*(even|odd|(([+-]|)(\\d*)n|)"+O+"*(?:([+-]|)"+O+"*(\\d+)|))"+O+"*\\)|)","i"),needsContext:new RegExp("^"+O+"*[>+~]|"+B,"i")},K=function(e){var t=g.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}},Q=K(function(e){return e.appendChild(g.createComment("")),!e.getElementsByTagName("*").length}),G=K(function(e){return e.innerHTML="",e.firstChild&&typeof e.firstChild.getAttribute!==p&&e.firstChild.getAttribute("href")==="#"}),Y=K(function(e){e.innerHTML="";var t=typeof e.lastChild.getAttribute("multiple");return t!=="boolean"&&t!=="string"}),Z=K(function(e){return e.innerHTML="",!e.getElementsByClassName||!e.getElementsByClassName("e").length?!1:(e.lastChild.className="e",e.getElementsByClassName("e").length===2)}),et=K(function(e){e.id=d+0,e.innerHTML="
    ",y.insertBefore(e,y.firstChild);var t=g.getElementsByName&&g.getElementsByName(d).length===2+g.getElementsByName(d+0).length;return r=!g.getElementById(d),y.removeChild(e),t});try{x.call(y.childNodes,0)[0].nodeType}catch(tt){x=function(e){var t,n=[];for(;t=this[e];e++)n.push(t);return n}}nt.matches=function(e,t){return nt(e,null,null,t)},nt.matchesSelector=function(e,t){return nt(t,null,null,[e]).length>0},s=nt.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(i===1||i===9||i===11){if(typeof e.textContent=="string")return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=s(e)}else if(i===3||i===4)return e.nodeValue}else for(;t=e[r];r++)n+=s(t);return n},o=nt.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?t.nodeName!=="HTML":!1},u=nt.contains=y.contains?function(e,t){var n=e.nodeType===9?e.documentElement:e,r=t&&t.parentNode;return e===r||!!(r&&r.nodeType===1&&n.contains&&n.contains(r))}:y.compareDocumentPosition?function(e,t){return t&&!!(e.compareDocumentPosition(t)&16)}:function(e,t){while(t=t.parentNode)if(t===e)return!0;return!1},nt.attr=function(e,t){var n,r=o(e);return r||(t=t.toLowerCase()),(n=i.attrHandle[t])?n(e):r||Y?e.getAttribute(t):(n=e.getAttributeNode(t),n?typeof e[t]=="boolean"?e[t]?t:null:n.specified?n.value:null:null)},i=nt.selectors={cacheLength:50,createPseudo:N,match:J,attrHandle:G?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},find:{ID:r?function(e,t,n){if(typeof t.getElementById!==p&&!n){var r=t.getElementById(e);return r&&r.parentNode?[r]:[]}}:function(e,n,r){if(typeof n.getElementById!==p&&!r){var i=n.getElementById(e);return i?i.id===e||typeof i.getAttributeNode!==p&&i.getAttributeNode("id").value===e?[i]:t:[]}},TAG:Q?function(e,t){if(typeof t.getElementsByTagName!==p)return t.getElementsByTagName(e)}:function(e,t){var n=t.getElementsByTagName(e);if(e==="*"){var r,i=[],s=0;for(;r=n[s];s++)r.nodeType===1&&i.push(r);return i}return n},NAME:et&&function(e,t){if(typeof t.getElementsByName!==p)return t.getElementsByName(name)},CLASS:Z&&function(e,t,n){if(typeof t.getElementsByClassName!==p&&!n)return t.getElementsByClassName(e)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace($,""),e[3]=(e[4]||e[5]||"").replace($,""),e[2]==="~="&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),e[1]==="nth"?(e[2]||nt.error(e[0]),e[3]=+(e[3]?e[4]+(e[5]||1):2*(e[2]==="even"||e[2]==="odd")),e[4]=+(e[6]+e[7]||e[2]==="odd")):e[2]&&nt.error(e[0]),e},PSEUDO:function(e){var t,n;if(J.CHILD.test(e[0]))return null;if(e[3])e[2]=e[3];else if(t=e[4])q.test(t)&&(n=ut(t,!0))&&(n=t.indexOf(")",t.length-n)-t.length)&&(t=t.slice(0,n),e[0]=e[0].slice(0,n)),e[2]=t;return e.slice(0,3)}},filter:{ID:r?function(e){return e=e.replace($,""),function(t){return t.getAttribute("id")===e}}:function(e){return e=e.replace($,""),function(t){var n=typeof t.getAttributeNode!==p&&t.getAttributeNode("id");return n&&n.value===e}},TAG:function(e){return e==="*"?function(){return!0}:(e=e.replace($,"").toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=k[d][e+" "];return t||(t=new RegExp("(^|"+O+")"+e+"("+O+"|$)"))&&k(e,function(e){return t.test(e.className||typeof e.getAttribute!==p&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r,i){var s=nt.attr(r,e);return s==null?t==="!=":t?(s+="",t==="="?s===n:t==="!="?s!==n:t==="^="?n&&s.indexOf(n)===0:t==="*="?n&&s.indexOf(n)>-1:t==="$="?n&&s.substr(s.length-n.length)===n:t==="~="?(" "+s+" ").indexOf(n)>-1:t==="|="?s===n||s.substr(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r){return e==="nth"?function(e){var t,i,s=e.parentNode;if(n===1&&r===0)return!0;if(s){i=0;for(t=s.firstChild;t;t=t.nextSibling)if(t.nodeType===1){i++;if(e===t)break}}return i-=r,i===n||i%n===0&&i/n>=0}:function(t){var n=t;switch(e){case"only":case"first":while(n=n.previousSibling)if(n.nodeType===1)return!1;if(e==="first")return!0;n=t;case"last":while(n=n.nextSibling)if(n.nodeType===1)return!1;return!0}}},PSEUDO:function(e,t){var n,r=i.pseudos[e]||i.setFilters[e.toLowerCase()]||nt.error("unsupported pseudo: "+e);return r[d]?r(t):r.length>1?(n=[e,e,"",t],i.setFilters.hasOwnProperty(e.toLowerCase())?N(function(e,n){var i,s=r(e,t),o=s.length;while(o--)i=T.call(e,s[o]),e[i]=!(n[i]=s[o])}):function(e){return r(e,0,n)}):r}},pseudos:{not:N(function(e){var t=[],n=[],r=a(e.replace(j,"$1"));return r[d]?N(function(e,t,n,i){var s,o=r(e,null,i,[]),u=e.length;while(u--)if(s=o[u])e[u]=!(t[u]=s)}):function(e,i,s){return t[0]=e,r(t,null,s,n),!n.pop()}}),has:N(function(e){return function(t){return nt(e,t).length>0}}),contains:N(function(e){return function(t){return(t.textContent||t.innerText||s(t)).indexOf(e)>-1}}),enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&!!e.checked||t==="option"&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},parent:function(e){return!i.pseudos.empty(e)},empty:function(e){var t;e=e.firstChild;while(e){if(e.nodeName>"@"||(t=e.nodeType)===3||t===4)return!1;e=e.nextSibling}return!0},header:function(e){return X.test(e.nodeName)},text:function(e){var t,n;return e.nodeName.toLowerCase()==="input"&&(t=e.type)==="text"&&((n=e.getAttribute("type"))==null||n.toLowerCase()===t)},radio:rt("radio"),checkbox:rt("checkbox"),file:rt("file"),password:rt("password"),image:rt("image"),submit:it("submit"),reset:it("reset"),button:function(e){var t=e.nodeName.toLowerCase();return t==="input"&&e.type==="button"||t==="button"},input:function(e){return V.test(e.nodeName)},focus:function(e){var t=e.ownerDocument;return e===t.activeElement&&(!t.hasFocus||t.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},active:function(e){return e===e.ownerDocument.activeElement},first:st(function(){return[0]}),last:st(function(e,t){return[t-1]}),eq:st(function(e,t,n){return[n<0?n+t:n]}),even:st(function(e,t){for(var n=0;n=0;)e.push(r);return e}),gt:st(function(e,t,n){for(var r=n<0?n+t:n;++r",e.querySelectorAll("[selected]").length||i.push("\\["+O+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||i.push(":checked")}),K(function(e){e.innerHTML="

    ",e.querySelectorAll("[test^='']").length&&i.push("[*^$]="+O+"*(?:\"\"|'')"),e.innerHTML="",e.querySelectorAll(":enabled").length||i.push(":enabled",":disabled")}),i=new RegExp(i.join("|")),vt=function(e,r,s,o,u){if(!o&&!u&&!i.test(e)){var a,f,l=!0,c=d,h=r,p=r.nodeType===9&&e;if(r.nodeType===1&&r.nodeName.toLowerCase()!=="object"){a=ut(e),(l=r.getAttribute("id"))?c=l.replace(n,"\\$&"):r.setAttribute("id",c),c="[id='"+c+"'] ",f=a.length;while(f--)a[f]=c+a[f].join("");h=z.test(e)&&r.parentNode||r,p=a.join(",")}if(p)try{return S.apply(s,x.call(h.querySelectorAll(p),0)),s}catch(v){}finally{l||r.removeAttribute("id")}}return t(e,r,s,o,u)},u&&(K(function(t){e=u.call(t,"div");try{u.call(t,"[test!='']:sizzle"),s.push("!=",H)}catch(n){}}),s=new RegExp(s.join("|")),nt.matchesSelector=function(t,n){n=n.replace(r,"='$1']");if(!o(t)&&!s.test(n)&&!i.test(n))try{var a=u.call(t,n);if(a||e||t.document&&t.document.nodeType!==11)return a}catch(f){}return nt(n,null,null,[t]).length>0})}(),i.pseudos.nth=i.pseudos.eq,i.filters=mt.prototype=i.pseudos,i.setFilters=new mt,nt.attr=v.attr,v.find=nt,v.expr=nt.selectors,v.expr[":"]=v.expr.pseudos,v.unique=nt.uniqueSort,v.text=nt.getText,v.isXMLDoc=nt.isXML,v.contains=nt.contains}(e);var nt=/Until$/,rt=/^(?:parents|prev(?:Until|All))/,it=/^.[^:#\[\.,]*$/,st=v.expr.match.needsContext,ot={children:!0,contents:!0,next:!0,prev:!0};v.fn.extend({find:function(e){var t,n,r,i,s,o,u=this;if(typeof e!="string")return v(e).filter(function(){for(t=0,n=u.length;t0)for(i=r;i=0:v.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){var n,r=0,i=this.length,s=[],o=st.test(e)||typeof e!="string"?v(e,t||this.context):0;for(;r-1:v.find.matchesSelector(n,e)){s.push(n);break}n=n.parentNode}}return s=s.length>1?v.unique(s):s,this.pushStack(s,"closest",e)},index:function(e){return e?typeof e=="string"?v.inArray(this[0],v(e)):v.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(e,t){var n=typeof e=="string"?v(e,t):v.makeArray(e&&e.nodeType?[e]:e),r=v.merge(this.get(),n);return this.pushStack(ut(n[0])||ut(r[0])?r:v.unique(r))},addBack:function(e){return this.add(e==null?this.prevObject:this.prevObject.filter(e))}}),v.fn.andSelf=v.fn.addBack,v.each({parent:function(e){var t=e.parentNode;return t&&t.nodeType!==11?t:null},parents:function(e){return v.dir(e,"parentNode")},parentsUntil:function(e,t,n){return v.dir(e,"parentNode",n)},next:function(e){return at(e,"nextSibling")},prev:function(e){return at(e,"previousSibling")},nextAll:function(e){return v.dir(e,"nextSibling")},prevAll:function(e){return v.dir(e,"previousSibling")},nextUntil:function(e,t,n){return v.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return v.dir(e,"previousSibling",n)},siblings:function(e){return v.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return v.sibling(e.firstChild)},contents:function(e){return v.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:v.merge([],e.childNodes)}},function(e,t){v.fn[e]=function(n,r){var i=v.map(this,t,n);return nt.test(e)||(r=n),r&&typeof r=="string"&&(i=v.filter(r,i)),i=this.length>1&&!ot[e]?v.unique(i):i,this.length>1&&rt.test(e)&&(i=i.reverse()),this.pushStack(i,e,l.call(arguments).join(","))}}),v.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),t.length===1?v.find.matchesSelector(t[0],e)?[t[0]]:[]:v.find.matches(e,t)},dir:function(e,n,r){var i=[],s=e[n];while(s&&s.nodeType!==9&&(r===t||s.nodeType!==1||!v(s).is(r)))s.nodeType===1&&i.push(s),s=s[n];return i},sibling:function(e,t){var n=[];for(;e;e=e.nextSibling)e.nodeType===1&&e!==t&&n.push(e);return n}});var ct="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ht=/ jQuery\d+="(?:null|\d+)"/g,pt=/^\s+/,dt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,vt=/<([\w:]+)/,mt=/]","i"),Et=/^(?:checkbox|radio)$/,St=/checked\s*(?:[^=]|=\s*.checked.)/i,xt=/\/(java|ecma)script/i,Tt=/^\s*\s*$/g,Nt={option:[1,""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},Ct=lt(i),kt=Ct.appendChild(i.createElement("div"));Nt.optgroup=Nt.option,Nt.tbody=Nt.tfoot=Nt.colgroup=Nt.caption=Nt.thead,Nt.th=Nt.td,v.support.htmlSerialize||(Nt._default=[1,"X
    ","
    "]),v.fn.extend({text:function(e){return v.access(this,function(e){return e===t?v.text(this):this.empty().append((this[0]&&this[0].ownerDocument||i).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(v.isFunction(e))return this.each(function(t){v(this).wrapAll(e.call(this,t))});if(this[0]){var t=v(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&e.firstChild.nodeType===1)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return v.isFunction(e)?this.each(function(t){v(this).wrapInner(e.call(this,t))}):this.each(function(){var t=v(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=v.isFunction(e);return this.each(function(n){v(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){v.nodeName(this,"body")||v(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(e,this.firstChild)})},before:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(e,this),"before",this.selector)}},after:function(){if(!ut(this[0]))return this.domManip(arguments,!1,function(e){this.parentNode.insertBefore(e,this.nextSibling)});if(arguments.length){var e=v.clean(arguments);return this.pushStack(v.merge(this,e),"after",this.selector)}},remove:function(e,t){var n,r=0;for(;(n=this[r])!=null;r++)if(!e||v.filter(e,[n]).length)!t&&n.nodeType===1&&(v.cleanData(n.getElementsByTagName("*")),v.cleanData([n])),n.parentNode&&n.parentNode.removeChild(n);return this},empty:function(){var e,t=0;for(;(e=this[t])!=null;t++){e.nodeType===1&&v.cleanData(e.getElementsByTagName("*"));while(e.firstChild)e.removeChild(e.firstChild)}return this},clone:function(e,t){return e=e==null?!1:e,t=t==null?e:t,this.map(function(){return v.clone(this,e,t)})},html:function(e){return v.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return n.nodeType===1?n.innerHTML.replace(ht,""):t;if(typeof e=="string"&&!yt.test(e)&&(v.support.htmlSerialize||!wt.test(e))&&(v.support.leadingWhitespace||!pt.test(e))&&!Nt[(vt.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(dt,"<$1>");try{for(;r1&&typeof f=="string"&&St.test(f))return this.each(function(){v(this).domManip(e,n,r)});if(v.isFunction(f))return this.each(function(i){var s=v(this);e[0]=f.call(this,i,n?s.html():t),s.domManip(e,n,r)});if(this[0]){i=v.buildFragment(e,this,l),o=i.fragment,s=o.firstChild,o.childNodes.length===1&&(o=s);if(s){n=n&&v.nodeName(s,"tr");for(u=i.cacheable||c-1;a0?this.clone(!0):this).get(),v(o[i])[t](r),s=s.concat(r);return this.pushStack(s,e,o.selector)}}),v.extend({clone:function(e,t,n){var r,i,s,o;v.support.html5Clone||v.isXMLDoc(e)||!wt.test("<"+e.nodeName+">")?o=e.cloneNode(!0):(kt.innerHTML=e.outerHTML,kt.removeChild(o=kt.firstChild));if((!v.support.noCloneEvent||!v.support.noCloneChecked)&&(e.nodeType===1||e.nodeType===11)&&!v.isXMLDoc(e)){Ot(e,o),r=Mt(e),i=Mt(o);for(s=0;r[s];++s)i[s]&&Ot(r[s],i[s])}if(t){At(e,o);if(n){r=Mt(e),i=Mt(o);for(s=0;r[s];++s)At(r[s],i[s])}}return r=i=null,o},clean:function(e,t,n,r){var s,o,u,a,f,l,c,h,p,d,m,g,y=t===i&&Ct,b=[];if(!t||typeof t.createDocumentFragment=="undefined")t=i;for(s=0;(u=e[s])!=null;s++){typeof u=="number"&&(u+="");if(!u)continue;if(typeof u=="string")if(!gt.test(u))u=t.createTextNode(u);else{y=y||lt(t),c=t.createElement("div"),y.appendChild(c),u=u.replace(dt,"<$1>"),a=(vt.exec(u)||["",""])[1].toLowerCase(),f=Nt[a]||Nt._default,l=f[0],c.innerHTML=f[1]+u+f[2];while(l--)c=c.lastChild;if(!v.support.tbody){h=mt.test(u),p=a==="table"&&!h?c.firstChild&&c.firstChild.childNodes:f[1]===""&&!h?c.childNodes:[];for(o=p.length-1;o>=0;--o)v.nodeName(p[o],"tbody")&&!p[o].childNodes.length&&p[o].parentNode.removeChild(p[o])}!v.support.leadingWhitespace&&pt.test(u)&&c.insertBefore(t.createTextNode(pt.exec(u)[0]),c.firstChild),u=c.childNodes,c.parentNode.removeChild(c)}u.nodeType?b.push(u):v.merge(b,u)}c&&(u=c=y=null);if(!v.support.appendChecked)for(s=0;(u=b[s])!=null;s++)v.nodeName(u,"input")?_t(u):typeof u.getElementsByTagName!="undefined"&&v.grep(u.getElementsByTagName("input"),_t);if(n){m=function(e){if(!e.type||xt.test(e.type))return r?r.push(e.parentNode?e.parentNode.removeChild(e):e):n.appendChild(e)};for(s=0;(u=b[s])!=null;s++)if(!v.nodeName(u,"script")||!m(u))n.appendChild(u),typeof u.getElementsByTagName!="undefined"&&(g=v.grep(v.merge([],u.getElementsByTagName("script")),m),b.splice.apply(b,[s+1,0].concat(g)),s+=g.length)}return b},cleanData:function(e,t){var n,r,i,s,o=0,u=v.expando,a=v.cache,f=v.support.deleteExpando,l=v.event.special;for(;(i=e[o])!=null;o++)if(t||v.acceptData(i)){r=i[u],n=r&&a[r];if(n){if(n.events)for(s in n.events)l[s]?v.event.remove(i,s):v.removeEvent(i,s,n.handle);a[r]&&(delete a[r],f?delete i[u]:i.removeAttribute?i.removeAttribute(u):i[u]=null,v.deletedIds.push(r))}}}}),function(){var e,t;v.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||e.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e=v.uaMatch(o.userAgent),t={},e.browser&&(t[e.browser]=!0,t.version=e.version),t.chrome?t.webkit=!0:t.webkit&&(t.safari=!0),v.browser=t,v.sub=function(){function e(t,n){return new e.fn.init(t,n)}v.extend(!0,e,this),e.superclass=this,e.fn=e.prototype=this(),e.fn.constructor=e,e.sub=this.sub,e.fn.init=function(r,i){return i&&i instanceof v&&!(i instanceof e)&&(i=e(i)),v.fn.init.call(this,r,i,t)},e.fn.init.prototype=e.fn;var t=e(i);return e}}();var Dt,Pt,Ht,Bt=/alpha\([^)]*\)/i,jt=/opacity=([^)]*)/,Ft=/^(top|right|bottom|left)$/,It=/^(none|table(?!-c[ea]).+)/,qt=/^margin/,Rt=new RegExp("^("+m+")(.*)$","i"),Ut=new RegExp("^("+m+")(?!px)[a-z%]+$","i"),zt=new RegExp("^([-+])=("+m+")","i"),Wt={BODY:"block"},Xt={position:"absolute",visibility:"hidden",display:"block"},Vt={letterSpacing:0,fontWeight:400},$t=["Top","Right","Bottom","Left"],Jt=["Webkit","O","Moz","ms"],Kt=v.fn.toggle;v.fn.extend({css:function(e,n){return v.access(this,function(e,n,r){return r!==t?v.style(e,n,r):v.css(e,n)},e,n,arguments.length>1)},show:function(){return Yt(this,!0)},hide:function(){return Yt(this)},toggle:function(e,t){var n=typeof e=="boolean";return v.isFunction(e)&&v.isFunction(t)?Kt.apply(this,arguments):this.each(function(){(n?e:Gt(this))?v(this).show():v(this).hide()})}}),v.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Dt(e,"opacity");return n===""?"1":n}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":v.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(!e||e.nodeType===3||e.nodeType===8||!e.style)return;var s,o,u,a=v.camelCase(n),f=e.style;n=v.cssProps[a]||(v.cssProps[a]=Qt(f,a)),u=v.cssHooks[n]||v.cssHooks[a];if(r===t)return u&&"get"in u&&(s=u.get(e,!1,i))!==t?s:f[n];o=typeof r,o==="string"&&(s=zt.exec(r))&&(r=(s[1]+1)*s[2]+parseFloat(v.css(e,n)),o="number");if(r==null||o==="number"&&isNaN(r))return;o==="number"&&!v.cssNumber[a]&&(r+="px");if(!u||!("set"in u)||(r=u.set(e,r,i))!==t)try{f[n]=r}catch(l){}},css:function(e,n,r,i){var s,o,u,a=v.camelCase(n);return n=v.cssProps[a]||(v.cssProps[a]=Qt(e.style,a)),u=v.cssHooks[n]||v.cssHooks[a],u&&"get"in u&&(s=u.get(e,!0,i)),s===t&&(s=Dt(e,n)),s==="normal"&&n in Vt&&(s=Vt[n]),r||i!==t?(o=parseFloat(s),r||v.isNumeric(o)?o||0:s):s},swap:function(e,t,n){var r,i,s={};for(i in t)s[i]=e.style[i],e.style[i]=t[i];r=n.call(e);for(i in t)e.style[i]=s[i];return r}}),e.getComputedStyle?Dt=function(t,n){var r,i,s,o,u=e.getComputedStyle(t,null),a=t.style;return u&&(r=u.getPropertyValue(n)||u[n],r===""&&!v.contains(t.ownerDocument,t)&&(r=v.style(t,n)),Ut.test(r)&&qt.test(n)&&(i=a.width,s=a.minWidth,o=a.maxWidth,a.minWidth=a.maxWidth=a.width=r,r=u.width,a.width=i,a.minWidth=s,a.maxWidth=o)),r}:i.documentElement.currentStyle&&(Dt=function(e,t){var n,r,i=e.currentStyle&&e.currentStyle[t],s=e.style;return i==null&&s&&s[t]&&(i=s[t]),Ut.test(i)&&!Ft.test(t)&&(n=s.left,r=e.runtimeStyle&&e.runtimeStyle.left,r&&(e.runtimeStyle.left=e.currentStyle.left),s.left=t==="fontSize"?"1em":i,i=s.pixelLeft+"px",s.left=n,r&&(e.runtimeStyle.left=r)),i===""?"auto":i}),v.each(["height","width"],function(e,t){v.cssHooks[t]={get:function(e,n,r){if(n)return e.offsetWidth===0&&It.test(Dt(e,"display"))?v.swap(e,Xt,function(){return tn(e,t,r)}):tn(e,t,r)},set:function(e,n,r){return Zt(e,n,r?en(e,t,r,v.support.boxSizing&&v.css(e,"boxSizing")==="border-box"):0)}}}),v.support.opacity||(v.cssHooks.opacity={get:function(e,t){return jt.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=v.isNumeric(t)?"alpha(opacity="+t*100+")":"",s=r&&r.filter||n.filter||"";n.zoom=1;if(t>=1&&v.trim(s.replace(Bt,""))===""&&n.removeAttribute){n.removeAttribute("filter");if(r&&!r.filter)return}n.filter=Bt.test(s)?s.replace(Bt,i):s+" "+i}}),v(function(){v.support.reliableMarginRight||(v.cssHooks.marginRight={get:function(e,t){return v.swap(e,{display:"inline-block"},function(){if(t)return Dt(e,"marginRight")})}}),!v.support.pixelPosition&&v.fn.position&&v.each(["top","left"],function(e,t){v.cssHooks[t]={get:function(e,n){if(n){var r=Dt(e,t);return Ut.test(r)?v(e).position()[t]+"px":r}}}})}),v.expr&&v.expr.filters&&(v.expr.filters.hidden=function(e){return e.offsetWidth===0&&e.offsetHeight===0||!v.support.reliableHiddenOffsets&&(e.style&&e.style.display||Dt(e,"display"))==="none"},v.expr.filters.visible=function(e){return!v.expr.filters.hidden(e)}),v.each({margin:"",padding:"",border:"Width"},function(e,t){v.cssHooks[e+t]={expand:function(n){var r,i=typeof n=="string"?n.split(" "):[n],s={};for(r=0;r<4;r++)s[e+$t[r]+t]=i[r]||i[r-2]||i[0];return s}},qt.test(e)||(v.cssHooks[e+t].set=Zt)});var rn=/%20/g,sn=/\[\]$/,on=/\r?\n/g,un=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,an=/^(?:select|textarea)/i;v.fn.extend({serialize:function(){return v.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?v.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||an.test(this.nodeName)||un.test(this.type))}).map(function(e,t){var n=v(this).val();return n==null?null:v.isArray(n)?v.map(n,function(e,n){return{name:t.name,value:e.replace(on,"\r\n")}}):{name:t.name,value:n.replace(on,"\r\n")}}).get()}}),v.param=function(e,n){var r,i=[],s=function(e,t){t=v.isFunction(t)?t():t==null?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};n===t&&(n=v.ajaxSettings&&v.ajaxSettings.traditional);if(v.isArray(e)||e.jquery&&!v.isPlainObject(e))v.each(e,function(){s(this.name,this.value)});else for(r in e)fn(r,e[r],n,s);return i.join("&").replace(rn,"+")};var ln,cn,hn=/#.*$/,pn=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,dn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,vn=/^(?:GET|HEAD)$/,mn=/^\/\//,gn=/\?/,yn=/)<[^<]*)*<\/script>/gi,bn=/([?&])_=[^&]*/,wn=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,En=v.fn.load,Sn={},xn={},Tn=["*/"]+["*"];try{cn=s.href}catch(Nn){cn=i.createElement("a"),cn.href="",cn=cn.href}ln=wn.exec(cn.toLowerCase())||[],v.fn.load=function(e,n,r){if(typeof e!="string"&&En)return En.apply(this,arguments);if(!this.length)return this;var i,s,o,u=this,a=e.indexOf(" ");return a>=0&&(i=e.slice(a,e.length),e=e.slice(0,a)),v.isFunction(n)?(r=n,n=t):n&&typeof n=="object"&&(s="POST"),v.ajax({url:e,type:s,dataType:"html",data:n,complete:function(e,t){r&&u.each(r,o||[e.responseText,t,e])}}).done(function(e){o=arguments,u.html(i?v("
    ").append(e.replace(yn,"")).find(i):e)}),this},v.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,t){v.fn[t]=function(e){return this.on(t,e)}}),v.each(["get","post"],function(e,n){v[n]=function(e,r,i,s){return v.isFunction(r)&&(s=s||i,i=r,r=t),v.ajax({type:n,url:e,data:r,success:i,dataType:s})}}),v.extend({getScript:function(e,n){return v.get(e,t,n,"script")},getJSON:function(e,t,n){return v.get(e,t,n,"json")},ajaxSetup:function(e,t){return t?Ln(e,v.ajaxSettings):(t=e,e=v.ajaxSettings),Ln(e,t),e},ajaxSettings:{url:cn,isLocal:dn.test(ln[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Tn},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":v.parseJSON,"text xml":v.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:Cn(Sn),ajaxTransport:Cn(xn),ajax:function(e,n){function T(e,n,s,a){var l,y,b,w,S,T=n;if(E===2)return;E=2,u&&clearTimeout(u),o=t,i=a||"",x.readyState=e>0?4:0,s&&(w=An(c,x,s));if(e>=200&&e<300||e===304)c.ifModified&&(S=x.getResponseHeader("Last-Modified"),S&&(v.lastModified[r]=S),S=x.getResponseHeader("Etag"),S&&(v.etag[r]=S)),e===304?(T="notmodified",l=!0):(l=On(c,w),T=l.state,y=l.data,b=l.error,l=!b);else{b=T;if(!T||e)T="error",e<0&&(e=0)}x.status=e,x.statusText=(n||T)+"",l?d.resolveWith(h,[y,T,x]):d.rejectWith(h,[x,T,b]),x.statusCode(g),g=t,f&&p.trigger("ajax"+(l?"Success":"Error"),[x,c,l?y:b]),m.fireWith(h,[x,T]),f&&(p.trigger("ajaxComplete",[x,c]),--v.active||v.event.trigger("ajaxStop"))}typeof e=="object"&&(n=e,e=t),n=n||{};var r,i,s,o,u,a,f,l,c=v.ajaxSetup({},n),h=c.context||c,p=h!==c&&(h.nodeType||h instanceof v)?v(h):v.event,d=v.Deferred(),m=v.Callbacks("once memory"),g=c.statusCode||{},b={},w={},E=0,S="canceled",x={readyState:0,setRequestHeader:function(e,t){if(!E){var n=e.toLowerCase();e=w[n]=w[n]||e,b[e]=t}return this},getAllResponseHeaders:function(){return E===2?i:null},getResponseHeader:function(e){var n;if(E===2){if(!s){s={};while(n=pn.exec(i))s[n[1].toLowerCase()]=n[2]}n=s[e.toLowerCase()]}return n===t?null:n},overrideMimeType:function(e){return E||(c.mimeType=e),this},abort:function(e){return e=e||S,o&&o.abort(e),T(0,e),this}};d.promise(x),x.success=x.done,x.error=x.fail,x.complete=m.add,x.statusCode=function(e){if(e){var t;if(E<2)for(t in e)g[t]=[g[t],e[t]];else t=e[x.status],x.always(t)}return this},c.url=((e||c.url)+"").replace(hn,"").replace(mn,ln[1]+"//"),c.dataTypes=v.trim(c.dataType||"*").toLowerCase().split(y),c.crossDomain==null&&(a=wn.exec(c.url.toLowerCase()),c.crossDomain=!(!a||a[1]===ln[1]&&a[2]===ln[2]&&(a[3]||(a[1]==="http:"?80:443))==(ln[3]||(ln[1]==="http:"?80:443)))),c.data&&c.processData&&typeof c.data!="string"&&(c.data=v.param(c.data,c.traditional)),kn(Sn,c,n,x);if(E===2)return x;f=c.global,c.type=c.type.toUpperCase(),c.hasContent=!vn.test(c.type),f&&v.active++===0&&v.event.trigger("ajaxStart");if(!c.hasContent){c.data&&(c.url+=(gn.test(c.url)?"&":"?")+c.data,delete c.data),r=c.url;if(c.cache===!1){var N=v.now(),C=c.url.replace(bn,"$1_="+N);c.url=C+(C===c.url?(gn.test(c.url)?"&":"?")+"_="+N:"")}}(c.data&&c.hasContent&&c.contentType!==!1||n.contentType)&&x.setRequestHeader("Content-Type",c.contentType),c.ifModified&&(r=r||c.url,v.lastModified[r]&&x.setRequestHeader("If-Modified-Since",v.lastModified[r]),v.etag[r]&&x.setRequestHeader("If-None-Match",v.etag[r])),x.setRequestHeader("Accept",c.dataTypes[0]&&c.accepts[c.dataTypes[0]]?c.accepts[c.dataTypes[0]]+(c.dataTypes[0]!=="*"?", "+Tn+"; q=0.01":""):c.accepts["*"]);for(l in c.headers)x.setRequestHeader(l,c.headers[l]);if(!c.beforeSend||c.beforeSend.call(h,x,c)!==!1&&E!==2){S="abort";for(l in{success:1,error:1,complete:1})x[l](c[l]);o=kn(xn,c,n,x);if(!o)T(-1,"No Transport");else{x.readyState=1,f&&p.trigger("ajaxSend",[x,c]),c.async&&c.timeout>0&&(u=setTimeout(function(){x.abort("timeout")},c.timeout));try{E=1,o.send(b,T)}catch(k){if(!(E<2))throw k;T(-1,k)}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var Mn=[],_n=/\?/,Dn=/(=)\?(?=&|$)|\?\?/,Pn=v.now();v.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mn.pop()||v.expando+"_"+Pn++;return this[e]=!0,e}}),v.ajaxPrefilter("json jsonp",function(n,r,i){var s,o,u,a=n.data,f=n.url,l=n.jsonp!==!1,c=l&&Dn.test(f),h=l&&!c&&typeof a=="string"&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Dn.test(a);if(n.dataTypes[0]==="jsonp"||c||h)return s=n.jsonpCallback=v.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,o=e[s],c?n.url=f.replace(Dn,"$1"+s):h?n.data=a.replace(Dn,"$1"+s):l&&(n.url+=(_n.test(f)?"&":"?")+n.jsonp+"="+s),n.converters["script json"]=function(){return u||v.error(s+" was not called"),u[0]},n.dataTypes[0]="json",e[s]=function(){u=arguments},i.always(function(){e[s]=o,n[s]&&(n.jsonpCallback=r.jsonpCallback,Mn.push(s)),u&&v.isFunction(o)&&o(u[0]),u=o=t}),"script"}),v.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){return v.globalEval(e),e}}}),v.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),v.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=i.head||i.getElementsByTagName("head")[0]||i.documentElement;return{send:function(s,o){n=i.createElement("script"),n.async="async",e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,i){if(i||!n.readyState||/loaded|complete/.test(n.readyState))n.onload=n.onreadystatechange=null,r&&n.parentNode&&r.removeChild(n),n=t,i||o(200,"success")},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(0,1)}}}});var Hn,Bn=e.ActiveXObject?function(){for(var e in Hn)Hn[e](0,1)}:!1,jn=0;v.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&Fn()||In()}:Fn,function(e){v.extend(v.support,{ajax:!!e,cors:!!e&&"withCredentials"in e})}(v.ajaxSettings.xhr()),v.support.ajax&&v.ajaxTransport(function(n){if(!n.crossDomain||v.support.cors){var r;return{send:function(i,s){var o,u,a=n.xhr();n.username?a.open(n.type,n.url,n.async,n.username,n.password):a.open(n.type,n.url,n.async);if(n.xhrFields)for(u in n.xhrFields)a[u]=n.xhrFields[u];n.mimeType&&a.overrideMimeType&&a.overrideMimeType(n.mimeType),!n.crossDomain&&!i["X-Requested-With"]&&(i["X-Requested-With"]="XMLHttpRequest");try{for(u in i)a.setRequestHeader(u,i[u])}catch(f){}a.send(n.hasContent&&n.data||null),r=function(e,i){var u,f,l,c,h;try{if(r&&(i||a.readyState===4)){r=t,o&&(a.onreadystatechange=v.noop,Bn&&delete Hn[o]);if(i)a.readyState!==4&&a.abort();else{u=a.status,l=a.getAllResponseHeaders(),c={},h=a.responseXML,h&&h.documentElement&&(c.xml=h);try{c.text=a.responseText}catch(p){}try{f=a.statusText}catch(p){f=""}!u&&n.isLocal&&!n.crossDomain?u=c.text?200:404:u===1223&&(u=204)}}}catch(d){i||s(-1,d)}c&&s(u,f,c,l)},n.async?a.readyState===4?setTimeout(r,0):(o=++jn,Bn&&(Hn||(Hn={},v(e).unload(Bn)),Hn[o]=r),a.onreadystatechange=r):r()},abort:function(){r&&r(0,1)}}}});var qn,Rn,Un=/^(?:toggle|show|hide)$/,zn=new RegExp("^(?:([-+])=|)("+m+")([a-z%]*)$","i"),Wn=/queueHooks$/,Xn=[Gn],Vn={"*":[function(e,t){var n,r,i=this.createTween(e,t),s=zn.exec(t),o=i.cur(),u=+o||0,a=1,f=20;if(s){n=+s[2],r=s[3]||(v.cssNumber[e]?"":"px");if(r!=="px"&&u){u=v.css(i.elem,e,!0)||n||1;do a=a||".5",u/=a,v.style(i.elem,e,u+r);while(a!==(a=i.cur()/o)&&a!==1&&--f)}i.unit=r,i.start=u,i.end=s[1]?u+(s[1]+1)*n:n}return i}]};v.Animation=v.extend(Kn,{tweener:function(e,t){v.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");var n,r=0,i=e.length;for(;r-1,f={},l={},c,h;a?(l=i.position(),c=l.top,h=l.left):(c=parseFloat(o)||0,h=parseFloat(u)||0),v.isFunction(t)&&(t=t.call(e,n,s)),t.top!=null&&(f.top=t.top-s.top+c),t.left!=null&&(f.left=t.left-s.left+h),"using"in t?t.using.call(e,f):i.css(f)}},v.fn.extend({position:function(){if(!this[0])return;var e=this[0],t=this.offsetParent(),n=this.offset(),r=er.test(t[0].nodeName)?{top:0,left:0}:t.offset();return n.top-=parseFloat(v.css(e,"marginTop"))||0,n.left-=parseFloat(v.css(e,"marginLeft"))||0,r.top+=parseFloat(v.css(t[0],"borderTopWidth"))||0,r.left+=parseFloat(v.css(t[0],"borderLeftWidth"))||0,{top:n.top-r.top,left:n.left-r.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||i.body;while(e&&!er.test(e.nodeName)&&v.css(e,"position")==="static")e=e.offsetParent;return e||i.body})}}),v.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);v.fn[e]=function(i){return v.access(this,function(e,i,s){var o=tr(e);if(s===t)return o?n in o?o[n]:o.document.documentElement[i]:e[i];o?o.scrollTo(r?v(o).scrollLeft():s,r?s:v(o).scrollTop()):e[i]=s},e,i,arguments.length,null)}}),v.each({Height:"height",Width:"width"},function(e,n){v.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){v.fn[i]=function(i,s){var o=arguments.length&&(r||typeof i!="boolean"),u=r||(i===!0||s===!0?"margin":"border");return v.access(this,function(n,r,i){var s;return v.isWindow(n)?n.document.documentElement["client"+e]:n.nodeType===9?(s=n.documentElement,Math.max(n.body["scroll"+e],s["scroll"+e],n.body["offset"+e],s["offset"+e],s["client"+e])):i===t?v.css(n,r,i,u):v.style(n,r,i,u)},n,o?i:t,o,null)}})}),e.jQuery=e.$=v,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return v})})(window); \ No newline at end of file diff --git a/compass/tasks/tasks.py b/compass/tasks/tasks.py index 05cc54e6..fdd10227 100644 --- a/compass/tasks/tasks.py +++ b/compass/tasks/tasks.py @@ -18,20 +18,34 @@ """ import logging +from celery.signals import celeryd_init from celery.signals import setup_logging -from compass.actions import clean_deployment -from compass.actions import clean_installing_progress from compass.actions import deploy from compass.actions import poll_switch -from compass.actions import reinstall from compass.actions import update_progress +from compass.db.api import adapter_holder as adapter_api +from compass.db.api import database +from compass.db.api import metadata_holder as metadata_api + from compass.tasks.client import celery from compass.utils import flags from compass.utils import logsetting from compass.utils import setting_wrapper as setting +@celeryd_init.connect() +def global_celery_init(**_): + """Initialization code.""" + flags.init() + flags.OPTIONS.logfile = setting.CELERY_LOGFILE + logsetting.init() + database.init() + adapter_api.load_adapters() + metadata_api.load_metadatas() + + +@setup_logging.connect() def tasks_setup_logging(**_): """Setup logging options from compass setting.""" flags.init() @@ -39,86 +53,102 @@ def tasks_setup_logging(**_): logsetting.init() -setup_logging.connect(tasks_setup_logging) - - @celery.task(name='compass.tasks.pollswitch') -def pollswitch(ip_addr, req_obj='mac', oper='SCAN'): +def pollswitch( + poller_email, ip_addr, credentials, + req_obj='mac', oper='SCAN' +): """Query switch and return expected result. :param ip_addr: switch ip address. :type ip_addr: str + :param credentials: switch credentials + :type credentials: dict :param reqObj: the object requested to query from switch. :type reqObj: str :param oper: the operation to query the switch (SCAN, GET, SET). :type oper: str """ try: - poll_switch.poll_switch(ip_addr, req_obj=req_obj, oper=oper) + poll_switch.poll_switch( + poller_email, ip_addr, credentials, + req_obj=req_obj, oper=oper + ) except Exception as error: logging.exception(error) -@celery.task(name='compass.tasks.deploy') -def deploy_clusters(cluster_hosts): +@celery.task(name='compass.tasks.deploy_cluster') +def deploy_cluster(deployer_email, cluster_id, clusterhost_ids): """Deploy the given cluster. :param cluster_hosts: the cluster and hosts of each cluster to deploy. :type cluster_hosts: dict of int to list of int """ try: - deploy.deploy(cluster_hosts) + deploy.deploy(cluster_id, clusterhost_ids, deployer_email) except Exception as error: logging.exception(error) -@celery.task(name='compass.tasks.reinstall') -def reinstall_clusters(cluster_hosts): +@celery.task(name='compass.tasks.reinstall_cluster') +def reinstall_cluster(installer_email, cluster_id, clusterhost_ids): """reinstall the given cluster. :param cluster_hosts: the cluster and hosts of each cluster to reinstall. :type cluster_hosts: dict of int to list of int """ - try: - reinstall.reinstall(cluster_hosts) - except Exception as error: - logging.exception(error) + pass -@celery.task(name='compass.tasks.clean_deployment') -def clean_clusters_deployment(cluster_hosts): - """clean deployment of the given cluster. - - :param cluster_hosts: the cluster and hosts of each cluster to clean. - :type cluster_hosts: dict of int to list of int +@celery.task(name='compass.tasks.poweron_host') +def poweron_host(host_id): + """Deploy the given cluster. """ - try: - clean_deployment.clean_deployment(cluster_hosts) - except Exception as error: - logging.exception(error) + pass -@celery.task(name='compass.tasks.clean_installing_progress') -def clean_clusters_installing_progress(cluster_hosts): - """clean installing progress of the given cluster. - - :param cluster_hosts: the cluster and hosts of each cluster to clean. - :type cluster_hosts: dict of int to list of int +@celery.task(name='compass.tasks.poweroff_host') +def poweroff_host(host_id): + """Deploy the given cluster. """ - try: - clean_installing_progress.clean_installing_progress(cluster_hosts) - except Exception as error: - logging.exception(error) + pass + + +@celery.task(name='compass.tasks.reset_host') +def reset_host(host_id): + """Deploy the given cluster. + """ + pass + + +@celery.task(name='compass.tasks.poweron_machine') +def poweron_machine(machine_id): + """Deploy the given cluster. + """ + pass + + +@celery.task(name='compass.tasks.poweroff_machine') +def poweroff_machine(machine_id): + """Deploy the given cluster. + """ + pass + + +@celery.task(name='compass.tasks.reset_machine') +def reset_machine(machine_id): + """Deploy the given cluster. + """ + pass @celery.task(name='compass.tasks.update_progress') -def update_clusters_progress(cluster_hosts): +def update_clusters_progress(): """Calculate the installing progress of the given cluster. - - :param cluster_hosts: the cluster and hosts of each cluster to update. - :type cluster_hosts: dict of int to list of int """ + logging.info('update_clusters_progress') try: - update_progress.update_progress(cluster_hosts) + update_progress.update_progress() except Exception as error: logging.exception(error) diff --git a/compass/templates/forbidden.jinja b/compass/templates/forbidden.jinja deleted file mode 100644 index ccd86f86..00000000 --- a/compass/templates/forbidden.jinja +++ /dev/null @@ -1,10 +0,0 @@ -{% extends 'layout.jinja' %} - -{% block title %}403 Forbidden{% endblock %} -{% block content %} -

    403 Forbidden

    -

    -Access to this page is forbidden for user -{{ current_user.email }}. -

    -{% endblock %} diff --git a/compass/templates/index.jinja b/compass/templates/index.jinja deleted file mode 100644 index 319c0af7..00000000 --- a/compass/templates/index.jinja +++ /dev/null @@ -1,12 +0,0 @@ -{% extends 'layout.jinja' %} - -{% block title %}Main Page{% endblock %} -{% block content %} -

    -{% if current_user.is_anonymous() %} -You are not logged in. -{% else %} -Hi, {{ current_user.email }}! -{% endif %} -

    -{% endblock %} diff --git a/compass/templates/layout.jinja b/compass/templates/layout.jinja deleted file mode 100644 index e6f6c79d..00000000 --- a/compass/templates/layout.jinja +++ /dev/null @@ -1,39 +0,0 @@ - - - -{% block title %}{% endblock %} - - -
    - -{% with messages = get_flashed_messages(with_categories=True) %} - {% if messages %} - {% for category, message in messages %} -
    - - {{ message }} -
    - {% endfor %} - {% endif %} -{% endwith %} -{% block content %} -{% endblock %} -
    - - - diff --git a/compass/templates/login.jinja b/compass/templates/login.jinja deleted file mode 100644 index 93216212..00000000 --- a/compass/templates/login.jinja +++ /dev/null @@ -1,19 +0,0 @@ -{% extends 'layout.jinja' %} -{% from 'macros.jinja' import with_errors %} - -{% block title %}Login{% endblock %} -{% block content %} -
    - {{ form.hidden_tag() }} - {{ with_errors(form.email, placeholder='Email') }} - {{ with_errors(form.password, placeholder='Password') }} -
    -
    - - -
    -
    - -{% endblock %} diff --git a/compass/templates/macros.jinja b/compass/templates/macros.jinja deleted file mode 100644 index 0ca957cc..00000000 --- a/compass/templates/macros.jinja +++ /dev/null @@ -1,13 +0,0 @@ -{% macro with_errors(field) -%} -
    - {{ field.label(class_='control-label') }} -
    - {{ field(**kwargs) }} - {% if field.errors %} - {% for error in field.errors %} - {{ error }} - {% endfor %} - {% endif %} -
    -
    -{%- endmacro %} diff --git a/compass/templates/restricted.jinja b/compass/templates/restricted.jinja deleted file mode 100644 index c32d4080..00000000 --- a/compass/templates/restricted.jinja +++ /dev/null @@ -1,9 +0,0 @@ -{% extends 'layout.jinja' %} - -{% block title %}Restricted Area{% endblock %} -{% block content %} -

    Restricted Area

    -

    -This is restricted area! -

    -{% endblock %} diff --git a/compass/tests/actions/deploy/__init__.py b/compass/tests/actions/deploy/__init__.py index e69de29b..4ee55a4c 100644 --- a/compass/tests/actions/deploy/__init__.py +++ b/compass/tests/actions/deploy/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests/actions/deploy/data/global_config b/compass/tests/actions/deploy/data/global_config deleted file mode 100644 index 7d590753..00000000 --- a/compass/tests/actions/deploy/data/global_config +++ /dev/null @@ -1,64 +0,0 @@ -networking = { - 'global': { - 'default_no_proxy': ['127.0.0.1', 'localhost'], - 'search_path_pattern': '%(clusterid)s.%(search_path)s %(search_path)s', - 'noproxy_pattern': '%(hostname)s.%(clusterid)s,%(ip)s' - }, - 'interfaces': { - 'management': { - 'dns_pattern': '%(hostname)s.%(clusterid)s.%(search_path)s', - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'promisc': 0, - }, - 'tenant': { - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'dns_pattern': 'virtual-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 0, - }, - 'public': { - 'netmask': '255.255.255.0', - 'nic': 'eth1', - 'dns_pattern': 'floating-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 1, - }, - 'storage': { - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'dns_pattern': 'storage-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 0, - }, - }, -} - -security = { - 'server_credentials': { - 'username': 'root', - 'password': 'huawei', - }, - 'console_credentials': { - 'username': 'admin', - 'password': 'huawei', - }, - 'service_credentials': { - 'username': 'admin', - 'password': 'huawei', - }, -} - -role_assign_policy = { - 'policy_by_host_numbers': { - }, - 'default': { - 'roles': [], - 'maxs': {}, - 'mins': {}, - 'default_max': -1, - 'default_min': 0, - 'exclusives': [], - 'bundles': [], - }, -} - -testmode = False diff --git a/compass/tests/actions/deploy/data/global_config2 b/compass/tests/actions/deploy/data/global_config2 deleted file mode 100644 index bd7b47d7..00000000 --- a/compass/tests/actions/deploy/data/global_config2 +++ /dev/null @@ -1,64 +0,0 @@ -networking = { - 'global': { - 'default_no_proxy': ['127.0.0.1', 'localhost'], - 'search_path_pattern': '%(clusterid)s.%(search_path)s %(search_path)s', - 'noproxy_pattern': '%(hostname)s.%(clusterid)s,%(ip)s' - }, - 'interfaces': { - 'management': { - 'dns_pattern': '%(hostname)s.%(clusterid)s.%(search_path)s', - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'promisc': 0, - }, - 'tenant': { - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'dns_pattern': 'virtual-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 0, - }, - 'public': { - 'netmask': '255.255.255.0', - 'nic': 'eth1', - 'dns_pattern': 'floating-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 1, - }, - 'storage': { - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'dns_pattern': 'storage-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 0, - }, - }, -} - -security = { - 'server_credentials': { - 'username': 'root', - 'password': 'huawei', - }, - 'console_credentials': { - 'username': 'admin', - 'password': 'huawei', - }, - 'service_credentials': { - 'username': 'admin', - 'password': 'huawei', - }, -} - -role_assign_policy = { - 'policy_by_host_numbers': { - }, - 'default': { - 'roles': [], - 'maxs': {}, - 'mins': {}, - 'default_max': -1, - 'default_min': 0, - 'exclusives': [], - 'bundles': [], - }, -} - -testmode = True diff --git a/compass/tests/actions/deploy/data/test1 b/compass/tests/actions/deploy/data/test1 deleted file mode 100644 index 9f117b9a..00000000 --- a/compass/tests/actions/deploy/data/test1 +++ /dev/null @@ -1,305 +0,0 @@ -import simplejson as json - -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-single-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute-worker', 'target_system': 'openstack'}, -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor_info': 'huawei', 'credential_data': json.dumps({'version': 'v2c', 'community': 'public'})}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security_config': json.dumps({ - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }), - 'networking_config': json.dumps({ - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }), - 'partition_config': json.dumps('/home 20%%;/tmp 10%%;/var 30%%;'), - }, -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'host1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': ["os-single-controller", "os-network", "os-compute-worker"], - }), - }, - ], -} - - -cobbler_MOCK = { - 'host_configs': [] -} - -chef_MOCK = { - 'configs': { - 'openstack': { - 'env_default': { - 'all_roles': { - 'os-single-controller': 'openstack controller node', - 'os-network': 'openstack network node', - 'os-compute-worker': 'openstack nova node' - }, - 'config_mapping': { - '/credential/identity/users/admin': '/security/console_credentials', - '/credential/identity/users/compute': '/security/service_credentials', - '/credential/identity/users/image': '/security/service_credentials', - '/credential/identity/users/metering': '/security/service_credentials', - '/credential/identity/users/network': '/security/service_credentials', - '/credential/identity/users/object-store': '/security/service_credentials', - '/credential/identity/users/volume': '/security/service_credentials', - '/credential/mysql/compute': '/security/service_credentials', - '/credential/mysql/dashboard': '/security/service_credentials', - '/credential/mysql/identity': '/security/service_credentials', - '/credential/mysql/image': '/security/service_credentials', - '/credential/mysql/metering': '/security/service_credentials', - '/credential/mysql/network': '/security/service_credentials', - '/credential/mysql/volume': '/security/service_credentials', - '/credential/mysql/super/password': '/security/service_credentials/password', - '/networking/control/interface': '/networking/interfaces/management/nic', - '/ntp/ntpserver': '/networking/global/ntp_server', - '/networking/storage/interface': '/networking/interfaces/storage/nic', - '/networking/public/interface': '/networking/interfaces/public/nic', - '/networking/tenant/interface': '/networking/interfaces/tenant/nic', - '/networking/plugins/ovs/gre/local_ip_interface': '/networking/interfaces/tenant/nic', - }, - 'role_mapping': { - 'os-single-controller': { - '/db/mysql/bind_address': '/networking/interfaces/management/ip', - '/mq/rabbitmq/bind_address': '/networking/interfaces/management/ip', - '/endpoints/compute/metadata/host': '/networking/interfaces/management/ip', - '/endpoints/compute/novnc/host': '/networking/interfaces/management/ip', - '/endpoints/compute/service/host': '/networking/interfaces/management/ip', - '/endpoints/compute/xvpvnc/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/admin/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/service/host': '/networking/interfaces/management/ip', - '/endpoints/identity/admin/host': '/networking/interfaces/management/ip', - '/endpoints/identity/service/host': '/networking/interfaces/management/ip', - '/endpoints/image/registry/host': '/networking/interfaces/management/ip', - '/endpoints/image/service/host': '/networking/interfaces/management/ip', - '/endpoints/metering/service/host': '/networking/interfaces/management/ip', - '/endpoints/network/service/host': '/networking/interfaces/management/ip', - '/endpoints/volume/service/host': '/networking/interfaces/management/ip' - }, - 'os-network': { - }, - 'os-compute-worker': { - } - }, - 'dashboard_roles': ['os-single-controller'], - 'role_assign_policy': { - 'default':{ - 'bundles': [], - 'exclusives': ['os-single-controller', 'os-network'], - 'roles': ['os-single-controller', 'os-network', 'os-compute-worker'], - 'default_min': 1, - 'default_max': 1, - 'maxs': {'os-compute-worker':-1} - }, - 'policy_by_host_numbers':{ - '1': { - 'bundles': [['os-single-controller', 'os-network', 'os-compute-worker']], - 'exclusives':[] - }, - '2': { - 'bundles': [['os-compute-worker','os-network']], - 'exclusives':['os-single-controller'] - }, - }, - }, - }, - }, - }, -} - -cobbler_EXPECTED = { - 'expected_host_configs': [{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host1.1', - 'hostname': 'host1', - 'modify_interface': { - 'dnsname-eth2': 'floating-host1.1.ods.com', - 'dnsname-eth0': u'host1.1.ods.com', - 'ipaddress-eth2': '10.145.88.100', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.100', - 'netmask-eth2': '255.255.254.0', - 'macaddress-eth0': '00:00:01:02:03:04', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ignore_proxy': '127.0.0.1,localhost,host1.1,192.168.20.100', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host1.1', - 'chef_node_name': u'host1.1' - }, - }], -} - -chef_EXPECTED = { - 'expected_configs': { - 'host1.1': { - 'roles_per_target_system': { - 'openstack': ['os-single-controller', 'os-network', 'os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-single-controller]', 'role[os-network]', 'role[os-compute-worker]'] - }, - 'openstack': { - '1': { - 'credential': { - 'identity': { - 'users': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'admin': {'username': 'admin', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'object-store': {'username': 'service', 'password': 'huawei'} - } - }, - 'mysql': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'dashboard': {'username': 'service', 'password': 'huawei'}, - 'super': {'password': 'huawei'}, - 'identity': {'username': 'service', 'password': 'huawei'} - } - }, - 'networking': { - 'control': {'interface': 'eth0'}, - 'storage': {'interface': 'eth0'}, - 'public': {'interface': 'eth2'}, - 'tenant': {'interface': 'eth0'} - }, - 'ntp': {'ntpserver': '192.168.20.254'}, - 'db': { - 'mysql': { - 'bind_address': '192.168.20.100' - } - }, - 'dashboard_roles': ['os-single-controller'], - 'mq': { - 'rabbitmq': {'bind_address': '192.168.20.100'} - }, - 'endpoints': { - 'compute': { - 'novnc': {'host': '192.168.20.100'}, - 'xvpvnc': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'}, - 'metadata': {'host': '192.168.20.100'} - }, - 'network': { - 'service': {'host': '192.168.20.100'} - }, - 'image': { - 'registry': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'metering': { - 'service': {'host': '192.168.20.100'} - }, - 'volume': { - 'service': {'host': '192.168.20.100'} - }, - 'ec2': { - 'admin': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'identity': { - 'admin': {'host': u'192.168.20.100'}, - 'service': {'host': u'192.168.20.100'} - }, - }, - }, - }, - }, -} diff --git a/compass/tests/actions/deploy/data/test2 b/compass/tests/actions/deploy/data/test2 deleted file mode 100644 index 22516534..00000000 --- a/compass/tests/actions/deploy/data/test2 +++ /dev/null @@ -1,360 +0,0 @@ -import simplejson as json - -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-single-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute-worker', 'target_system': 'openstack'}, -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor_info': 'huawei', 'credential_data': json.dumps({'version': 'v2c', 'community': 'public'})}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - {'mac': '00:00:01:02:03:05', 'port': 2, 'vlan': 2}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security_config': json.dumps({ - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }), - 'networking_config': json.dumps({ - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }), - 'partition_config': json.dumps('/home 20%%;/tmp 10%%;/var 30%%;'), - }, -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'host1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': ["os-single-controller"], - }), - },{ - 'hostname': 'host2', - 'mac': '00:00:01:02:03:05', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.101', - }, - }, - }, - 'roles': ["os-network", "os-compute-worker"], - }), - }, - - ], -} - - -cobbler_MOCK = { - 'host_configs': [] -} - -chef_MOCK = { - 'configs': { - 'openstack': { - 'env_default': { - 'all_roles': { - 'os-single-controller': 'openstack controller node', - 'os-network': 'openstack network node', - 'os-compute-worker': 'openstack nova node' - }, - 'dashboard_roles': ['os-single-controller'], - 'config_mapping': { - '/credential/identity/users/admin': '/security/console_credentials', - '/credential/identity/users/compute': '/security/service_credentials', - '/credential/identity/users/image': '/security/service_credentials', - '/credential/identity/users/metering': '/security/service_credentials', - '/credential/identity/users/network': '/security/service_credentials', - '/credential/identity/users/object-store': '/security/service_credentials', - '/credential/identity/users/volume': '/security/service_credentials', - '/credential/mysql/compute': '/security/service_credentials', - '/credential/mysql/dashboard': '/security/service_credentials', - '/credential/mysql/identity': '/security/service_credentials', - '/credential/mysql/image': '/security/service_credentials', - '/credential/mysql/metering': '/security/service_credentials', - '/credential/mysql/network': '/security/service_credentials', - '/credential/mysql/volume': '/security/service_credentials', - '/credential/mysql/super/password': '/security/service_credentials/password', - '/networking/control/interface': '/networking/interfaces/management/nic', - '/ntp/ntpserver': '/networking/global/ntp_server', - '/networking/storage/interface': '/networking/interfaces/storage/nic', - '/networking/public/interface': '/networking/interfaces/public/nic', - '/networking/tenant/interface': '/networking/interfaces/tenant/nic', - '/networking/plugins/ovs/gre/local_ip_interface': '/networking/interfaces/tenant/nic', - }, - 'role_mapping': { - 'os-single-controller': { - '/db/mysql/bind_address': '/networking/interfaces/management/ip', - '/mq/rabbitmq/bind_address': '/networking/interfaces/management/ip', - '/endpoints/compute/metadata/host': '/networking/interfaces/management/ip', - '/endpoints/compute/novnc/host': '/networking/interfaces/management/ip', - '/endpoints/compute/service/host': '/networking/interfaces/management/ip', - '/endpoints/compute/xvpvnc/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/admin/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/service/host': '/networking/interfaces/management/ip', - '/endpoints/identity/admin/host': '/networking/interfaces/management/ip', - '/endpoints/identity/service/host': '/networking/interfaces/management/ip', - '/endpoints/image/registry/host': '/networking/interfaces/management/ip', - '/endpoints/image/service/host': '/networking/interfaces/management/ip', - '/endpoints/metering/service/host': '/networking/interfaces/management/ip', - '/endpoints/network/service/host': '/networking/interfaces/management/ip', - '/endpoints/volume/service/host': '/networking/interfaces/management/ip' - }, - 'os-network': { - }, - 'os-compute-worker': { - } - }, - 'role_assign_policy': { - 'default':{ - 'bundles': [], - 'exclusives': ['os-single-controller', 'os-network'], - 'roles': ['os-single-controller', 'os-network', 'os-compute-worker'], - 'default_min': 1, - 'default_max': 1, - 'maxs': {'os-compute-worker':-1} - }, - 'policy_by_host_numbers':{ - '1': { - 'bundles': [['os-single-controller', 'os-network', 'os-compute-worker']], - 'exclusives':[] - }, - '2': { - 'bundles': [['os-network', 'os-compute-worker']], - 'exclusives':['os-single-controller'] - }, - }, - }, - }, - }, - }, -} - -cobbler_EXPECTED = { - 'expected_host_configs': [{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host1.1', - 'hostname': 'host1', - 'modify_interface': { - 'dnsname-eth2': 'floating-host1.1.ods.com', - 'dnsname-eth0': u'host1.1.ods.com', - 'ipaddress-eth2': '10.145.88.100', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.100', - 'netmask-eth2': '255.255.254.0', - 'macaddress-eth0': '00:00:01:02:03:04', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': 'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ignore_proxy': '127.0.0.1,localhost,host1.1,192.168.20.100,host2.1,192.168.20.101', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host1.1', - 'chef_node_name': 'host1.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host2.1', - 'hostname': 'host2', - 'modify_interface': { - 'dnsname-eth2': 'floating-host2.1.ods.com', - 'dnsname-eth0': 'host2.1.ods.com', - 'ipaddress-eth2': '10.145.88.101', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.101', - 'netmask-eth2': '255.255.254.0', - 'macaddress-eth0': '00:00:01:02:03:05', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ignore_proxy': '127.0.0.1,localhost,host1.1,192.168.20.100,host2.1,192.168.20.101', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host2.1', - 'chef_node_name': 'host2.1' - }, - }], -} - -chef_EXPECTED = { - 'expected_configs': { - 'host1.1': { - 'roles_per_target_system': { - 'openstack': ['os-single-controller'], - }, - 'cluster': '1', - 'run_list': ['role[os-single-controller]'] - }, - 'host2.1': { - 'roles_per_target_system': { - 'openstack': ['os-network', 'os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-network]', 'role[os-compute-worker]'] - }, - 'openstack': { - '1': { - 'credential': { - 'identity': { - 'users': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'admin': {'username': 'admin', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'object-store': {'username': 'service', 'password': 'huawei'} - } - }, - 'mysql': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'dashboard': {'username': 'service', 'password': 'huawei'}, - 'super': {'password': 'huawei'}, - 'identity': {'username': 'service', 'password': 'huawei'} - } - }, - 'networking': { - 'control': {'interface': 'eth0'}, - 'storage': {'interface': 'eth0'}, - 'public': {'interface': 'eth2'}, - 'tenant': {'interface': 'eth0'} - }, - 'ntp': {'ntpserver': '192.168.20.254'}, - 'db': { - 'mysql': { - 'bind_address': '192.168.20.100' - } - }, - 'dashboard_roles': ['os-single-controller'], - 'mq': { - 'rabbitmq': {'bind_address': '192.168.20.100'} - }, - 'endpoints': { - 'compute': { - 'novnc': {'host': '192.168.20.100'}, - 'xvpvnc': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'}, - 'metadata': {'host': '192.168.20.100'} - }, - 'network': { - 'service': {'host': '192.168.20.100'} - }, - 'image': { - 'registry': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'metering': { - 'service': {'host': '192.168.20.100'} - }, - 'volume': { - 'service': {'host': '192.168.20.100'} - }, - 'ec2': { - 'admin': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'identity': { - 'admin': {'host': u'192.168.20.100'}, - 'service': {'host': u'192.168.20.100'} - }, - }, - }, - }, - }, -} diff --git a/compass/tests/actions/deploy/data/test3 b/compass/tests/actions/deploy/data/test3 deleted file mode 100644 index 024b1e3b..00000000 --- a/compass/tests/actions/deploy/data/test3 +++ /dev/null @@ -1,600 +0,0 @@ -import simplejson as json - -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-single-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute-worker', 'target_system': 'openstack'}, -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor_info': 'huawei', 'credential_data': json.dumps({'version': 'v2c', 'community': 'public'})}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - {'mac': '00:00:01:02:03:05', 'port': 1, 'vlan': 1}, - {'mac': '00:00:01:02:03:06', 'port': 1, 'vlan': 1}, - {'mac': '00:00:01:02:03:07', 'port': 1, 'vlan': 1}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security_config': json.dumps({ - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }), - 'networking_config': json.dumps({ - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }), - 'partition_config': json.dumps('/home 20%%;/tmp 10%%;/var 30%%;'), - }, { - 'name': 'cluster2', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security_config': json.dumps({ - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }), - 'networking_config': json.dumps({ - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.110' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.110' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.110' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.110' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }), - 'partition_config': json.dumps('/home 20%%;/tmp 10%%;/var 30%%;'), - }, - -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'host1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': ["os-single-controller"], - }), - }, { - 'hostname': 'host2', - 'mac': '00:00:01:02:03:05', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.101', - }, - }, - }, - 'roles': ["os-network", "os-compute-worker"], - }), - }, - ], - 'cluster2': [ - { - 'hostname': 'host1', - 'mac': '00:00:01:02:03:06', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.110', - }, - }, - }, - 'roles': ["os-single-controller"], - }), - }, { - 'hostname': 'host2', - 'mac': '00:00:01:02:03:07', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.111', - }, - }, - }, - 'roles': ["os-network", "os-compute-worker"], - }), - }, - ], -} - - -cobbler_MOCK = { - 'host_configs': [] -} - -chef_MOCK = { - 'configs': { - 'openstack': { - 'env_default': { - 'all_roles': { - 'os-single-controller': 'openstack controller node', - 'os-network': 'openstack network node', - 'os-compute-worker': 'openstack nova node' - }, - 'dashboard_roles': ['os-single-controller'], - 'config_mapping': { - '/credential/identity/users/admin': '/security/console_credentials', - '/credential/identity/users/compute': '/security/service_credentials', - '/credential/identity/users/image': '/security/service_credentials', - '/credential/identity/users/metering': '/security/service_credentials', - '/credential/identity/users/network': '/security/service_credentials', - '/credential/identity/users/object-store': '/security/service_credentials', - '/credential/identity/users/volume': '/security/service_credentials', - '/credential/mysql/compute': '/security/service_credentials', - '/credential/mysql/dashboard': '/security/service_credentials', - '/credential/mysql/identity': '/security/service_credentials', - '/credential/mysql/image': '/security/service_credentials', - '/credential/mysql/metering': '/security/service_credentials', - '/credential/mysql/network': '/security/service_credentials', - '/credential/mysql/volume': '/security/service_credentials', - '/credential/mysql/super/password': '/security/service_credentials/password', - '/networking/control/interface': '/networking/interfaces/management/nic', - '/ntp/ntpserver': '/networking/global/ntp_server', - '/networking/storage/interface': '/networking/interfaces/storage/nic', - '/networking/public/interface': '/networking/interfaces/public/nic', - '/networking/tenant/interface': '/networking/interfaces/tenant/nic', - '/networking/plugins/ovs/gre/local_ip_interface': '/networking/interfaces/tenant/nic', - }, - 'role_mapping': { - 'os-single-controller': { - '/db/mysql/bind_address': '/networking/interfaces/management/ip', - '/mq/rabbitmq/bind_address': '/networking/interfaces/management/ip', - '/endpoints/compute/metadata/host': '/networking/interfaces/management/ip', - '/endpoints/compute/novnc/host': '/networking/interfaces/management/ip', - '/endpoints/compute/service/host': '/networking/interfaces/management/ip', - '/endpoints/compute/xvpvnc/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/admin/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/service/host': '/networking/interfaces/management/ip', - '/endpoints/identity/admin/host': '/networking/interfaces/management/ip', - '/endpoints/identity/service/host': '/networking/interfaces/management/ip', - '/endpoints/image/registry/host': '/networking/interfaces/management/ip', - '/endpoints/image/service/host': '/networking/interfaces/management/ip', - '/endpoints/metering/service/host': '/networking/interfaces/management/ip', - '/endpoints/network/service/host': '/networking/interfaces/management/ip', - '/endpoints/volume/service/host': '/networking/interfaces/management/ip' - }, - 'os-network': { - }, - 'os-compute-worker': { - } - }, - 'role_assign_policy': { - 'default':{ - 'bundles': [], - 'exclusives': ['os-single-controller', 'os-network'], - 'roles': ['os-single-controller', 'os-network', 'os-compute-worker'], - 'default_min': 1, - 'default_max': 1, - 'maxs': {'os-compute-worker':-1} - }, - 'policy_by_host_numbers':{ - '1': { - 'bundles': [['os-single-controller', 'os-network', 'os-compute-worker']], - 'exclusives':[] - }, - '2': { - 'bundles': [['os-network', 'os-compute-worker']], - 'exclusives':['os-single-controller'] - }, - }, - }, - }, - }, - }, -} - -cobbler_EXPECTED = { - 'expected_host_configs': [{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host1.1', - 'hostname': 'host1', - 'modify_interface': { - 'dnsname-eth2': 'floating-host1.1.ods.com', - 'dnsname-eth0': u'host1.1.ods.com', - 'ipaddress-eth2': '10.145.88.100', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.100', - 'netmask-eth2': '255.255.254.0', - 'macaddress-eth0': '00:00:01:02:03:04', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ignore_proxy': '127.0.0.1,localhost,host1.1,192.168.20.100,host2.1,192.168.20.101', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host1.1', - 'chef_node_name': u'host1.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host2.1', - 'hostname': 'host2', - 'modify_interface': { - 'dnsname-eth2': 'floating-host2.1.ods.com', - 'dnsname-eth0': u'host2.1.ods.com', - 'ipaddress-eth2': '10.145.88.101', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.101', - 'netmask-eth2': '255.255.254.0', - 'macaddress-eth0': '00:00:01:02:03:05', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ignore_proxy': '127.0.0.1,localhost,host1.1,192.168.20.100,host2.1,192.168.20.101', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host2.1', - 'chef_node_name': u'host2.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '2.ods.com ods.com', - 'name': 'host1.2', - 'hostname': 'host1', - 'modify_interface': { - 'dnsname-eth2': 'floating-host1.2.ods.com', - 'dnsname-eth0': u'host1.2.ods.com', - 'ipaddress-eth2': '10.145.88.110', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.110', - 'netmask-eth2': '255.255.254.0', - 'macaddress-eth0': '00:00:01:02:03:06', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ignore_proxy': '127.0.0.1,localhost,host1.2,192.168.20.110,host2.2,192.168.20.111', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host1.2', - 'chef_node_name': u'host1.2' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '2.ods.com ods.com', - 'name': 'host2.2', - 'hostname': 'host2', - 'modify_interface': { - 'dnsname-eth2': 'floating-host2.2.ods.com', - 'dnsname-eth0': u'host2.2.ods.com', - 'ipaddress-eth2': '10.145.88.111', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.111', - 'netmask-eth2': '255.255.254.0', - 'macaddress-eth0': '00:00:01:02:03:07', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ignore_proxy': '127.0.0.1,localhost,host1.2,192.168.20.110,host2.2,192.168.20.111', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host2.2', - 'chef_node_name': u'host2.2' - }, - }], -} - -chef_EXPECTED = { - 'expected_configs': { - 'host1.1': { - 'roles_per_target_system': { - 'openstack': ['os-single-controller'], - }, - 'cluster': '1', - 'run_list': ['role[os-single-controller]'] - }, - 'host2.1': { - 'roles_per_target_system': { - 'openstack': ['os-network', 'os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-network]', 'role[os-compute-worker]'] - }, - 'host1.2': { - 'roles_per_target_system': { - 'openstack': ['os-single-controller'], - }, - 'cluster': '2', - 'run_list': ['role[os-single-controller]'] - }, - 'host2.2': { - 'roles_per_target_system': { - 'openstack': ['os-network', 'os-compute-worker'], - }, - 'cluster': '2', - 'run_list': ['role[os-network]', 'role[os-compute-worker]'] - }, - 'openstack': { - '1': { - 'credential': { - 'identity': { - 'users': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'admin': {'username': 'admin', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'object-store': {'username': 'service', 'password': 'huawei'} - } - }, - 'mysql': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'dashboard': {'username': 'service', 'password': 'huawei'}, - 'super': {'password': 'huawei'}, - 'identity': {'username': 'service', 'password': 'huawei'} - } - }, - 'networking': { - 'control': {'interface': 'eth0'}, - 'storage': {'interface': 'eth0'}, - 'public': {'interface': 'eth2'}, - 'tenant': {'interface': 'eth0'} - }, - 'ntp': {'ntpserver': '192.168.20.254'}, - 'db': { - 'mysql': { - 'bind_address': '192.168.20.100' - } - }, - 'dashboard_roles': ['os-single-controller'], - 'mq': { - 'rabbitmq': {'bind_address': '192.168.20.100'} - }, - 'endpoints': { - 'compute': { - 'novnc': {'host': '192.168.20.100'}, - 'xvpvnc': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'}, - 'metadata': {'host': '192.168.20.100'} - }, - 'network': { - 'service': {'host': '192.168.20.100'} - }, - 'image': { - 'registry': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'metering': { - 'service': {'host': '192.168.20.100'} - }, - 'volume': { - 'service': {'host': '192.168.20.100'} - }, - 'ec2': { - 'admin': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'identity': { - 'admin': {'host': u'192.168.20.100'}, - 'service': {'host': u'192.168.20.100'} - }, - }, - }, - '2': { - 'credential': { - 'identity': { - 'users': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'admin': {'username': 'admin', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'object-store': {'username': 'service', 'password': 'huawei'} - } - }, - 'mysql': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'dashboard': {'username': 'service', 'password': 'huawei'}, - 'super': {'password': 'huawei'}, - 'identity': {'username': 'service', 'password': 'huawei'} - } - }, - 'networking': { - 'control': {'interface': 'eth0'}, - 'storage': {'interface': 'eth0'}, - 'public': {'interface': 'eth2'}, - 'tenant': {'interface': 'eth0'} - }, - 'ntp': {'ntpserver': '192.168.20.254'}, - 'db': { - 'mysql': { - 'bind_address': '192.168.20.110' - } - }, - 'dashboard_roles': ['os-single-controller'], - 'mq': { - 'rabbitmq': {'bind_address': '192.168.20.110'} - }, - 'endpoints': { - 'compute': { - 'novnc': {'host': '192.168.20.110'}, - 'xvpvnc': {'host': '192.168.20.110'}, - 'service': {'host': '192.168.20.110'}, - 'metadata': {'host': '192.168.20.110'} - }, - 'network': { - 'service': {'host': '192.168.20.110'} - }, - 'image': { - 'registry': {'host': '192.168.20.110'}, - 'service': {'host': '192.168.20.110'} - }, - 'metering': { - 'service': {'host': '192.168.20.110'} - }, - 'volume': { - 'service': {'host': '192.168.20.110'} - }, - 'ec2': { - 'admin': {'host': '192.168.20.110'}, - 'service': {'host': '192.168.20.110'} - }, - 'identity': { - 'admin': {'host': u'192.168.20.110'}, - 'service': {'host': u'192.168.20.110'} - }, - }, - }, - }, - }, -} diff --git a/compass/tests/actions/deploy/data/test4 b/compass/tests/actions/deploy/data/test4 deleted file mode 100644 index be072e90..00000000 --- a/compass/tests/actions/deploy/data/test4 +++ /dev/null @@ -1,267 +0,0 @@ -import simplejson as json - -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-single-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute-worker', 'target_system': 'openstack'}, -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor_info': 'huawei', 'credential_data': json.dumps({'version': 'v2c', 'community': 'public'})}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security_config': json.dumps({ - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }), - 'networking_config': json.dumps({ - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }), - 'partition_config': json.dumps('/home 20%%;/tmp 10%%;/var 30%%;'), - }, -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'host1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config_data': json.dumps({ - 'netwoon.dumps(king': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': ["os-dashboard"], - }), - }, - ], -} - - -cobbler_MOCK = { - 'host_configs': [] -} - -chef_MOCK = { - 'configs': { - 'openstack': { - 'env_default': { - 'all_roles': { - 'os-single-controller': 'openstack controller node', - 'os-network': 'openstack network node', - 'os-compute-worker': 'openstack nova node' - }, - 'config_mapping': { - '/credential/identity/users/admin': '/security/console_credentials', - '/credential/identity/users/compute': '/security/service_credentials', - '/credential/identity/users/image': '/security/service_credentials', - '/credential/identity/users/metering': '/security/service_credentials', - '/credential/identity/users/network': '/security/service_credentials', - '/credential/identity/users/object-store': '/security/service_credentials', - '/credential/identity/users/volume': '/security/service_credentials', - '/credential/mysql/compute': '/security/service_credentials', - '/credential/mysql/dashboard': '/security/service_credentials', - '/credential/mysql/identity': '/security/service_credentials', - '/credential/mysql/image': '/security/service_credentials', - '/credential/mysql/metering': '/security/service_credentials', - '/credential/mysql/network': '/security/service_credentials', - '/credential/mysql/volume': '/security/service_credentials', - '/credential/mysql/super/password': '/security/service_credentials/password', - '/networking/control/interface': '/networking/interfaces/management/nic', - '/ntp/ntpserver': '/networking/global/ntp_server', - '/networking/storage/interface': '/networking/interfaces/storage/nic', - '/networking/public/interface': '/networking/interfaces/public/nic', - '/networking/tenant/interface': '/networking/interfaces/tenant/nic', - '/networking/plugins/ovs/gre/local_ip_interface': '/networking/interfaces/tenant/nic', - }, - 'role_mapping': { - 'os-single-controller': { - '/db/mysql/bind_address': '/networking/interfaces/management/ip', - '/mq/rabbitmq/bind_address': '/networking/interfaces/management/ip', - '/endpoints/compute/metadata/host': '/networking/interfaces/management/ip', - '/endpoints/compute/novnc/host': '/networking/interfaces/management/ip', - '/endpoints/compute/service/host': '/networking/interfaces/management/ip', - '/endpoints/compute/xvpvnc/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/admin/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/service/host': '/networking/interfaces/management/ip', - '/endpoints/identity/admin/host': '/networking/interfaces/management/ip', - '/endpoints/identity/service/host': '/networking/interfaces/management/ip', - '/endpoints/image/registry/host': '/networking/interfaces/management/ip', - '/endpoints/image/service/host': '/networking/interfaces/management/ip', - '/endpoints/metering/service/host': '/networking/interfaces/management/ip', - '/endpoints/network/service/host': '/networking/interfaces/management/ip', - '/endpoints/volume/service/host': '/networking/interfaces/management/ip' - }, - 'os-network': { - }, - 'os-compute-worker': { - } - }, - 'dashboard_roles': ['os-single-controller', 'os-dashboard'], - 'role_assign_policy': { - 'default':{ - 'bundles': [], - 'exclusives': ['os-single-controller', 'os-network'], - 'roles': ['os-single-controller', 'os-network', 'os-compute-worker'], - 'default_min': 1, - 'default_max': 1, - 'maxs': {'os-compute-worker':-1} - }, - 'policy_by_host_numbers':{ - '1': { - 'bundles': [['os-single-controller', 'os-network', 'os-compute-worker']], - 'exclusives':[] - }, - '2': { - 'bundles': [['os-network', 'os-compute-worker']], - 'exclusives':['os-single-controller'] - }, - }, - }, - }, - }, - }, -} - -cobbler_EXPECTED = { - 'expected_host_configs': [{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host1.1', - 'hostname': 'host1', - 'modify_interface': { - 'dnsname-eth2': 'floating-host1.1.ods.com', - 'dnsname-eth0': u'host1.1.ods.com', - 'ipaddress-eth2': '10.145.88.100', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.100', - 'netmask-eth2': '255.255.254.0', - 'macaddress-eth0': '00:00:01:02:03:04', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ignore_proxy': '127.0.0.1,localhost,host1.1,192.168.20.100', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host1.1', - 'chef_node_name': u'host1.1' - }, - }], -} - -chef_EXPECTED = { - 'expected_configs': { - 'host1.1': { - 'roles_per_target_system': { - 'openstack': ['os-dashboard'], - }, - 'cluster': '1', - 'run_list': ['role[os-dashboard]'] - }, - 'openstack': { - '1': { - 'credential': { - 'identity': { - 'users': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'admin': {'username': 'admin', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'object-store': {'username': 'service', 'password': 'huawei'} - } - }, - 'mysql': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'dashboard': {'username': 'service', 'password': 'huawei'}, - 'super': {'password': 'huawei'}, - 'identity': {'username': 'service', 'password': 'huawei'} - } - }, - 'networking': { - 'control': {'interface': 'eth0'}, - 'storage': {'interface': 'eth0'}, - 'public': {'interface': 'eth2'}, - 'tenant': {'interface': 'eth0'} - }, - 'ntp': {'ntpserver': '192.168.20.254'}, - }, - }, - }, -} diff --git a/compass/tests/actions/deploy/data/test5 b/compass/tests/actions/deploy/data/test5 deleted file mode 100644 index 3f0742d5..00000000 --- a/compass/tests/actions/deploy/data/test5 +++ /dev/null @@ -1,340 +0,0 @@ -import simplejson as json - -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-single-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute-worker', 'target_system': 'openstack'}, -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor_info': 'huawei', 'credential_data': json.dumps({'version': 'v2c', 'community': 'public'})}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security_config': json.dumps({ - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }), - 'networking_config': json.dumps({ - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }), - 'partition_config': json.dumps('/home 20%%;/tmp 10%%;/var 30%%;'), - }, -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'host1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': ["os-single-controller", "os-network", "os-compute-worker"], - }), - }, - ], -} - - -cobbler_MOCK = { - 'host_configs': [] -} - -chef_MOCK = { - 'configs': { - 'openstack': { - 'env_default': { - 'all_roles': { - 'os-single-controller': 'openstack controller node', - 'os-network': 'openstack network node', - 'os-compute-worker': 'openstack nova node' - }, - 'test_roles': { - 'default': ['test-synclog'] - }, - 'debugging': { - 'debug': 'False', - 'verbose': 'False' - }, - 'config_mapping': { - '/credential/identity/users/admin': '/security/console_credentials', - '/credential/identity/users/compute': '/security/service_credentials', - '/credential/identity/users/image': '/security/service_credentials', - '/credential/identity/users/metering': '/security/service_credentials', - '/credential/identity/users/network': '/security/service_credentials', - '/credential/identity/users/object-store': '/security/service_credentials', - '/credential/identity/users/volume': '/security/service_credentials', - '/credential/mysql/compute': '/security/service_credentials', - '/credential/mysql/dashboard': '/security/service_credentials', - '/credential/mysql/identity': '/security/service_credentials', - '/credential/mysql/image': '/security/service_credentials', - '/credential/mysql/metering': '/security/service_credentials', - '/credential/mysql/network': '/security/service_credentials', - '/credential/mysql/volume': '/security/service_credentials', - '/credential/mysql/super/password': '/security/service_credentials/password', - '/networking/control/interface': '/networking/interfaces/management/nic', - '/ntp/ntpserver': '/networking/global/ntp_server', - '/networking/storage/interface': '/networking/interfaces/storage/nic', - '/networking/public/interface': '/networking/interfaces/public/nic', - '/networking/tenant/interface': '/networking/interfaces/tenant/nic', - '/networking/plugins/ovs/gre/local_ip_interface': '/networking/interfaces/tenant/nic', - }, - 'role_mapping': { - 'os-single-controller': { - '/db/mysql/bind_address': '/networking/interfaces/management/ip', - '/mq/rabbitmq/bind_address': '/networking/interfaces/management/ip', - '/endpoints/compute/metadata/host': '/networking/interfaces/management/ip', - '/endpoints/compute/novnc/host': '/networking/interfaces/management/ip', - '/endpoints/compute/service/host': '/networking/interfaces/management/ip', - '/endpoints/compute/xvpvnc/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/admin/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/service/host': '/networking/interfaces/management/ip', - '/endpoints/identity/admin/host': '/networking/interfaces/management/ip', - '/endpoints/identity/service/host': '/networking/interfaces/management/ip', - '/endpoints/image/registry/host': '/networking/interfaces/management/ip', - '/endpoints/image/service/host': '/networking/interfaces/management/ip', - '/endpoints/metering/service/host': '/networking/interfaces/management/ip', - '/endpoints/network/service/host': '/networking/interfaces/management/ip', - '/endpoints/volume/service/host': '/networking/interfaces/management/ip' - }, - 'os-network': { - }, - 'os-compute-worker': { - } - }, - 'dashboard_roles': ['os-single-controller'], - 'role_assign_policy': { - 'default':{ - 'bundles': [], - 'exclusives': ['os-single-controller', 'os-network'], - 'roles': ['os-single-controller', 'os-network', 'os-compute-worker'], - 'default_min': 1, - 'default_max': 1, - 'maxs': {'os-compute-worker': -1}, - 'default_dependencies': [], - 'dependencies': {'default': ['test-synclog']} - }, - 'policy_by_host_numbers':{ - '1': { - 'bundles': [['os-single-controller', 'os-network', 'os-compute-worker']], - 'exclusives':[] - }, - '2': { - 'bundles': [['os-network', 'os-compute-worker']], - 'exclusives':['os-single-controller'] - }, - }, - }, - }, - }, - }, -} - -cobbler_EXPECTED = { - 'expected_host_configs': [{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host1.1', - 'hostname': 'host1', - 'modify_interface': { - 'dnsname-eth2': 'floating-host1.1.ods.com', - 'dnsname-eth0': u'host1.1.ods.com', - 'ipaddress-eth2': '10.145.88.100', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.100', - 'netmask-eth2': '255.255.254.0', - 'macaddress-eth0': '00:00:01:02:03:04', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ignore_proxy': '127.0.0.1,localhost,host1.1,192.168.20.100', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host1.1', - 'chef_node_name': u'host1.1' - }, - }], -} - -chef_EXPECTED = { - 'expected_configs': { - 'host1.1': { - 'roles_per_target_system': { - 'openstack': ['test-synclog', 'os-single-controller', 'os-network', 'os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[test-synclog]', 'role[os-single-controller]', 'role[os-network]', 'role[os-compute-worker]'] - }, - 'openstack': { - '1': { - 'credential': { - 'identity': { - 'users': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'admin': {'username': 'admin', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'object-store': {'username': 'service', 'password': 'huawei'} - } - }, - 'mysql': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'dashboard': {'username': 'service', 'password': 'huawei'}, - 'super': {'password': 'huawei'}, - 'identity': {'username': 'service', 'password': 'huawei'} - } - }, - 'networking': { - 'control': {'interface': 'eth0'}, - 'storage': {'interface': 'eth0'}, - 'public': {'interface': 'eth2'}, - 'tenant': {'interface': 'eth0'} - }, - 'debugging': { - 'debug': 'True', - 'verbose': 'True' - }, - 'ntp': {'ntpserver': '192.168.20.254'}, - 'db': { - 'mysql': { - 'bind_address': '192.168.20.100' - } - }, - 'role_assign_policy': { - 'default':{ - 'bundles': [], - 'exclusives': ['os-single-controller', 'os-network'], - 'roles': ['os-single-controller', 'os-network', 'os-compute-worker'], - 'default_min': 1, - 'default_max': 1, - 'maxs': {'os-compute-worker':-1}, - 'default_dependencies': [], - 'dependencies': {'default': ['test-synclog']} - }, - 'policy_by_host_numbers':{ - '1': { - 'bundles': [['os-single-controller', 'os-network', 'os-compute-worker']], - 'exclusives':[] - }, - '2': { - 'bundles': [['os-network', 'os-compute-worker']], - 'exclusives':['os-single-controller'] - }, - }, - }, - 'dashboard_roles': ['os-single-controller'], - 'mq': { - 'rabbitmq': {'bind_address': '192.168.20.100'} - }, - 'endpoints': { - 'compute': { - 'novnc': {'host': '192.168.20.100'}, - 'xvpvnc': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'}, - 'metadata': {'host': '192.168.20.100'} - }, - 'network': { - 'service': {'host': '192.168.20.100'} - }, - 'image': { - 'registry': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'metering': { - 'service': {'host': '192.168.20.100'} - }, - 'volume': { - 'service': {'host': '192.168.20.100'} - }, - 'ec2': { - 'admin': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'identity': { - 'admin': {'host': u'192.168.20.100'}, - 'service': {'host': u'192.168.20.100'} - }, - }, - }, - }, - }, -} diff --git a/compass/tests/actions/deploy/data/test6 b/compass/tests/actions/deploy/data/test6 deleted file mode 100644 index 0bb77256..00000000 --- a/compass/tests/actions/deploy/data/test6 +++ /dev/null @@ -1,780 +0,0 @@ -import simplejson as json - -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-single-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute-worker', 'target_system': 'openstack'}, -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor_info': 'huawei', 'credential_data': json.dumps({'version': 'v2c', 'community': 'public'})}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - {'mac': '00:00:01:02:03:05', 'port': 2, 'vlan': 1}, - {'mac': '00:00:01:02:03:06', 'port': 3, 'vlan': 1}, - {'mac': '00:00:01:02:03:07', 'port': 4, 'vlan': 1}, - {'mac': '00:00:01:02:03:08', 'port': 5, 'vlan': 1}, - {'mac': '00:00:01:02:03:09', 'port': 6, 'vlan': 1}, - {'mac': '00:00:01:02:03:10', 'port': 7, 'vlan': 1}, - {'mac': '00:00:01:02:03:11', 'port': 8, 'vlan': 1}, - {'mac': '00:00:01:02:03:12', 'port': 9, 'vlan': 1}, - {'mac': '00:00:01:02:03:13', 'port': 10, 'vlan': 1}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security_config': json.dumps({ - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }), - 'networking_config': json.dumps({ - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }), - 'partition_config': json.dumps('/home 20%%;/tmp 10%%;/var 30%%;'), - }, -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'host1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host2', - 'mac': '00:00:01:02:03:05', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.101', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host3', - 'mac': '00:00:01:02:03:06', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.102', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host4', - 'mac': '00:00:01:02:03:07', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.103', - }, - }, - }, - 'roles': ["os-compute-worker"], - }), - }, - { - 'hostname': 'host5', - 'mac': '00:00:01:02:03:08', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.104', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host6', - 'mac': '00:00:01:02:03:09', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.105', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host7', - 'mac': '00:00:01:02:03:10', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.106', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host8', - 'mac': '00:00:01:02:03:11', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.107', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host9', - 'mac': '00:00:01:02:03:12', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.108', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host10', - 'mac': '00:00:01:02:03:13', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.109', - }, - }, - }, - 'roles': [], - }), - }, - ], -} - - -cobbler_MOCK = { - 'host_configs': [] -} - -chef_MOCK = { - 'configs': { - 'openstack': { - 'env_default': { - 'all_roles': { - 'os-single-controller': 'openstack controller node', - 'os-network': 'openstack network node', - 'os-compute-worker': 'openstack nova node' - }, - 'config_mapping': { - '/credential/identity/users/admin': '/security/console_credentials', - '/credential/identity/users/compute': '/security/service_credentials', - '/credential/identity/users/image': '/security/service_credentials', - '/credential/identity/users/metering': '/security/service_credentials', - '/credential/identity/users/network': '/security/service_credentials', - '/credential/identity/users/object-store': '/security/service_credentials', - '/credential/identity/users/volume': '/security/service_credentials', - '/credential/mysql/compute': '/security/service_credentials', - '/credential/mysql/dashboard': '/security/service_credentials', - '/credential/mysql/identity': '/security/service_credentials', - '/credential/mysql/image': '/security/service_credentials', - '/credential/mysql/metering': '/security/service_credentials', - '/credential/mysql/network': '/security/service_credentials', - '/credential/mysql/volume': '/security/service_credentials', - '/credential/mysql/super/password': '/security/service_credentials/password', - '/networking/control/interface': '/networking/interfaces/management/nic', - '/ntp/ntpserver': '/networking/global/ntp_server', - '/networking/storage/interface': '/networking/interfaces/storage/nic', - '/networking/public/interface': '/networking/interfaces/public/nic', - '/networking/tenant/interface': '/networking/interfaces/tenant/nic', - '/networking/plugins/ovs/gre/local_ip_interface': '/networking/interfaces/tenant/nic', - }, - 'role_mapping': { - 'os-single-controller': { - '/db/mysql/bind_address': '/networking/interfaces/management/ip', - '/mq/rabbitmq/bind_address': '/networking/interfaces/management/ip', - '/endpoints/compute/metadata/host': '/networking/interfaces/management/ip', - '/endpoints/compute/novnc/host': '/networking/interfaces/management/ip', - '/endpoints/compute/service/host': '/networking/interfaces/management/ip', - '/endpoints/compute/xvpvnc/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/admin/host': '/networking/interfaces/management/ip', - '/endpoints/ec2/service/host': '/networking/interfaces/management/ip', - '/endpoints/identity/admin/host': '/networking/interfaces/management/ip', - '/endpoints/identity/service/host': '/networking/interfaces/management/ip', - '/endpoints/image/registry/host': '/networking/interfaces/management/ip', - '/endpoints/image/service/host': '/networking/interfaces/management/ip', - '/endpoints/metering/service/host': '/networking/interfaces/management/ip', - '/endpoints/network/service/host': '/networking/interfaces/management/ip', - '/endpoints/volume/service/host': '/networking/interfaces/management/ip' - }, - 'os-network': { - }, - 'os-compute-worker': { - } - }, - 'dashboard_roles': ['os-single-controller'], - 'role_assign_policy': { - 'default':{ - 'bundles': [], - 'exclusives': ['os-single-controller', 'os-network'], - 'roles': ['os-single-controller', 'os-network', 'os-compute-worker'], - 'default_min': 1, - 'default_max': 1, - 'maxs': {'os-compute-worker':-1} - }, - 'policy_by_host_numbers':{ - '1': { - 'bundles': [['os-single-controller', 'os-network', 'os-compute-worker']], - 'exclusives':[] - }, - '2': { - 'bundles': [['os-compute-worker','os-network']], - 'exclusives':['os-single-controller'] - }, - }, - }, - }, - }, - }, -} - -cobbler_EXPECTED = { - 'expected_host_configs': [{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host1.1', - 'hostname': 'host1', - 'modify_interface': { - 'dnsname-eth2': 'floating-host1.1.ods.com', - 'dnsname-eth0': u'host1.1.ods.com', - 'ipaddress-eth2': '10.145.88.100', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.100', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host1.1', - 'chef_node_name': u'host1.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host2.1', - 'hostname': 'host2', - 'modify_interface': { - 'dnsname-eth2': 'floating-host2.1.ods.com', - 'dnsname-eth0': u'host2.1.ods.com', - 'ipaddress-eth2': '10.145.88.101', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.101', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host2.1', - 'chef_node_name': u'host2.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host3.1', - 'hostname': 'host3', - 'modify_interface': { - 'dnsname-eth2': 'floating-host3.1.ods.com', - 'dnsname-eth0': u'host3.1.ods.com', - 'ipaddress-eth2': '10.145.88.102', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.102', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host3.1', - 'chef_node_name': u'host3.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host4.1', - 'hostname': 'host4', - 'modify_interface': { - 'dnsname-eth2': 'floating-host4.1.ods.com', - 'dnsname-eth0': u'host4.1.ods.com', - 'ipaddress-eth2': '10.145.88.103', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.103', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host4.1', - 'chef_node_name': u'host4.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host5.1', - 'hostname': 'host5', - 'modify_interface': { - 'dnsname-eth2': 'floating-host5.1.ods.com', - 'dnsname-eth0': u'host5.1.ods.com', - 'ipaddress-eth2': '10.145.88.104', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.104', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host5.1', - 'chef_node_name': u'host5.1' - }, - }, { - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host6.1', - 'hostname': 'host6', - 'modify_interface': { - 'dnsname-eth2': 'floating-host6.1.ods.com', - 'dnsname-eth0': u'host6.1.ods.com', - 'ipaddress-eth2': '10.145.88.105', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.105', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host6.1', - 'chef_node_name': u'host6.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host7.1', - 'hostname': 'host7', - 'modify_interface': { - 'dnsname-eth2': 'floating-host7.1.ods.com', - 'dnsname-eth0': u'host7.1.ods.com', - 'ipaddress-eth2': '10.145.88.106', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.106', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host7.1', - 'chef_node_name': u'host7.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host8.1', - 'hostname': 'host8', - 'modify_interface': { - 'dnsname-eth2': 'floating-host8.1.ods.com', - 'dnsname-eth0': u'host8.1.ods.com', - 'ipaddress-eth2': '10.145.88.107', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.107', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host8.1', - 'chef_node_name': u'host8.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host9.1', - 'hostname': 'host9', - 'modify_interface': { - 'dnsname-eth2': 'floating-host9.1.ods.com', - 'dnsname-eth0': u'host9.1.ods.com', - 'ipaddress-eth2': '10.145.88.108', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.108', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host9.1', - 'chef_node_name': u'host9.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host10.1', - 'hostname': 'host10', - 'modify_interface': { - 'dnsname-eth2': 'floating-host10.1.ods.com', - 'dnsname-eth0': u'host10.1.ods.com', - 'ipaddress-eth2': '10.145.88.109', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.109', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host10.1', - 'chef_node_name': u'host10.1' - }, - }], -} - -chef_EXPECTED = { - 'expected_configs': { - 'host1.1': { - 'roles_per_target_system': { - 'openstack': ['os-single-controller'], - }, - 'cluster': '1', - 'run_list': ['role[os-single-controller]'] - }, - 'host2.1': { - 'roles_per_target_system': { - 'openstack': ['os-network'], - }, - 'cluster': '1', - 'run_list': ['role[os-network]'] - }, - 'host3.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'host4.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'host5.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'host6.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'host7.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'host8.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'host9.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'host10.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'openstack': { - '1': { - 'credential': { - 'identity': { - 'users': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'admin': {'username': 'admin', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'object-store': {'username': 'service', 'password': 'huawei'} - } - }, - 'mysql': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'dashboard': {'username': 'service', 'password': 'huawei'}, - 'super': {'password': 'huawei'}, - 'identity': {'username': 'service', 'password': 'huawei'} - } - }, - 'networking': { - 'control': {'interface': 'eth0'}, - 'storage': {'interface': 'eth0'}, - 'public': {'interface': 'eth2'}, - 'tenant': {'interface': 'eth0'} - }, - 'ntp': {'ntpserver': '192.168.20.254'}, - 'db': { - 'mysql': { - 'bind_address': '192.168.20.100' - } - }, - 'dashboard_roles': ['os-single-controller'], - 'mq': { - 'rabbitmq': {'bind_address': '192.168.20.100'} - }, - 'endpoints': { - 'compute': { - 'novnc': {'host': '192.168.20.100'}, - 'xvpvnc': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'}, - 'metadata': {'host': '192.168.20.100'} - }, - 'network': { - 'service': {'host': '192.168.20.100'} - }, - 'image': { - 'registry': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'metering': { - 'service': {'host': '192.168.20.100'} - }, - 'volume': { - 'service': {'host': '192.168.20.100'} - }, - 'ec2': { - 'admin': {'host': '192.168.20.100'}, - 'service': {'host': '192.168.20.100'} - }, - 'identity': { - 'admin': {'host': u'192.168.20.100'}, - 'service': {'host': u'192.168.20.100'} - }, - }, - }, - }, - }, -} diff --git a/compass/tests/actions/deploy/data/test7 b/compass/tests/actions/deploy/data/test7 deleted file mode 100644 index ffa04f27..00000000 --- a/compass/tests/actions/deploy/data/test7 +++ /dev/null @@ -1,904 +0,0 @@ -import simplejson as json - -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute-worker', 'target_system': 'openstack'}, - {'name': 'os-ha', 'target_system': 'openstack'}, - {'name': 'os-image', 'target_system': 'openstack'}, - {'name': 'os-ops-database', 'target_system': 'openstack'}, - {'name': 'os-ops-messaging', 'target_system': 'openstack'}, - {'name': 'os-block-storage-worker', 'target_system': 'openstack'} -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor_info': 'huawei', 'credential_data': json.dumps({'version': 'v2c', 'community': 'public'})}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - {'mac': '00:00:01:02:03:05', 'port': 2, 'vlan': 1}, - {'mac': '00:00:01:02:03:06', 'port': 3, 'vlan': 1}, - {'mac': '00:00:01:02:03:07', 'port': 4, 'vlan': 1}, - {'mac': '00:00:01:02:03:08', 'port': 5, 'vlan': 1}, - {'mac': '00:00:01:02:03:09', 'port': 6, 'vlan': 1}, - {'mac': '00:00:01:02:03:10', 'port': 7, 'vlan': 1}, - {'mac': '00:00:01:02:03:11', 'port': 8, 'vlan': 1}, - {'mac': '00:00:01:02:03:12', 'port': 9, 'vlan': 1}, - {'mac': '00:00:01:02:03:13', 'port': 10, 'vlan': 1}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security_config': json.dumps({ - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }), - 'networking_config': json.dumps({ - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1', - 'ha_vip': '192.168.20.253' - }, - }), - 'partition_config': json.dumps('/home 20%%;/tmp 10%%;/var 30%%;'), - }, -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'host1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': ["os-ha"], - }), - }, - { - 'hostname': 'host2', - 'mac': '00:00:01:02:03:05', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.101', - }, - }, - }, - 'roles': ["os-ha"], - }), - }, - { - 'hostname': 'host3', - 'mac': '00:00:01:02:03:06', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.102', - }, - }, - }, - 'roles': ["os-controller", "os-image"], - }), - }, - { - 'hostname': 'host4', - 'mac': '00:00:01:02:03:07', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.103', - }, - }, - }, - 'roles': ["os-controller", "os-compute-vncproxy"], - }), - }, - { - 'hostname': 'host5', - 'mac': '00:00:01:02:03:08', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.104', - }, - }, - }, - 'roles': ["os-controller", "os-block-storage-worker"], - }), - }, - { - 'hostname': 'host6', - 'mac': '00:00:01:02:03:09', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.105', - }, - }, - }, - 'roles': ["os-ops-database", "os-ops-messaging"], - }), - }, - { - 'hostname': 'host7', - 'mac': '00:00:01:02:03:10', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.106', - }, - }, - }, - 'roles': ["os-network"], - }), - }, - { - 'hostname': 'host8', - 'mac': '00:00:01:02:03:11', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.107', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host9', - 'mac': '00:00:01:02:03:12', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.108', - }, - }, - }, - 'roles': [], - }), - }, - { - 'hostname': 'host10', - 'mac': '00:00:01:02:03:13', - 'mutable': False, - 'config_data': json.dumps({ - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.109', - }, - }, - }, - 'roles': [], - }), - }, - ], -} - - -cobbler_MOCK = { - 'host_configs': [] -} - -chef_MOCK = { - 'configs': { - 'openstack': { - 'env_default': { - 'all_roles': { - "os-block-storage-worker": "openstack block storage node", - "os-controller": "openstack controller node", - "os-network": "openstack network node", - "os-ops-messaging": "openstack message queue node", - "os-image": "openstack image node", - "os-ops-database": "openstack database node", - "os-compute-worker":"openstack nova node", - "os-ha":"Software load balance node", - "os-compute-vncproxy": "vnc proxy" - }, - 'config_mapping': { - '/credential/identity/users/admin': '/security/console_credentials', - '/credential/identity/users/compute': '/security/service_credentials', - '/credential/identity/users/image': '/security/service_credentials', - '/credential/identity/users/metering': '/security/service_credentials', - '/credential/identity/users/network': '/security/service_credentials', - '/credential/identity/users/object-store': '/security/service_credentials', - '/credential/identity/users/volume': '/security/service_credentials', - '/credential/mysql/compute': '/security/service_credentials', - '/credential/mysql/dashboard': '/security/service_credentials', - '/credential/mysql/identity': '/security/service_credentials', - '/credential/mysql/image': '/security/service_credentials', - '/credential/mysql/metering': '/security/service_credentials', - '/credential/mysql/network': '/security/service_credentials', - '/credential/mysql/volume': '/security/service_credentials', - '/credential/mysql/super/password': '/security/service_credentials/password', - '/networking/control/interface': '/networking/interfaces/management/nic', - '/ntp/ntpserver': '/networking/global/ntp_server', - '/networking/storage/interface': '/networking/interfaces/storage/nic', - '/networking/public/interface': '/networking/interfaces/public/nic', - '/networking/tenant/interface': '/networking/interfaces/tenant/nic', - '/networking/plugins/ovs/gre/local_ip_interface': '/networking/interfaces/tenant/nic', - "/ha/haproxy/vip": "/networking/global/ha_vip", - "/ha/keepalived/instance_name/vip": "/networking/global/ha_vip" - }, - 'read_config_mapping': { - "/dashboard_roles": "/dashboard_roles", - "/haproxy_roles": "/haproxy_roles", - "/test_roles": "/test_roles", - "/haproxy/router_id_prefix": "/ha/keepalived/router_id_prefix", - "/haproxy/default_priority": "/ha/keepalived/default_priority", - "/haproxy/default_state": "/ha/keepalived/default_state", - "/haproxy/states_to_assign": "/ha/keepalived/states_to_assign" - }, - 'role_mapping': { - "os-controller": { - "/endpoints/compute/metadata/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/compute/service/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/compute/xvpvnc/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/ec2/admin/host":[ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/ec2/service/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/identity/admin/host":[ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/identity/service/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/metering/service/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/network/service/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/volume/service/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ] - }, - "os-compute-vncproxy": { - "/endpoints/compute/novnc/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ] - }, - "os-ops-database": { - "/db/mysql/bind_address": "/networking/interfaces/management/ip" - }, - "os-ops-messaging": { - "/mq/rabbitmq/bind_address": "/networking/interfaces/management/ip" - }, - "os-image": { - "/endpoints/image/registry/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ], - "/endpoints/image/service/host": [ - "/networking/global/ha_vip", - "/networking/interfaces/management/ip" - ] - } - }, - 'ha': { - "status": "disable", - "haproxy":{ - "vip": "", - "roles":{ - "os-controller": [ - "dashboard_http", "dashboard_https", "keystone_admin", - "keystone_public_internal", "nova_ec2_api", "nova_compute_api", - "cinder_api", "neutron_api", "novncproxy" - ], - "os-image": [ - "glance_api", "glance_registry_cluster" - ] - } - }, - "keepalived": { - "router_id_prefix": "lsb", - "default_priority": 100, - "default_state": "SLAVE", - "states_to_assign": ["MASTER"], - "router_ids":{}, - "instance_name":{ - "vip": "", - "priorities": {}, - "states":{} - } - } - }, - "test_roles": { - "default":["test-synclog"] - }, - 'haproxy_roles': ["os-ha"], - 'dashboard_roles': ['os-controller'], - 'role_assign_policy': { - 'default': { - "bundles":[], - "exclusives":["os-controller"], - "roles":[ - "os-ha", - "os-ops-database", - "os-ops-messaging", - "os-controller", - "os-compute-vncproxy", - "os-image", - "os-block-storage-worker", - "os-network", - "os-compute-worker" - ], - "default_min": 1, - "default_max": 1, - "maxs":{ - "os-compute-worker":-1, - "os-ha":0 - }, - "mins":{ - "os-ha":0 - }, - "default_dependencies":[], - "dependencies":{}, - "default_post_roles":[], - "post_roles":{} - }, - 'policy_by_host_numbers': { - "1": { - "bundles": [ - [ - "os-ops-database", - "os-ops-messaging", - "os-controller", - "os-compute-vncproxy", - "os-image", - "os-block-storage-worker", - "os-network", - "os-compute-worker" - ] - ] - } - }, - }, - }, - }, - }, -} - -cobbler_EXPECTED = { - 'expected_host_configs': [{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host1.1', - 'hostname': 'host1', - 'modify_interface': { - 'dnsname-eth2': 'floating-host1.1.ods.com', - 'dnsname-eth0': u'host1.1.ods.com', - 'ipaddress-eth2': '10.145.88.100', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.100', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host1.1', - 'chef_node_name': u'host1.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host2.1', - 'hostname': 'host2', - 'modify_interface': { - 'dnsname-eth2': 'floating-host2.1.ods.com', - 'dnsname-eth0': u'host2.1.ods.com', - 'ipaddress-eth2': '10.145.88.101', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.101', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host2.1', - 'chef_node_name': u'host2.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host3.1', - 'hostname': 'host3', - 'modify_interface': { - 'dnsname-eth2': 'floating-host3.1.ods.com', - 'dnsname-eth0': u'host3.1.ods.com', - 'ipaddress-eth2': '10.145.88.102', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.102', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host3.1', - 'chef_node_name': u'host3.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host4.1', - 'hostname': 'host4', - 'modify_interface': { - 'dnsname-eth2': 'floating-host4.1.ods.com', - 'dnsname-eth0': u'host4.1.ods.com', - 'ipaddress-eth2': '10.145.88.103', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.103', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host4.1', - 'chef_node_name': u'host4.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host5.1', - 'hostname': 'host5', - 'modify_interface': { - 'dnsname-eth2': 'floating-host5.1.ods.com', - 'dnsname-eth0': u'host5.1.ods.com', - 'ipaddress-eth2': '10.145.88.104', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.104', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host5.1', - 'chef_node_name': u'host5.1' - }, - }, { - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host6.1', - 'hostname': 'host6', - 'modify_interface': { - 'dnsname-eth2': 'floating-host6.1.ods.com', - 'dnsname-eth0': u'host6.1.ods.com', - 'ipaddress-eth2': '10.145.88.105', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.105', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host6.1', - 'chef_node_name': u'host6.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host7.1', - 'hostname': 'host7', - 'modify_interface': { - 'dnsname-eth2': 'floating-host7.1.ods.com', - 'dnsname-eth0': u'host7.1.ods.com', - 'ipaddress-eth2': '10.145.88.106', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.106', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host7.1', - 'chef_node_name': u'host7.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host8.1', - 'hostname': 'host8', - 'modify_interface': { - 'dnsname-eth2': 'floating-host8.1.ods.com', - 'dnsname-eth0': u'host8.1.ods.com', - 'ipaddress-eth2': '10.145.88.107', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.107', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host8.1', - 'chef_node_name': u'host8.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host9.1', - 'hostname': 'host9', - 'modify_interface': { - 'dnsname-eth2': 'floating-host9.1.ods.com', - 'dnsname-eth0': u'host9.1.ods.com', - 'ipaddress-eth2': '10.145.88.108', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.108', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host9.1', - 'chef_node_name': u'host9.1' - }, - },{ - 'profile': 'CentOS', - 'name_servers_search': '1.ods.com ods.com', - 'name': 'host10.1', - 'hostname': 'host10', - 'modify_interface': { - 'dnsname-eth2': 'floating-host10.1.ods.com', - 'dnsname-eth0': u'host10.1.ods.com', - 'ipaddress-eth2': '10.145.88.109', - 'static-eth2': True, - 'static-eth0': True, - 'netmask-eth0': '255.255.255.0', - 'ipaddress-eth0': u'192.168.20.109', - 'netmask-eth2': '255.255.254.0', - 'management-eth2': False, - 'management-eth0': True - }, - 'name_servers': '192.168.20.254', - 'gateway': '10.145.88.1', - 'ksmeta': { - 'username': u'root', - 'promisc_nics': 'eth2', - 'chef_url': 'https://localhost/', - 'tool': 'chef', - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'chef_client_name': 'host10.1', - 'chef_node_name': u'host10.1' - }, - }], -} - -chef_EXPECTED = { - 'expected_configs': { - 'host1.1': { - 'roles_per_target_system': { - 'openstack': ['os-ha'], - }, - 'cluster': '1', - 'run_list': ['role[os-ha]'] - }, - 'host2.1': { - 'roles_per_target_system': { - 'openstack': ['os-ha'], - }, - 'cluster': '1', - 'run_list': ['role[os-ha]'] - }, - 'host3.1': { - 'roles_per_target_system': { - 'openstack': ['os-controller', 'os-image'], - }, - 'cluster': '1', - 'run_list': ['role[os-controller]', 'role[os-image]'] - }, - 'host4.1': { - 'roles_per_target_system': { - 'openstack': ['os-controller', 'os-compute-vncproxy'], - }, - 'cluster': '1', - 'run_list': ['role[os-controller]', 'role[os-compute-vncproxy]'] - }, - 'host5.1': { - 'roles_per_target_system': { - 'openstack': ['os-controller', 'os-block-storage-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-controller]', 'role[os-block-storage-worker]'] - }, - 'host6.1': { - 'roles_per_target_system': { - 'openstack': ['os-ops-database', 'os-ops-messaging'], - }, - 'cluster': '1', - 'run_list': ['role[os-ops-database]', 'role[os-ops-messaging]'] - }, - 'host7.1': { - 'roles_per_target_system': { - 'openstack': ['os-network'], - }, - 'cluster': '1', - 'run_list': ['role[os-network]'] - }, - 'host8.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'host9.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'host10.1': { - 'roles_per_target_system': { - 'openstack': ['os-compute-worker'], - }, - 'cluster': '1', - 'run_list': ['role[os-compute-worker]'] - }, - 'openstack': { - '1': { - 'credential': { - 'identity': { - 'users': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'admin': {'username': 'admin', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'object-store': {'username': 'service', 'password': 'huawei'} - } - }, - 'mysql': { - 'compute': {'username': 'service', 'password': 'huawei'}, - 'network': {'username': 'service', 'password': 'huawei'}, - 'image': {'username': 'service', 'password': 'huawei'}, - 'metering': {'username': 'service', 'password': 'huawei'}, - 'volume': {'username': 'service', 'password': 'huawei'}, - 'dashboard': {'username': 'service', 'password': 'huawei'}, - 'super': {'password': 'huawei'}, - 'identity': {'username': 'service', 'password': 'huawei'} - } - }, - 'networking': { - 'control': {'interface': 'eth0'}, - 'storage': {'interface': 'eth0'}, - 'public': {'interface': 'eth2'}, - 'tenant': {'interface': 'eth0'} - }, - 'ntp': {'ntpserver': '192.168.20.254'}, - 'db': { - 'mysql': { - 'bind_address': '192.168.20.105' - } - }, - 'dashboard_roles': ['os-controller'], - 'mq': { - 'rabbitmq': {'bind_address': '192.168.20.105'} - }, - 'endpoints': { - 'compute': { - 'novnc': {'host': '192.168.20.253'}, - 'xvpvnc': {'host': '192.168.20.253'}, - 'service': {'host': '192.168.20.253'}, - 'metadata': {'host': '192.168.20.253'} - }, - 'network': { - 'service': {'host': '192.168.20.253'} - }, - 'image': { - 'registry': {'host': '192.168.20.253'}, - 'service': {'host': '192.168.20.253'} - }, - 'metering': { - 'service': {'host': '192.168.20.253'} - }, - 'volume': { - 'service': {'host': '192.168.20.253'} - }, - 'ec2': { - 'admin': {'host': '192.168.20.253'}, - 'service': {'host': '192.168.20.253'} - }, - 'identity': { - 'admin': {'host': u'192.168.20.253'}, - 'service': {'host': u'192.168.20.253'} - }, - }, - }, - }, - }, -} diff --git a/compass/tests/actions/deploy/test_deploy.py b/compass/tests/actions/deploy/test_deploy.py old mode 100755 new mode 100644 index 33cf73f8..5e2380ae --- a/compass/tests/actions/deploy/test_deploy.py +++ b/compass/tests/actions/deploy/test_deploy.py @@ -1,12 +1,10 @@ -#!/usr/bin/python -# # Copyright 2014 Huawei Technologies Co. Ltd # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # -# http://www.apache.org/licenses/LICENSE-2.0 +# http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, @@ -14,471 +12,159 @@ # See the License for the specific language governing permissions and # limitations under the License. -"""integration test for action deploy. - .. moduleauthor:: Xiaodong Wang -""" -import chef -import logging -import mock +"""Test deploy action module.""" + + +from mock import patch import os -import os.path -import shutil import unittest2 -import xmlrpclib - -from contextlib import contextmanager os.environ['COMPASS_IGNORE_SETTING'] = 'true' +from compass.actions import deploy from compass.utils import setting_wrapper as setting reload(setting) -from compass.actions import deploy -from compass.actions import util -from compass.db import database -from compass.db.model import Adapter -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.db.model import Machine -from compass.db.model import Role -from compass.db.model import Switch -from compass.utils import flags -from compass.utils import logsetting - - -class TestEndToEnd(unittest2.TestCase): - """Integration test class.""" - - def _contains(self, origin_config, expected_config): - """check if expected config contains in origin config.""" - if isinstance(expected_config, dict): - for key, value in expected_config.items(): - if not isinstance(origin_config, dict): - logging.error('%s type is not dict', - origin_config) - return False - - if key not in origin_config: - logging.error('%s is not in config:\n%s', - key, origin_config.keys()) - return False - - if not self._contains(origin_config[key], value): - logging.error('%s is not match:\n%s\nvs\n%s', - key, origin_config[key], value) - return False - - return True - elif callable(expected_config): - return expected_config(origin_config) - else: - return expected_config == origin_config - - def _mock_lock(self): - @contextmanager - def _lock(lock_name, blocking=True, timeout=10): - """mock lock.""" - try: - yield lock_name - finally: - pass - - self.lock_backup_ = util.lock - util.lock = mock.Mock(side_effect=_lock) - - def _unmock_lock(self): - util.lock = self.lock_backup_ - - def _unmock_cobbler(self): - xmlrpclib.Server = self.cobbler_server_backup_ - - def _mock_cobbler(self, host_configs): - """mock cobbler.""" - self.cobbler_server_backup_ = xmlrpclib.Server - mock_server = mock.Mock() - xmlrpclib.Server = mock_server - mock_server.return_value.login.return_value = '' - mock_server.return_value.sync = mock.Mock() - mock_server.return_value.find_profile = mock.Mock( - side_effect=lambda x: [x['name']]) - - def _get_system_handle(sys_name, token): - """mock get_system_handle.""" - for i, config in enumerate(host_configs): - if config['name'] == sys_name: - return i - - raise Exception('Not Found %s' % sys_name) - - mock_server.return_value.get_system_handle = mock.Mock( - side_effect=_get_system_handle) - - def _new_system(token): - """mock new_system.""" - host_configs.append({'name': ''}) - return len(host_configs) - 1 - - mock_server.return_value.new_system = mock.Mock( - side_effect=_new_system) - - def _remove_system(sys_name, token): - """mock remove system.""" - for i, config in host_configs: - if config['name'] == sys_name: - del host_configs[i] - return - - raise Exception('Not Found %s' % sys_name) - - mock_server.return_value.remove_system = mock.Mock( - side_effect=_remove_system) - - mock_server.return_value.save_system = mock.Mock() - - def _modify_system(sys_id, key, value, token): - """mock modify_system.""" - host_configs[sys_id][key] = value - - mock_server.return_value.modify_system = mock.Mock( - side_effect=_modify_system) - - def _check_cobbler(self, host_configs, expected_host_configs): - """check cobbler config generated correctly.""" - self.assertEqual(len(host_configs), len(expected_host_configs)) - for i in range(len(host_configs)): - self.assertTrue( - self._contains(host_configs[i], expected_host_configs[i]), - 'host %s config is\n%s\nwhile expected config is\n%s' % ( - i, host_configs[i], expected_host_configs[i] - ) - ) - - def _unmock_chef(self): - chef.autoconfigure = self.chef_autoconfigure_backup_ - chef.DataBag = chef.chef_databag_backup_ - chef.DataBagItem = self.chef_databagitem_backup_ - chef.Client = self.chef_client_backup_ - chef.Node = self.chef_node_backup_ - - def _mock_chef(self, configs): - """mock chef.""" - self.chef_autoconfigure_backup_ = chef.autoconfigure - chef.autoconfigure = mock.Mock() - import collections - - class _mockDataBag(object): - """mock databag class.""" - def __init__(in_self, bag_name, api): - in_self.name = bag_name - - class _mockDataBagItem(collections.Mapping): - """mock databag item class.""" - - def __init__(in_self, bag, bag_item_name, api): - in_self.bag_name_ = bag.name - in_self.bag_item_name_ = bag_item_name - in_self.config_ = configs.get( - in_self.bag_name_, {} - ).get( - bag_item_name, {} - ) - - def __len__(in_self): - return len(in_self.config_) - - def __iter__(in_self): - return iter(in_self.config_) - - def __getitem__(in_self, name): - return in_self.config_[name] - - def __setitem__(in_self, name, value): - in_self.config_[name] = value - - def __delitem__(in_self, name): - del in_self.config_[name] - - def delete(in_self): - """mock delete.""" - del configs[in_self.bag_item_name_] - - def save(in_self): - """mock save.""" - configs.setdefault( - in_self.bag_name_, {} - )[ - in_self.bag_item_name_ - ] = in_self.config_ - - class _mockClient(object): - def __init__(in_self, client_name, api): - pass - - def delete(in_self): - pass - - class _mockNode(collections.Mapping): - """mock node class.""" - - def __init__(in_self, node_name, api): - in_self.node_name_ = node_name - in_self.config_ = configs.get(node_name, {}) - in_self.run_list = [] - - def __len__(in_self): - return len(in_self.config_) - - def __iter__(in_self): - return iter(in_self.config_) - - def __getitem__(in_self, name): - return in_self.config_[name] - - def __setitem__(in_self, name, value): - in_self.config_[name] = value - - def delete(in_self): - del configs[in_self.node_name_] - - def to_dict(in_self): - return in_self.config_ - - def get(in_self, key, default=None): - return in_self.config_.get(key, default) - - def save(in_self): - """mock save.""" - configs[in_self.node_name_] = in_self.config_ - configs[in_self.node_name_]['run_list'] = in_self.run_list - - chef.chef_databag_backup_ = chef.DataBag - chef.DataBag = mock.Mock(side_effect=_mockDataBag) - self.chef_databagitem_backup_ = chef.DataBagItem - chef.DataBagItem = mock.Mock(side_effect=_mockDataBagItem) - self.chef_client_backup_ = chef.Client - chef.Client = mock.Mock(side_effect=_mockClient) - self.chef_node_backup_ = chef.Node - chef.Node = mock.Mock(side_effect=_mockNode) - - def _check_chef(self, configs, expected_configs): - """check chef config is generated correctly.""" - self.assertTrue( - self._contains(configs, expected_configs), - 'configs\n%s\nwhile expected configs\n%s' % ( - configs, expected_configs - ) - ) - - def _mock_os_installer(self, config_locals): - """mock os installer.""" - self.os_installer_mock_[setting.OS_INSTALLER]( - **config_locals['%s_MOCK' % setting.OS_INSTALLER]) - - def _unmock_os_installer(self): - self.os_installer_unmock_[setting.OS_INSTALLER]() - - def _mock_package_installer(self, config_locals): - """mock package installer.""" - self.package_installer_mock_[setting.PACKAGE_INSTALLER]( - **config_locals['%s_MOCK' % setting.PACKAGE_INSTALLER]) - - def _unmock_package_installer(self): - self.package_installer_unmock_[setting.PACKAGE_INSTALLER]() - - def _check_os_installer(self, config_locals): - """check os installer generate correct configs.""" - mock_kwargs = config_locals['%s_MOCK' % setting.OS_INSTALLER] - expected_kwargs = config_locals['%s_EXPECTED' % setting.OS_INSTALLER] - kwargs = {} - kwargs.update(mock_kwargs) - kwargs.update(expected_kwargs) - self.os_installer_checker_[setting.OS_INSTALLER](**kwargs) - - def _check_package_installer(self, config_locals): - """check package installer generate correct configs.""" - mock_kwargs = config_locals['%s_MOCK' % setting.PACKAGE_INSTALLER] - expected_kwargs = config_locals[ - '%s_EXPECTED' % setting.PACKAGE_INSTALLER] - kwargs = {} - kwargs.update(mock_kwargs) - kwargs.update(expected_kwargs) - self.package_installer_checker_[setting.PACKAGE_INSTALLER](**kwargs) - - def _test(self, config_filename): - """run the test.""" - full_path = '%s/data/%s' % ( - os.path.dirname(os.path.abspath(__file__)), - config_filename) - config_globals = {} - config_locals = {} - execfile(full_path, config_globals, config_locals) - self._prepare_database(config_locals) - self._mock_os_installer(config_locals) - self._mock_package_installer(config_locals) - cluster_hosts = {} - with database.session() as session: - clusters = session.query(Cluster).all() - for cluster in clusters: - cluster_hosts[cluster.id] = [ - host.id for host in cluster.hosts] - - deploy.deploy(cluster_hosts) - - self._check_os_installer(config_locals) - self._check_package_installer(config_locals) - self._unmock_os_installer() - self._unmock_package_installer() - - def _prepare_database(self, config_locals): - """prepare database.""" - with database.session() as session: - adapters = {} - for adapter_config in config_locals['ADAPTERS']: - adapter = Adapter(**adapter_config) - session.add(adapter) - adapters[adapter_config['name']] = adapter - - roles = {} - for role_config in config_locals['ROLES']: - role = Role(**role_config) - session.add(role) - roles[role_config['name']] = role - - switches = {} - for switch_config in config_locals['SWITCHES']: - switch = Switch(**switch_config) - session.add(switch) - switches[switch_config['ip']] = switch - - machines = {} - for switch_ip, machine_configs in ( - config_locals['MACHINES_BY_SWITCH'].items() - ): - for machine_config in machine_configs: - machine = Machine(**machine_config) - machines[machine_config['mac']] = machine - machine.switch = switches[switch_ip] - session.add(machine) - - clusters = {} - for cluster_config in config_locals['CLUSTERS']: - adapter_name = cluster_config['adapter'] - del cluster_config['adapter'] - cluster = Cluster(**cluster_config) - clusters[cluster_config['name']] = cluster - cluster.adapter = adapters[adapter_name] - session.add(cluster) - - hosts = {} - for cluster_name, host_configs in ( - config_locals['HOSTS_BY_CLUSTER'].items() - ): - for host_config in host_configs: - mac = host_config['mac'] - del host_config['mac'] - host = ClusterHost(**host_config) - hosts['%s.%s' % ( - host_config['hostname'], cluster_name)] = host - host.machine = machines[mac] - host.cluster = clusters[cluster_name] - session.add(host) - - def _mock_setting(self, mock_global_config_filename='global_config'): - self.backup_os_installer_ = setting.OS_INSTALLER - self.backup_package_installer_ = setting.PACKAGE_INSTALLER - self.backup_cobbler_url_ = setting.COBBLER_INSTALLER_URL - self.backup_chef_url_ = setting.CHEF_INSTALLER_URL - self.backup_config_dir_ = setting.CONFIG_DIR - self.backup_global_config_filename_ = setting.GLOBAL_CONFIG_FILENAME - self.backup_config_file_format_ = setting.CONFIG_FILE_FORMAT - setting.OS_INSTALLER = 'cobbler' - setting.PACKAGE_INSTALLER = 'chef' - setting.COBBLER_INSTALLER_URL = 'http://localhost/cobbler_api' - setting.CHEF_INSTALLER_URL = 'https://localhost/' - setting.CONFIG_DIR = os.path.join( - os.path.dirname(os.path.abspath(__file__)), - 'data') - setting.GLOBAL_CONFIG_FILENAME = mock_global_config_filename - setting.CONFIG_FILE_FORMAT = 'python' - - def _unmock_setting(self): - setting.OS_INSTALLER = self.backup_os_installer_ - setting.PACKAGE_INSTALLER = self.backup_package_installer_ - setting.COBBLER_INSTALLER_URL = self.backup_cobbler_url_ - setting.CHEF_INSTALLER_URL = self.backup_chef_url_ - setting.CONFIG_DIR = self.backup_config_dir_ - setting.GLOBAL_CONFIG_FILENAME = self.backup_global_config_filename_ - self.backup_config_file_format_ = setting.CONFIG_FILE_FORMAT - +class TestDeployAction(unittest2.TestCase): + """Test deploy moudle functions in actions.""" def setUp(self): - """test setup.""" - super(TestEndToEnd, self).setUp() - self._mock_setting() - logsetting.init() - database.create_db() - self._mock_lock() - self.rmtree_backup_ = shutil.rmtree - shutil.rmtree = mock.Mock() - self.system_backup_ = os.system - os.system = mock.Mock() - self.os_installer_mock_ = {} - self.os_installer_mock_['cobbler'] = self._mock_cobbler - self.os_installer_unmock_ = {} - self.os_installer_unmock_['cobbler'] = self._unmock_cobbler - self.package_installer_mock_ = {} - self.package_installer_mock_['chef'] = self._mock_chef - self.package_installer_unmock_ = {} - self.package_installer_unmock_['chef'] = self._unmock_chef - self.os_installer_checker_ = {} - self.os_installer_checker_['cobbler'] = self._check_cobbler - self.package_installer_checker_ = {} - self.package_installer_checker_['chef'] = self._check_chef + super(TestDeployAction, self).setUp() def tearDown(self): - """test teardown.""" - database.drop_db() - self._unmock_lock() - shutil.rmtree = self.rmtree_backup_ - os.system = self.system_backup_ - self._unmock_setting() - super(TestEndToEnd, self).tearDown() + super(TestDeployAction, self).tearDown() - def test_1(self): - """test one cluster one host.""" - self._test('test1') + @patch('compass.db.api.cluster.get_cluster_metadata') + @patch('compass.db.api.adapter_holder.get_adapter') + def test_get_adatper_info(self, mock_get_adapter, mock_get_cluster_meta): + mock_get_adapter.return_value = { + "id": 1, + "name": "test_adapter", + "flavors": [ + { + "flavor_name": "test_flavor", + "template": "test_tmpl.tmpl", + "roles": [ + { + "name": "test-role-1", + "display_name": "test role 1" + }, + { + "name": "test-role-2", + "display_name": "test role 2" + } + ] + } + ], + "os_installer": { + "name": "test_os_installer", + "settings": { + "url": "http://127.0.0.1" + } + }, + "pk_installer": { + "name": "test_pk_installer", + "settings": { + "url": "http://127.0.0.1" + } + } + } + mock_get_cluster_meta.return_value = { + "os_config": {}, + "package_config": {} + } + expected_output = { + "id": 1, + "name": "test_adapter", + "flavors": [{ + "flavor_name": "test_flavor", + "template": "test_tmpl.tmpl", + "roles": ["test-role-1", "test-role-2"] + }], + "os_installer": { + "name": "test_os_installer", + "settings": { + "url": "http://127.0.0.1" + } + }, + "pk_installer": { + "name": "test_pk_installer", + "settings": { + "url": "http://127.0.0.1" + } + }, + "metadata": { + "os_config": {}, + "package_config": {} + } + } + output = deploy.ActionHelper.get_adapter_info(1, 1, None) + self.maxDiff = None + self.assertDictEqual(expected_output, output) - def test_2(self): - """test one cluster multi hosts.""" - self._test('test2') - - def test_3(self): - """test multi clusters multi hosts.""" - self._test('test3') - - def test_4(self): - """test deploy unexist roles.""" - self._test('test4') - - def test_5(self): - """test deploy roles with testmode disabled.""" - self._unmock_setting() - self._mock_setting('global_config2') - self._test('test5') - - def test_6(self): - """test deploy on 10 host.""" - self._test('test6') - - def test_7(self): - """test deploy on 10 host with ha support.""" - self._test('test7') - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() + @patch('compass.db.api.cluster.get_cluster_host_config') + @patch('compass.db.api.cluster.get_cluster_host') + def test_get_hosts_info(self, mock_get_cluster_host, + mock_get_cluster_host_config): + mock_get_cluster_host_config.return_value = { + "os_config": {}, + "package_config": {}, + "deployed_os_config": {}, + "deployed_package_config": {} + } + mock_get_cluster_host.return_value = { + "id": 1, + "host_id": 10, + "name": "test", + "mac": "00:89:23:a1:e9:10", + "hostname": "server01", + "roles": [ + { + "name": "test-role-1", + "display_name": "test role 1" + }, + { + "name": "test-role-2", + "display_name": "test role 2" + } + ], + "networks": [ + { + "interface": "eth0", + "ip": "127.0.0.1", + "netmask": "255.255.255.0", + "is_mgmt": True, + "subnet": "127.0.0.0/24", + "is_promiscuous": False, + } + ] + } + expected_output = { + 1: { + "id": 1, + "host_id": 10, + "name": "test", + "mac": "00:89:23:a1:e9:10", + "hostname": "server01", + "roles": ["test-role-1", "test-role-2"], + "networks": { + "eth0": { + "ip": "127.0.0.1", + "netmask": "255.255.255.0", + "is_mgmt": True, + "subnet": "127.0.0.0/24", + "is_promiscuous": False + } + }, + "os_config": {}, + "package_config": {}, + "deployed_os_config": {}, + "deployed_package_config": {} + } + } + output = deploy.ActionHelper.get_hosts_info(1, [1], None) + self.maxDiff = None + self.assertDictEqual(expected_output, output) diff --git a/compass/tests/actions/test_poll_switch.py b/compass/tests/actions/test_poll_switch.py deleted file mode 100755 index 202f74ca..00000000 --- a/compass/tests/actions/test_poll_switch.py +++ /dev/null @@ -1,126 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test poll_switch action module.""" -from mock import patch -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.actions import poll_switch -from compass.api import app -from compass.db import database -from compass.db.model import Machine -from compass.db.model import Switch -from compass.db.model import SwitchConfig -from compass.utils import flags -from compass.utils import logsetting - - -class TestPollSwitch(unittest2.TestCase): - """base api test class.""" - - CLUSTER_NAME = "Test1" - SWITCH_CREDENTIAL = {'version': '2c', - 'community': 'public'} - DATABASE_URL = 'sqlite://' - - def setUp(self): - super(TestPollSwitch, self).setUp() - logsetting.init() - database.init(self.DATABASE_URL) - database.create_db() - self.test_client = app.test_client() - - with database.session() as session: - # Add one switch to DB - switch = Switch(ip="127.0.0.1", - credential=self.SWITCH_CREDENTIAL) - session.add(switch) - # Add filter port to SwitchConfig table - filter_list = [ - SwitchConfig(ip="127.0.0.1", filter_port='6'), - SwitchConfig(ip="127.0.0.1", filter_port='7') - ] - session.add_all(filter_list) - - def tearDown(self): - database.drop_db() - super(TestPollSwitch, self).tearDown() - - @patch("compass.hdsdiscovery.hdmanager.HDManager.learn") - @patch("compass.hdsdiscovery.hdmanager.HDManager.get_vendor") - def test_poll_switch(self, mock_get_vendor, mock_learn): - # Incorrect IP address format - poll_switch.poll_switch("xxx") - with database.session() as session: - machines = session.query(Machine).filter_by(switch_id=1).all() - self.assertEqual([], machines) - - # Switch is unreachable - mock_get_vendor.return_value = (None, 'unreachable', 'Timeout') - poll_switch.poll_switch('127.0.0.1') - with database.session() as session: - machines = session.query(Machine).filter_by(switch_id=1).all() - self.assertEqual([], machines) - - switch = session.query(Switch).filter_by(id=1).first() - self.assertEqual(switch.state, 'unreachable') - - # Successfully retrieve machines from the switch - mock_get_vendor.return_value = ('xxx', 'Found', "") - mock_learn.return_value = [ - {'mac': '00:01:02:03:04:05', 'vlan': '1', 'port': '1'}, - {'mac': '00:01:02:03:04:06', 'vlan': '1', 'port': '2'}, - {'mac': '00:01:02:03:04:07', 'vlan': '2', 'port': '3'}, - {'mac': '00:01:02:03:04:08', 'vlan': '2', 'port': '4'}, - {'mac': '00:01:02:03:04:09', 'vlan': '3', 'port': '5'} - ] - poll_switch.poll_switch('127.0.0.1') - with database.session() as session: - machines = session.query(Machine).filter_by(switch_id=1).all() - self.assertEqual(5, len(machines)) - # The state and err_msg of the switch should be reset. - switch = session.query(Switch).filter_by(id=1).first() - self.assertEqual(switch.state, "under_monitoring") - self.assertEqual(switch.err_msg, "") - - # Successfully retrieve and filter some machines - # In the following case, machines with port 6, 7 will be filtered. - mock_learn.return_value = [ - {'mac': '00:01:02:03:04:10', 'vlan': '3', 'port': '6'}, - {'mac': '00:01:02:03:04:0a', 'vlan': '4', 'port': '7'}, - {'mac': '00:01:02:03:04:0b', 'vlan': '4', 'port': '8'}, - {'mac': '00:01:02:03:04:0c', 'vlan': '5', 'port': '9'}, - {'mac': '00:01:02:03:04:0d', 'vlan': '5', 'port': '10'} - ] - poll_switch.poll_switch('127.0.0.1') - with database.session() as session: - machines = session.query(Machine).filter_by(switch_id=1).all() - self.assertEqual(8, len(machines)) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/actions/update_progress/data/global_config b/compass/tests/actions/update_progress/data/global_config deleted file mode 100644 index eb1e7b5f..00000000 --- a/compass/tests/actions/update_progress/data/global_config +++ /dev/null @@ -1,62 +0,0 @@ -networking = { - 'global': { - 'default_no_proxy': ['127.0.0.1', 'localhost'], - 'search_path_pattern': '%(clusterid)s.%(search_path)s %(search_path)s', - 'noproxy_pattern': '%(hostname)s.%(clusterid)s,%(ip)s' - }, - 'interfaces': { - 'management': { - 'dns_pattern': '%(hostname)s.%(clusterid)s.%(search_path)s', - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'promisc': 0, - }, - 'tenant': { - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'dns_pattern': 'virtual-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 0, - }, - 'public': { - 'netmask': '255.255.255.0', - 'nic': 'eth1', - 'dns_pattern': 'floating-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 1, - }, - 'storage': { - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'dns_pattern': 'storage-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 0, - }, - }, -} - -security = { - 'server_credentials': { - 'username': 'root', - 'password': 'huawei', - }, - 'console_credentials': { - 'username': 'admin', - 'password': 'huawei', - }, - 'service_credentials': { - 'username': 'admin', - 'password': 'huawei', - }, -} - -role_assign_policy = { - 'policy_by_host_numbers': { - }, - 'default': { - 'roles': [], - 'maxs': {}, - 'mins': {}, - 'default_max': -1, - 'default_min': 0, - 'exclusives': [], - 'bundles': [], - }, -} diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_1/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_1/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_1/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_2/server1.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_2/server1.1/anaconda.log.template deleted file mode 100644 index b6762738..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_2/server1.1/anaconda.log.template +++ /dev/null @@ -1,61 +0,0 @@ -05:51:20,534 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af - -05:51:20,534 INFO : text mode forced from cmdline -05:51:20,534 DEBUG : readNetInfo /tmp/s390net not found, early return -05:51:20,534 INFO : anaconda version 13.21.215 on x86_64 starting -05:51:20,656 DEBUG : Saving module ipv6 -05:51:20,656 DEBUG : Saving module iscsi_ibft -05:51:20,656 DEBUG : Saving module iscsi_boot_sysfs -05:51:20,656 DEBUG : Saving module pcspkr -05:51:20,656 DEBUG : Saving module edd -05:51:20,656 DEBUG : Saving module floppy -05:51:20,656 DEBUG : Saving module iscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi -05:51:20,656 DEBUG : Saving module scsi_transport_iscsi -05:51:20,656 DEBUG : Saving module squashfs -05:51:20,656 DEBUG : Saving module cramfs -05:51:20,656 DEBUG : probing buses -05:51:20,693 DEBUG : waiting for hardware to initialize -05:51:27,902 DEBUG : probing buses -05:51:27,925 DEBUG : waiting for hardware to initialize -05:51:47,187 INFO : getting kickstart file -05:51:47,196 INFO : eth0 has link, using it -05:51:47,208 INFO : doing kickstart... setting it up -05:51:47,208 DEBUG : activating device eth0 -05:51:52,221 INFO : wait_for_iface_activation (2502): device eth0 activated -05:51:52,222 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,223 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,611 INFO : setting up kickstart -05:51:52,611 INFO : kickstart forcing text mode -05:51:52,611 INFO : kickstartFromUrl -05:51:52,612 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:51:52,612 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:51:52,616 INFO : drive status is CDS_TRAY_OPEN -05:51:52,616 ERROR : Drive tray reports open when it should be closed -05:52:07,635 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,636 DEBUG : going to set language to en_US.UTF-8 -05:52:07,636 INFO : setting language to en_US.UTF-8 -05:52:07,654 INFO : starting STEP_METHOD -05:52:07,654 DEBUG : loaderData->method is set, adding skipMethodDialog -05:52:07,654 DEBUG : skipMethodDialog is set -05:52:07,663 INFO : starting STEP_STAGE2 -05:52:07,663 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,663 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:52:07,780 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:52:07,780 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:52:07,780 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:52:07,814 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:52:07,815 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,354 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:52:47,354 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,403 INFO : Loading SELinux policy -05:52:48,130 INFO : getting ready to spawn shell now -05:52:48,359 INFO : Running anaconda script /usr/bin/anaconda -05:52:54,804 INFO : CentOS Linux is the highest priority installclass, using it -05:52:54,867 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:52:54,868 INFO : Running kickstart %%pre script(s) -05:52:54,868 WARNING : '/bin/sh' specified as full path -05:52:56,966 INFO : All kickstart %%pre script(s) have been run diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_2/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_2/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_2/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/anaconda.log.template deleted file mode 100644 index f04da66a..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/anaconda.log.template +++ /dev/null @@ -1,286 +0,0 @@ -05:51:20,534 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af - -05:51:20,534 INFO : text mode forced from cmdline -05:51:20,534 DEBUG : readNetInfo /tmp/s390net not found, early return -05:51:20,534 INFO : anaconda version 13.21.215 on x86_64 starting -05:51:20,656 DEBUG : Saving module ipv6 -05:51:20,656 DEBUG : Saving module iscsi_ibft -05:51:20,656 DEBUG : Saving module iscsi_boot_sysfs -05:51:20,656 DEBUG : Saving module pcspkr -05:51:20,656 DEBUG : Saving module edd -05:51:20,656 DEBUG : Saving module floppy -05:51:20,656 DEBUG : Saving module iscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi -05:51:20,656 DEBUG : Saving module scsi_transport_iscsi -05:51:20,656 DEBUG : Saving module squashfs -05:51:20,656 DEBUG : Saving module cramfs -05:51:20,656 DEBUG : probing buses -05:51:20,693 DEBUG : waiting for hardware to initialize -05:51:27,902 DEBUG : probing buses -05:51:27,925 DEBUG : waiting for hardware to initialize -05:51:47,187 INFO : getting kickstart file -05:51:47,196 INFO : eth0 has link, using it -05:51:47,208 INFO : doing kickstart... setting it up -05:51:47,208 DEBUG : activating device eth0 -05:51:52,221 INFO : wait_for_iface_activation (2502): device eth0 activated -05:51:52,222 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,223 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,611 INFO : setting up kickstart -05:51:52,611 INFO : kickstart forcing text mode -05:51:52,611 INFO : kickstartFromUrl -05:51:52,612 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:51:52,612 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:51:52,616 INFO : drive status is CDS_TRAY_OPEN -05:51:52,616 ERROR : Drive tray reports open when it should be closed -05:52:07,635 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,636 DEBUG : going to set language to en_US.UTF-8 -05:52:07,636 INFO : setting language to en_US.UTF-8 -05:52:07,654 INFO : starting STEP_METHOD -05:52:07,654 DEBUG : loaderData->method is set, adding skipMethodDialog -05:52:07,654 DEBUG : skipMethodDialog is set -05:52:07,663 INFO : starting STEP_STAGE2 -05:52:07,663 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,663 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:52:07,780 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:52:07,780 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:52:07,780 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:52:07,814 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:52:07,815 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,354 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:52:47,354 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,403 INFO : Loading SELinux policy -05:52:48,130 INFO : getting ready to spawn shell now -05:52:48,359 INFO : Running anaconda script /usr/bin/anaconda -05:52:54,804 INFO : CentOS Linux is the highest priority installclass, using it -05:52:54,867 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:52:54,868 INFO : Running kickstart %%pre script(s) -05:52:54,868 WARNING : '/bin/sh' specified as full path -05:52:56,966 INFO : All kickstart %%pre script(s) have been run -05:52:57,017 INFO : ISCSID is /usr/sbin/iscsid -05:52:57,017 INFO : no initiator set -05:52:57,128 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:52:57,137 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:52:57,138 INFO : no /etc/zfcp.conf; not configuring zfcp -05:53:00,902 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -05:53:00,903 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:53:00,903 INFO : Display mode = t -05:53:00,903 INFO : Default encoding = utf-8 -05:53:01,064 INFO : Detected 2016M of memory -05:53:01,064 INFO : Swap attempt of 4032M -05:53:01,398 INFO : ISCSID is /usr/sbin/iscsid -05:53:01,399 INFO : no initiator set -05:53:05,059 INFO : setting installation environment hostname to server1 -05:53:05,104 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:53:05,276 INFO : Detected 2016M of memory -05:53:05,277 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:53:05,277 INFO : Swap attempt of 3276M -05:53:05,453 WARNING : step installtype does not exist -05:53:05,454 WARNING : step confirminstall does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,457 WARNING : step complete does not exist -05:53:05,457 INFO : moving (1) to step setuptime -05:53:05,458 DEBUG : setuptime is a direct step -22:53:05,458 WARNING : '/usr/sbin/hwclock' specified as full path -22:53:06,002 INFO : leaving (1) step setuptime -22:53:06,003 INFO : moving (1) to step autopartitionexecute -22:53:06,003 DEBUG : autopartitionexecute is a direct step -22:53:06,138 INFO : leaving (1) step autopartitionexecute -22:53:06,138 INFO : moving (1) to step storagedone -22:53:06,138 DEBUG : storagedone is a direct step -22:53:06,138 INFO : leaving (1) step storagedone -22:53:06,139 INFO : moving (1) to step enablefilesystems -22:53:06,139 DEBUG : enablefilesystems is a direct step -22:53:10,959 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:53:41,215 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:53:57,388 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:54:14,838 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:54:21,717 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:54:27,576 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:54:40,058 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:54:41,949 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:54:41,950 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-rootvol on /mnt/sysimage as ext3 with options defaults -22:54:42,826 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:54:43,148 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:54:43,158 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:54:43,164 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:54:43,207 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-homevol on /mnt/sysimage/home as ext3 with options defaults -22:54:43,434 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,435 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:54:43,439 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,496 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:54:43,609 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:54:43,874 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-varvol on /mnt/sysimage/var as ext3 with options defaults -22:54:44,056 INFO : leaving (1) step enablefilesystems -22:54:44,057 INFO : moving (1) to step bootloadersetup -22:54:44,057 DEBUG : bootloadersetup is a direct step -22:54:44,061 INFO : leaving (1) step bootloadersetup -22:54:44,061 INFO : moving (1) to step reposetup -22:54:44,061 DEBUG : reposetup is a direct step -22:54:56,952 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:54:56,953 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:54:57,133 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:54:57,454 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:54:58,637 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:54:58,971 INFO : leaving (1) step reposetup -22:54:58,971 INFO : moving (1) to step basepkgsel -22:54:58,972 DEBUG : basepkgsel is a direct step -22:54:58,986 WARNING : not adding Base group -22:54:59,388 INFO : leaving (1) step basepkgsel -22:54:59,388 INFO : moving (1) to step postselection -22:54:59,388 DEBUG : postselection is a direct step -22:54:59,390 INFO : selected kernel package for kernel -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:55:07,745 INFO : leaving (1) step postselection -22:55:07,745 INFO : moving (1) to step install -22:55:07,748 INFO : leaving (1) step install -22:55:07,748 INFO : moving (1) to step preinstallconfig -22:55:07,748 DEBUG : preinstallconfig is a direct step -22:55:08,087 DEBUG : isys.py:mount()- going to mount /selinux on /mnt/sysimage/selinux as selinuxfs with options defaults -22:55:08,091 DEBUG : isys.py:mount()- going to mount /proc/bus/usb on /mnt/sysimage/proc/bus/usb as usbfs with options defaults -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,122 INFO : leaving (1) step preinstallconfig -22:55:08,122 INFO : moving (1) to step installpackages -22:55:08,122 DEBUG : installpackages is a direct step -22:55:08,122 INFO : Preparing to install packages -23:17:06,152 INFO : leaving (1) step installpackages -23:17:06,153 INFO : moving (1) to step postinstallconfig -23:17:06,153 DEBUG : postinstallconfig is a direct step -23:17:06,162 DEBUG : Removing cachedir: /mnt/sysimage/var/cache/yum/anaconda-CentOS-201311291202.x86_64 -23:17:06,181 DEBUG : Removing headers and packages from /mnt/sysimage/var/cache/yum/ppa_repo -23:17:06,183 INFO : leaving (1) step postinstallconfig -23:17:06,184 INFO : moving (1) to step writeconfig -23:17:06,184 DEBUG : writeconfig is a direct step -23:17:06,184 INFO : Writing main configuration -23:17:06,219 WARNING : '/usr/sbin/authconfig' specified as full path -23:17:11,643 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,703 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,885 INFO : removing libuser.conf at /tmp/libuser.WMDW9M -23:17:11,885 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -23:17:12,722 INFO : leaving (1) step writeconfig -23:17:12,722 INFO : moving (1) to step firstboot -23:17:12,723 DEBUG : firstboot is a direct step -23:17:12,723 INFO : leaving (1) step firstboot -23:17:12,723 INFO : moving (1) to step instbootloader -23:17:12,724 DEBUG : instbootloader is a direct step -23:17:14,664 WARNING : '/sbin/grub-install' specified as full path -23:17:15,006 WARNING : '/sbin/grub' specified as full path -23:17:16,039 INFO : leaving (1) step instbootloader -23:17:16,040 INFO : moving (1) to step reipl -23:17:16,040 DEBUG : reipl is a direct step -23:17:16,040 INFO : leaving (1) step reipl -23:17:16,040 INFO : moving (1) to step writeksconfig -23:17:16,040 DEBUG : writeksconfig is a direct step -23:17:16,041 INFO : Writing autokickstart file -23:17:16,070 INFO : leaving (1) step writeksconfig -23:17:16,071 INFO : moving (1) to step setfilecon -23:17:16,071 DEBUG : setfilecon is a direct step -23:17:16,071 INFO : setting SELinux contexts for anaconda created files -23:17:17,822 INFO : leaving (1) step setfilecon -23:17:17,822 INFO : moving (1) to step copylogs -23:17:17,822 DEBUG : copylogs is a direct step -23:17:17,822 INFO : Copying anaconda logs -23:17:17,825 INFO : leaving (1) step copylogs -23:17:17,825 INFO : moving (1) to step methodcomplete -23:17:17,825 DEBUG : methodcomplete is a direct step -23:17:17,825 INFO : leaving (1) step methodcomplete -23:17:17,826 INFO : moving (1) to step postscripts -23:17:17,826 DEBUG : postscripts is a direct step -23:17:17,826 INFO : Running kickstart %%post script(s) -23:17:17,858 WARNING : '/bin/sh' specified as full path -23:17:21,002 INFO : All kickstart %%post script(s) have been run -23:17:21,002 INFO : leaving (1) step postscripts -23:17:21,002 INFO : moving (1) to step dopostaction -23:17:21,002 DEBUG : dopostaction is a direct step -23:17:21,003 INFO : leaving (1) step dopostaction diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/install.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/install.log.template deleted file mode 100644 index ee9d40c2..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/install.log.template +++ /dev/null @@ -1,141 +0,0 @@ -Installing libgcc-4.4.7-4.el6.x86_64 -warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY -Installing setup-2.8.14-20.el6_4.1.noarch -Installing filesystem-2.4.30-3.el6.x86_64 -Installing basesystem-10.0-4.el6.noarch -Installing ncurses-base-5.7-3.20090208.el6.x86_64 -Installing kernel-firmware-2.6.32-431.el6.noarch -Installing tzdata-2013g-1.el6.noarch -Installing nss-softokn-freebl-3.14.3-9.el6.x86_64 -Installing glibc-common-2.12-1.132.el6.x86_64 -Installing glibc-2.12-1.132.el6.x86_64 -Installing ncurses-libs-5.7-3.20090208.el6.x86_64 -Installing bash-4.1.2-15.el6_4.x86_64 -Installing libattr-2.4.44-7.el6.x86_64 -Installing libcap-2.16-5.5.el6.x86_64 -Installing zlib-1.2.3-29.el6.x86_64 -Installing info-4.13a-8.el6.x86_64 -Installing popt-1.13-7.el6.x86_64 -Installing chkconfig-1.3.49.3-2.el6_4.1.x86_64 -Installing audit-libs-2.2-2.el6.x86_64 -Installing libcom_err-1.41.12-18.el6.x86_64 -Installing libacl-2.2.49-6.el6.x86_64 -Installing db4-4.7.25-18.el6_4.x86_64 -Installing nspr-4.10.0-1.el6.x86_64 -Installing nss-util-3.15.1-3.el6.x86_64 -Installing readline-6.0-4.el6.x86_64 -Installing libsepol-2.0.41-4.el6.x86_64 -Installing libselinux-2.0.94-5.3.el6_4.1.x86_64 -Installing shadow-utils-4.1.4.2-13.el6.x86_64 -Installing sed-4.2.1-10.el6.x86_64 -Installing bzip2-libs-1.0.5-7.el6_0.x86_64 -Installing libuuid-2.17.2-12.14.el6.x86_64 -Installing libstdc++-4.4.7-4.el6.x86_64 -Installing libblkid-2.17.2-12.14.el6.x86_64 -Installing gawk-3.1.7-10.el6.x86_64 -Installing file-libs-5.04-15.el6.x86_64 -Installing libgpg-error-1.7-4.el6.x86_64 -Installing dbus-libs-1.2.24-7.el6_3.x86_64 -Installing libudev-147-2.51.el6.x86_64 -Installing pcre-7.8-6.el6.x86_64 -Installing grep-2.6.3-4.el6.x86_64 -Installing lua-5.1.4-4.1.el6.x86_64 -Installing sqlite-3.6.20-1.el6.x86_64 -Installing cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 -Installing libidn-1.18-2.el6.x86_64 -Installing expat-2.0.1-11.el6_2.x86_64 -Installing xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64 -Installing elfutils-libelf-0.152-1.el6.x86_64 -Installing libgcrypt-1.4.5-11.el6_4.x86_64 -Installing bzip2-1.0.5-7.el6_0.x86_64 -Installing findutils-4.4.2-6.el6.x86_64 -Installing libselinux-utils-2.0.94-5.3.el6_4.1.x86_64 -Installing checkpolicy-2.0.22-1.el6.x86_64 -Installing cpio-2.10-11.el6_3.x86_64 -Installing which-2.19-6.el6.x86_64 -Installing libxml2-2.7.6-14.el6.x86_64 -Installing libedit-2.11-4.20080712cvs.1.el6.x86_64 -Installing pth-2.0.7-9.3.el6.x86_64 -Installing tcp_wrappers-libs-7.6-57.el6.x86_64 -Installing sysvinit-tools-2.87-5.dsf.el6.x86_64 -Installing libtasn1-2.3-3.el6_2.1.x86_64 -Installing p11-kit-0.18.5-2.el6.x86_64 -Installing p11-kit-trust-0.18.5-2.el6.x86_64 -Installing ca-certificates-2013.1.94-65.0.el6.noarch -Installing device-mapper-persistent-data-0.2.8-2.el6.x86_64 -Installing nss-softokn-3.14.3-9.el6.x86_64 -Installing libnih-1.0.1-7.el6.x86_64 -Installing upstart-0.6.5-12.el6_4.1.x86_64 -Installing file-5.04-15.el6.x86_64 -Installing gmp-4.3.1-7.el6_2.2.x86_64 -Installing libusb-0.1.12-23.el6.x86_64 -Installing MAKEDEV-3.24-6.el6.x86_64 -Installing libutempter-1.1.5-4.1.el6.x86_64 -Installing psmisc-22.6-15.el6_0.1.x86_64 -Installing net-tools-1.60-110.el6_2.x86_64 -Installing vim-minimal-7.2.411-1.8.el6.x86_64 -Installing tar-1.23-11.el6.x86_64 -Installing procps-3.2.8-25.el6.x86_64 -Installing db4-utils-4.7.25-18.el6_4.x86_64 -Installing e2fsprogs-libs-1.41.12-18.el6.x86_64 -Installing libss-1.41.12-18.el6.x86_64 -Installing pinentry-0.7.6-6.el6.x86_64 -Installing binutils-2.20.51.0.2-5.36.el6.x86_64 -Installing m4-1.4.13-5.el6.x86_64 -Installing diffutils-2.8.1-28.el6.x86_64 -Installing make-3.81-20.el6.x86_64 -Installing dash-0.5.5.1-4.el6.x86_64 -Installing ncurses-5.7-3.20090208.el6.x86_64 -Installing groff-1.18.1.4-21.el6.x86_64 -Installing less-436-10.el6.x86_64 -Installing coreutils-libs-8.4-31.el6.x86_64 -Installing gzip-1.3.12-19.el6_4.x86_64 -Installing cracklib-2.8.16-4.el6.x86_64 -Installing cracklib-dicts-2.8.16-4.el6.x86_64 -Installing coreutils-8.4-31.el6.x86_64 -Installing pam-1.1.1-17.el6.x86_64 -Installing module-init-tools-3.9-21.el6_4.x86_64 -Installing hwdata-0.233-9.1.el6.noarch -Installing redhat-logos-60.0.14-12.el6.centos.noarch -Installing plymouth-scripts-0.8.3-27.el6.centos.x86_64 -Installing libpciaccess-0.13.1-2.el6.x86_64 -Installing nss-3.15.1-15.el6.x86_64 -Installing nss-sysinit-3.15.1-15.el6.x86_64 -Installing nss-tools-3.15.1-15.el6.x86_64 -Installing openldap-2.4.23-32.el6_4.1.x86_64 -Installing logrotate-3.7.8-17.el6.x86_64 -Installing gdbm-1.8.0-36.el6.x86_64 -Installing mingetty-1.08-5.el6.x86_64 -Installing keyutils-libs-1.4-4.el6.x86_64 -Installing krb5-libs-1.10.3-10.el6_4.6.x86_64 -Installing openssl-1.0.1e-15.el6.x86_64 -Installing libssh2-1.4.2-1.el6.x86_64 -Installing libcurl-7.19.7-37.el6_4.x86_64 -Installing gnupg2-2.0.14-6.el6_4.x86_64 -Installing gpgme-1.1.8-3.el6.x86_64 -Installing curl-7.19.7-37.el6_4.x86_64 -Installing rpm-libs-4.8.0-37.el6.x86_64 -Installing rpm-4.8.0-37.el6.x86_64 -Installing fipscheck-lib-1.2.0-7.el6.x86_64 -Installing fipscheck-1.2.0-7.el6.x86_64 -Installing mysql-libs-5.1.71-1.el6.x86_64 -Installing ethtool-3.5-1.el6.x86_64 -Installing pciutils-libs-3.1.10-2.el6.x86_64 -Installing plymouth-core-libs-0.8.3-27.el6.centos.x86_64 -Installing libcap-ng-0.6.4-3.el6_0.1.x86_64 -Installing libffi-3.0.5-3.2.el6.x86_64 -Installing python-2.6.6-51.el6.x86_64 -Installing python-libs-2.6.6-51.el6.x86_64 -Installing python-pycurl-7.19.0-8.el6.x86_64 -Installing python-urlgrabber-3.9.1-9.el6.noarch -Installing pygpgme-0.1-18.20090824bzr68.el6.x86_64 -Installing rpm-python-4.8.0-37.el6.x86_64 -Installing python-iniparse-0.3.1-2.1.el6.noarch -Installing slang-2.2.1-1.el6.x86_64 -Installing newt-0.52.11-3.el6.x86_64 -Installing newt-python-0.52.11-3.el6.x86_64 -Installing ustr-1.0.4-9.1.el6.x86_64 -Installing libsemanage-2.0.43-4.2.el6.x86_64 -Installing libaio-0.3.107-10.el6.x86_64 -Installing pkgconfig-0.23-9.1.el6.x86_64 -Installing gamin-0.1.10-9.el6.x86_64 diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_3/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/anaconda.log.template deleted file mode 100644 index f04da66a..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/anaconda.log.template +++ /dev/null @@ -1,286 +0,0 @@ -05:51:20,534 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af - -05:51:20,534 INFO : text mode forced from cmdline -05:51:20,534 DEBUG : readNetInfo /tmp/s390net not found, early return -05:51:20,534 INFO : anaconda version 13.21.215 on x86_64 starting -05:51:20,656 DEBUG : Saving module ipv6 -05:51:20,656 DEBUG : Saving module iscsi_ibft -05:51:20,656 DEBUG : Saving module iscsi_boot_sysfs -05:51:20,656 DEBUG : Saving module pcspkr -05:51:20,656 DEBUG : Saving module edd -05:51:20,656 DEBUG : Saving module floppy -05:51:20,656 DEBUG : Saving module iscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi -05:51:20,656 DEBUG : Saving module scsi_transport_iscsi -05:51:20,656 DEBUG : Saving module squashfs -05:51:20,656 DEBUG : Saving module cramfs -05:51:20,656 DEBUG : probing buses -05:51:20,693 DEBUG : waiting for hardware to initialize -05:51:27,902 DEBUG : probing buses -05:51:27,925 DEBUG : waiting for hardware to initialize -05:51:47,187 INFO : getting kickstart file -05:51:47,196 INFO : eth0 has link, using it -05:51:47,208 INFO : doing kickstart... setting it up -05:51:47,208 DEBUG : activating device eth0 -05:51:52,221 INFO : wait_for_iface_activation (2502): device eth0 activated -05:51:52,222 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,223 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,611 INFO : setting up kickstart -05:51:52,611 INFO : kickstart forcing text mode -05:51:52,611 INFO : kickstartFromUrl -05:51:52,612 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:51:52,612 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:51:52,616 INFO : drive status is CDS_TRAY_OPEN -05:51:52,616 ERROR : Drive tray reports open when it should be closed -05:52:07,635 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,636 DEBUG : going to set language to en_US.UTF-8 -05:52:07,636 INFO : setting language to en_US.UTF-8 -05:52:07,654 INFO : starting STEP_METHOD -05:52:07,654 DEBUG : loaderData->method is set, adding skipMethodDialog -05:52:07,654 DEBUG : skipMethodDialog is set -05:52:07,663 INFO : starting STEP_STAGE2 -05:52:07,663 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,663 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:52:07,780 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:52:07,780 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:52:07,780 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:52:07,814 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:52:07,815 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,354 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:52:47,354 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,403 INFO : Loading SELinux policy -05:52:48,130 INFO : getting ready to spawn shell now -05:52:48,359 INFO : Running anaconda script /usr/bin/anaconda -05:52:54,804 INFO : CentOS Linux is the highest priority installclass, using it -05:52:54,867 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:52:54,868 INFO : Running kickstart %%pre script(s) -05:52:54,868 WARNING : '/bin/sh' specified as full path -05:52:56,966 INFO : All kickstart %%pre script(s) have been run -05:52:57,017 INFO : ISCSID is /usr/sbin/iscsid -05:52:57,017 INFO : no initiator set -05:52:57,128 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:52:57,137 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:52:57,138 INFO : no /etc/zfcp.conf; not configuring zfcp -05:53:00,902 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -05:53:00,903 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:53:00,903 INFO : Display mode = t -05:53:00,903 INFO : Default encoding = utf-8 -05:53:01,064 INFO : Detected 2016M of memory -05:53:01,064 INFO : Swap attempt of 4032M -05:53:01,398 INFO : ISCSID is /usr/sbin/iscsid -05:53:01,399 INFO : no initiator set -05:53:05,059 INFO : setting installation environment hostname to server1 -05:53:05,104 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:53:05,276 INFO : Detected 2016M of memory -05:53:05,277 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:53:05,277 INFO : Swap attempt of 3276M -05:53:05,453 WARNING : step installtype does not exist -05:53:05,454 WARNING : step confirminstall does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,457 WARNING : step complete does not exist -05:53:05,457 INFO : moving (1) to step setuptime -05:53:05,458 DEBUG : setuptime is a direct step -22:53:05,458 WARNING : '/usr/sbin/hwclock' specified as full path -22:53:06,002 INFO : leaving (1) step setuptime -22:53:06,003 INFO : moving (1) to step autopartitionexecute -22:53:06,003 DEBUG : autopartitionexecute is a direct step -22:53:06,138 INFO : leaving (1) step autopartitionexecute -22:53:06,138 INFO : moving (1) to step storagedone -22:53:06,138 DEBUG : storagedone is a direct step -22:53:06,138 INFO : leaving (1) step storagedone -22:53:06,139 INFO : moving (1) to step enablefilesystems -22:53:06,139 DEBUG : enablefilesystems is a direct step -22:53:10,959 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:53:41,215 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:53:57,388 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:54:14,838 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:54:21,717 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:54:27,576 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:54:40,058 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:54:41,949 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:54:41,950 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-rootvol on /mnt/sysimage as ext3 with options defaults -22:54:42,826 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:54:43,148 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:54:43,158 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:54:43,164 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:54:43,207 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-homevol on /mnt/sysimage/home as ext3 with options defaults -22:54:43,434 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,435 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:54:43,439 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,496 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:54:43,609 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:54:43,874 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-varvol on /mnt/sysimage/var as ext3 with options defaults -22:54:44,056 INFO : leaving (1) step enablefilesystems -22:54:44,057 INFO : moving (1) to step bootloadersetup -22:54:44,057 DEBUG : bootloadersetup is a direct step -22:54:44,061 INFO : leaving (1) step bootloadersetup -22:54:44,061 INFO : moving (1) to step reposetup -22:54:44,061 DEBUG : reposetup is a direct step -22:54:56,952 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:54:56,953 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:54:57,133 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:54:57,454 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:54:58,637 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:54:58,971 INFO : leaving (1) step reposetup -22:54:58,971 INFO : moving (1) to step basepkgsel -22:54:58,972 DEBUG : basepkgsel is a direct step -22:54:58,986 WARNING : not adding Base group -22:54:59,388 INFO : leaving (1) step basepkgsel -22:54:59,388 INFO : moving (1) to step postselection -22:54:59,388 DEBUG : postselection is a direct step -22:54:59,390 INFO : selected kernel package for kernel -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:55:07,745 INFO : leaving (1) step postselection -22:55:07,745 INFO : moving (1) to step install -22:55:07,748 INFO : leaving (1) step install -22:55:07,748 INFO : moving (1) to step preinstallconfig -22:55:07,748 DEBUG : preinstallconfig is a direct step -22:55:08,087 DEBUG : isys.py:mount()- going to mount /selinux on /mnt/sysimage/selinux as selinuxfs with options defaults -22:55:08,091 DEBUG : isys.py:mount()- going to mount /proc/bus/usb on /mnt/sysimage/proc/bus/usb as usbfs with options defaults -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,122 INFO : leaving (1) step preinstallconfig -22:55:08,122 INFO : moving (1) to step installpackages -22:55:08,122 DEBUG : installpackages is a direct step -22:55:08,122 INFO : Preparing to install packages -23:17:06,152 INFO : leaving (1) step installpackages -23:17:06,153 INFO : moving (1) to step postinstallconfig -23:17:06,153 DEBUG : postinstallconfig is a direct step -23:17:06,162 DEBUG : Removing cachedir: /mnt/sysimage/var/cache/yum/anaconda-CentOS-201311291202.x86_64 -23:17:06,181 DEBUG : Removing headers and packages from /mnt/sysimage/var/cache/yum/ppa_repo -23:17:06,183 INFO : leaving (1) step postinstallconfig -23:17:06,184 INFO : moving (1) to step writeconfig -23:17:06,184 DEBUG : writeconfig is a direct step -23:17:06,184 INFO : Writing main configuration -23:17:06,219 WARNING : '/usr/sbin/authconfig' specified as full path -23:17:11,643 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,703 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,885 INFO : removing libuser.conf at /tmp/libuser.WMDW9M -23:17:11,885 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -23:17:12,722 INFO : leaving (1) step writeconfig -23:17:12,722 INFO : moving (1) to step firstboot -23:17:12,723 DEBUG : firstboot is a direct step -23:17:12,723 INFO : leaving (1) step firstboot -23:17:12,723 INFO : moving (1) to step instbootloader -23:17:12,724 DEBUG : instbootloader is a direct step -23:17:14,664 WARNING : '/sbin/grub-install' specified as full path -23:17:15,006 WARNING : '/sbin/grub' specified as full path -23:17:16,039 INFO : leaving (1) step instbootloader -23:17:16,040 INFO : moving (1) to step reipl -23:17:16,040 DEBUG : reipl is a direct step -23:17:16,040 INFO : leaving (1) step reipl -23:17:16,040 INFO : moving (1) to step writeksconfig -23:17:16,040 DEBUG : writeksconfig is a direct step -23:17:16,041 INFO : Writing autokickstart file -23:17:16,070 INFO : leaving (1) step writeksconfig -23:17:16,071 INFO : moving (1) to step setfilecon -23:17:16,071 DEBUG : setfilecon is a direct step -23:17:16,071 INFO : setting SELinux contexts for anaconda created files -23:17:17,822 INFO : leaving (1) step setfilecon -23:17:17,822 INFO : moving (1) to step copylogs -23:17:17,822 DEBUG : copylogs is a direct step -23:17:17,822 INFO : Copying anaconda logs -23:17:17,825 INFO : leaving (1) step copylogs -23:17:17,825 INFO : moving (1) to step methodcomplete -23:17:17,825 DEBUG : methodcomplete is a direct step -23:17:17,825 INFO : leaving (1) step methodcomplete -23:17:17,826 INFO : moving (1) to step postscripts -23:17:17,826 DEBUG : postscripts is a direct step -23:17:17,826 INFO : Running kickstart %%post script(s) -23:17:17,858 WARNING : '/bin/sh' specified as full path -23:17:21,002 INFO : All kickstart %%post script(s) have been run -23:17:21,002 INFO : leaving (1) step postscripts -23:17:21,002 INFO : moving (1) to step dopostaction -23:17:21,002 DEBUG : dopostaction is a direct step -23:17:21,003 INFO : leaving (1) step dopostaction diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/chef-client.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/chef-client.log.template deleted file mode 100644 index 642c8489..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/chef-client.log.template +++ /dev/null @@ -1,18 +0,0 @@ -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: execute[Keystone: sleep] ran successfully -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing directory[/etc/keystone] action create (openstack-identity::server line 73) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: directory[/etc/keystone] owner changed to 163 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: directory[/etc/keystone] mode changed to 700 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing directory[/etc/keystone/ssl] action create (openstack-identity::server line 79) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing file[/var/lib/keystone/keystone.db] action delete (openstack-identity::server line 87) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing execute[keystone-manage pki_setup] action run (openstack-identity::server line 91) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing template[/etc/keystone/keystone.conf] action create (openstack-identity::server line 140) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] backed up to /var/chef/backup/etc/keystone/keystone.conf.chef-20140221203911.069202 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] updated file contents /etc/keystone/keystone.conf -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] owner changed to 163 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] mode changed to 644 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] sending restart action to service[keystone] (immediate) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing service[keystone] action restart (openstack-identity::server line 64) -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: service[keystone] restarted -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: service[keystone] sending run action to execute[Keystone: sleep] (immediate) -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing execute[Keystone: sleep] action run (openstack-identity::server line 58) -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: execute[Keystone: sleep] ran successfully diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/install.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/install.log.template deleted file mode 100644 index 861b3a53..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/install.log.template +++ /dev/null @@ -1,212 +0,0 @@ -Installing libgcc-4.4.7-4.el6.x86_64 -warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY -Installing setup-2.8.14-20.el6_4.1.noarch -Installing filesystem-2.4.30-3.el6.x86_64 -Installing basesystem-10.0-4.el6.noarch -Installing ncurses-base-5.7-3.20090208.el6.x86_64 -Installing kernel-firmware-2.6.32-431.el6.noarch -Installing tzdata-2013g-1.el6.noarch -Installing nss-softokn-freebl-3.14.3-9.el6.x86_64 -Installing glibc-common-2.12-1.132.el6.x86_64 -Installing glibc-2.12-1.132.el6.x86_64 -Installing ncurses-libs-5.7-3.20090208.el6.x86_64 -Installing bash-4.1.2-15.el6_4.x86_64 -Installing libattr-2.4.44-7.el6.x86_64 -Installing libcap-2.16-5.5.el6.x86_64 -Installing zlib-1.2.3-29.el6.x86_64 -Installing info-4.13a-8.el6.x86_64 -Installing popt-1.13-7.el6.x86_64 -Installing chkconfig-1.3.49.3-2.el6_4.1.x86_64 -Installing audit-libs-2.2-2.el6.x86_64 -Installing libcom_err-1.41.12-18.el6.x86_64 -Installing libacl-2.2.49-6.el6.x86_64 -Installing db4-4.7.25-18.el6_4.x86_64 -Installing nspr-4.10.0-1.el6.x86_64 -Installing nss-util-3.15.1-3.el6.x86_64 -Installing readline-6.0-4.el6.x86_64 -Installing libsepol-2.0.41-4.el6.x86_64 -Installing libselinux-2.0.94-5.3.el6_4.1.x86_64 -Installing shadow-utils-4.1.4.2-13.el6.x86_64 -Installing sed-4.2.1-10.el6.x86_64 -Installing bzip2-libs-1.0.5-7.el6_0.x86_64 -Installing libuuid-2.17.2-12.14.el6.x86_64 -Installing libstdc++-4.4.7-4.el6.x86_64 -Installing libblkid-2.17.2-12.14.el6.x86_64 -Installing gawk-3.1.7-10.el6.x86_64 -Installing file-libs-5.04-15.el6.x86_64 -Installing libgpg-error-1.7-4.el6.x86_64 -Installing dbus-libs-1.2.24-7.el6_3.x86_64 -Installing libudev-147-2.51.el6.x86_64 -Installing pcre-7.8-6.el6.x86_64 -Installing grep-2.6.3-4.el6.x86_64 -Installing lua-5.1.4-4.1.el6.x86_64 -Installing sqlite-3.6.20-1.el6.x86_64 -Installing cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 -Installing libidn-1.18-2.el6.x86_64 -Installing expat-2.0.1-11.el6_2.x86_64 -Installing xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64 -Installing elfutils-libelf-0.152-1.el6.x86_64 -Installing libgcrypt-1.4.5-11.el6_4.x86_64 -Installing bzip2-1.0.5-7.el6_0.x86_64 -Installing findutils-4.4.2-6.el6.x86_64 -Installing libselinux-utils-2.0.94-5.3.el6_4.1.x86_64 -Installing checkpolicy-2.0.22-1.el6.x86_64 -Installing cpio-2.10-11.el6_3.x86_64 -Installing which-2.19-6.el6.x86_64 -Installing libxml2-2.7.6-14.el6.x86_64 -Installing libedit-2.11-4.20080712cvs.1.el6.x86_64 -Installing pth-2.0.7-9.3.el6.x86_64 -Installing tcp_wrappers-libs-7.6-57.el6.x86_64 -Installing sysvinit-tools-2.87-5.dsf.el6.x86_64 -Installing libtasn1-2.3-3.el6_2.1.x86_64 -Installing p11-kit-0.18.5-2.el6.x86_64 -Installing p11-kit-trust-0.18.5-2.el6.x86_64 -Installing ca-certificates-2013.1.94-65.0.el6.noarch -Installing device-mapper-persistent-data-0.2.8-2.el6.x86_64 -Installing nss-softokn-3.14.3-9.el6.x86_64 -Installing libnih-1.0.1-7.el6.x86_64 -Installing upstart-0.6.5-12.el6_4.1.x86_64 -Installing file-5.04-15.el6.x86_64 -Installing gmp-4.3.1-7.el6_2.2.x86_64 -Installing libusb-0.1.12-23.el6.x86_64 -Installing MAKEDEV-3.24-6.el6.x86_64 -Installing libutempter-1.1.5-4.1.el6.x86_64 -Installing psmisc-22.6-15.el6_0.1.x86_64 -Installing net-tools-1.60-110.el6_2.x86_64 -Installing vim-minimal-7.2.411-1.8.el6.x86_64 -Installing tar-1.23-11.el6.x86_64 -Installing procps-3.2.8-25.el6.x86_64 -Installing db4-utils-4.7.25-18.el6_4.x86_64 -Installing e2fsprogs-libs-1.41.12-18.el6.x86_64 -Installing libss-1.41.12-18.el6.x86_64 -Installing pinentry-0.7.6-6.el6.x86_64 -Installing binutils-2.20.51.0.2-5.36.el6.x86_64 -Installing m4-1.4.13-5.el6.x86_64 -Installing diffutils-2.8.1-28.el6.x86_64 -Installing make-3.81-20.el6.x86_64 -Installing dash-0.5.5.1-4.el6.x86_64 -Installing ncurses-5.7-3.20090208.el6.x86_64 -Installing groff-1.18.1.4-21.el6.x86_64 -Installing less-436-10.el6.x86_64 -Installing coreutils-libs-8.4-31.el6.x86_64 -Installing gzip-1.3.12-19.el6_4.x86_64 -Installing cracklib-2.8.16-4.el6.x86_64 -Installing cracklib-dicts-2.8.16-4.el6.x86_64 -Installing coreutils-8.4-31.el6.x86_64 -Installing pam-1.1.1-17.el6.x86_64 -Installing module-init-tools-3.9-21.el6_4.x86_64 -Installing hwdata-0.233-9.1.el6.noarch -Installing redhat-logos-60.0.14-12.el6.centos.noarch -Installing plymouth-scripts-0.8.3-27.el6.centos.x86_64 -Installing libpciaccess-0.13.1-2.el6.x86_64 -Installing nss-3.15.1-15.el6.x86_64 -Installing nss-sysinit-3.15.1-15.el6.x86_64 -Installing nss-tools-3.15.1-15.el6.x86_64 -Installing openldap-2.4.23-32.el6_4.1.x86_64 -Installing logrotate-3.7.8-17.el6.x86_64 -Installing gdbm-1.8.0-36.el6.x86_64 -Installing mingetty-1.08-5.el6.x86_64 -Installing keyutils-libs-1.4-4.el6.x86_64 -Installing krb5-libs-1.10.3-10.el6_4.6.x86_64 -Installing openssl-1.0.1e-15.el6.x86_64 -Installing libssh2-1.4.2-1.el6.x86_64 -Installing libcurl-7.19.7-37.el6_4.x86_64 -Installing gnupg2-2.0.14-6.el6_4.x86_64 -Installing gpgme-1.1.8-3.el6.x86_64 -Installing curl-7.19.7-37.el6_4.x86_64 -Installing rpm-libs-4.8.0-37.el6.x86_64 -Installing rpm-4.8.0-37.el6.x86_64 -Installing fipscheck-lib-1.2.0-7.el6.x86_64 -Installing fipscheck-1.2.0-7.el6.x86_64 -Installing mysql-libs-5.1.71-1.el6.x86_64 -Installing ethtool-3.5-1.el6.x86_64 -Installing pciutils-libs-3.1.10-2.el6.x86_64 -Installing plymouth-core-libs-0.8.3-27.el6.centos.x86_64 -Installing libcap-ng-0.6.4-3.el6_0.1.x86_64 -Installing libffi-3.0.5-3.2.el6.x86_64 -Installing python-2.6.6-51.el6.x86_64 -Installing python-libs-2.6.6-51.el6.x86_64 -Installing python-pycurl-7.19.0-8.el6.x86_64 -Installing python-urlgrabber-3.9.1-9.el6.noarch -Installing pygpgme-0.1-18.20090824bzr68.el6.x86_64 -Installing rpm-python-4.8.0-37.el6.x86_64 -Installing python-iniparse-0.3.1-2.1.el6.noarch -Installing slang-2.2.1-1.el6.x86_64 -Installing newt-0.52.11-3.el6.x86_64 -Installing newt-python-0.52.11-3.el6.x86_64 -Installing ustr-1.0.4-9.1.el6.x86_64 -Installing libsemanage-2.0.43-4.2.el6.x86_64 -Installing libaio-0.3.107-10.el6.x86_64 -Installing pkgconfig-0.23-9.1.el6.x86_64 -Installing gamin-0.1.10-9.el6.x86_64 -Installing glib2-2.26.1-3.el6.x86_64 -Installing shared-mime-info-0.70-4.el6.x86_64 -Installing libuser-0.56.13-5.el6.x86_64 -Installing grubby-7.0.15-5.el6.x86_64 -Installing yum-metadata-parser-1.1.2-16.el6.x86_64 -Installing yum-plugin-fastestmirror-1.1.30-14.el6.noarch -Installing yum-3.2.29-40.el6.centos.noarch -Installing dbus-glib-0.86-6.el6.x86_64 -Installing dhcp-common-4.1.1-38.P1.el6.centos.x86_64 -Installing centos-release-6-5.el6.centos.11.1.x86_64 -Installing policycoreutils-2.0.83-19.39.el6.x86_64 -Installing iptables-1.4.7-11.el6.x86_64 -Installing iproute-2.6.32-31.el6.x86_64 -Installing iputils-20071127-17.el6_4.2.x86_64 -Installing util-linux-ng-2.17.2-12.14.el6.x86_64 -Installing initscripts-9.03.40-2.el6.centos.x86_64 -Installing udev-147-2.51.el6.x86_64 -Installing device-mapper-libs-1.02.79-8.el6.x86_64 -Installing device-mapper-1.02.79-8.el6.x86_64 -Installing device-mapper-event-libs-1.02.79-8.el6.x86_64 -Installing openssh-5.3p1-94.el6.x86_64 -Installing device-mapper-event-1.02.79-8.el6.x86_64 -Installing lvm2-libs-2.02.100-8.el6.x86_64 -Installing cryptsetup-luks-libs-1.2.0-7.el6.x86_64 -Installing device-mapper-multipath-libs-0.4.9-72.el6.x86_64 -Installing kpartx-0.4.9-72.el6.x86_64 -Installing libdrm-2.4.45-2.el6.x86_64 -Installing plymouth-0.8.3-27.el6.centos.x86_64 -Installing rsyslog-5.8.10-8.el6.x86_64 -Installing cyrus-sasl-2.1.23-13.el6_3.1.x86_64 -Installing postfix-2.6.6-2.2.el6_1.x86_64 -Installing cronie-anacron-1.4.4-12.el6.x86_64 -Installing cronie-1.4.4-12.el6.x86_64 -Installing crontabs-1.10-33.el6.noarch -Installing ntpdate-4.2.6p5-1.el6.centos.x86_64 -Installing iptables-ipv6-1.4.7-11.el6.x86_64 -Installing selinux-policy-3.7.19-231.el6.noarch -Installing kbd-misc-1.15-11.el6.noarch -Installing kbd-1.15-11.el6.x86_64 -Installing dracut-004-335.el6.noarch -Installing dracut-kernel-004-335.el6.noarch -Installing kernel-2.6.32-431.el6.x86_64 -Installing fuse-2.8.3-4.el6.x86_64 -Installing selinux-policy-targeted-3.7.19-231.el6.noarch -Installing system-config-firewall-base-1.2.27-5.el6.noarch -Installing ntp-4.2.6p5-1.el6.centos.x86_64 -Installing device-mapper-multipath-0.4.9-72.el6.x86_64 -Installing cryptsetup-luks-1.2.0-7.el6.x86_64 -Installing lvm2-2.02.100-8.el6.x86_64 -Installing openssh-clients-5.3p1-94.el6.x86_64 -Installing openssh-server-5.3p1-94.el6.x86_64 -Installing mdadm-3.2.6-7.el6.x86_64 -Installing b43-openfwwf-5.2-4.el6.noarch -Installing dhclient-4.1.1-38.P1.el6.centos.x86_64 -Installing iscsi-initiator-utils-6.2.0.873-10.el6.x86_64 -Installing passwd-0.77-4.el6_2.2.x86_64 -Installing authconfig-6.1.12-13.el6.x86_64 -Installing grub-0.97-83.el6.x86_64 -Installing efibootmgr-0.5.4-11.el6.x86_64 -Installing wget-1.12-1.8.el6.x86_64 -Installing sudo-1.8.6p3-12.el6.x86_64 -Installing audit-2.2-2.el6.x86_64 -Installing e2fsprogs-1.41.12-18.el6.x86_64 -Installing xfsprogs-3.1.1-14.el6.x86_64 -Installing acl-2.2.49-6.el6.x86_64 -Installing attr-2.4.44-7.el6.x86_64 -Installing chef-11.8.0-1.el6.x86_64 -warning: chef-11.8.0-1.el6.x86_64: Header V4 DSA/SHA1 Signature, key ID 83ef826a: NOKEY -Installing bridge-utils-1.2-10.el6.x86_64 -Installing rootfiles-8.1-6.1.el6.noarch -*** FINISHED INSTALLING PACKAGES *** \ No newline at end of file diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_4/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/anaconda.log.template deleted file mode 100644 index f04da66a..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/anaconda.log.template +++ /dev/null @@ -1,286 +0,0 @@ -05:51:20,534 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af - -05:51:20,534 INFO : text mode forced from cmdline -05:51:20,534 DEBUG : readNetInfo /tmp/s390net not found, early return -05:51:20,534 INFO : anaconda version 13.21.215 on x86_64 starting -05:51:20,656 DEBUG : Saving module ipv6 -05:51:20,656 DEBUG : Saving module iscsi_ibft -05:51:20,656 DEBUG : Saving module iscsi_boot_sysfs -05:51:20,656 DEBUG : Saving module pcspkr -05:51:20,656 DEBUG : Saving module edd -05:51:20,656 DEBUG : Saving module floppy -05:51:20,656 DEBUG : Saving module iscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi -05:51:20,656 DEBUG : Saving module scsi_transport_iscsi -05:51:20,656 DEBUG : Saving module squashfs -05:51:20,656 DEBUG : Saving module cramfs -05:51:20,656 DEBUG : probing buses -05:51:20,693 DEBUG : waiting for hardware to initialize -05:51:27,902 DEBUG : probing buses -05:51:27,925 DEBUG : waiting for hardware to initialize -05:51:47,187 INFO : getting kickstart file -05:51:47,196 INFO : eth0 has link, using it -05:51:47,208 INFO : doing kickstart... setting it up -05:51:47,208 DEBUG : activating device eth0 -05:51:52,221 INFO : wait_for_iface_activation (2502): device eth0 activated -05:51:52,222 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,223 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,611 INFO : setting up kickstart -05:51:52,611 INFO : kickstart forcing text mode -05:51:52,611 INFO : kickstartFromUrl -05:51:52,612 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:51:52,612 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:51:52,616 INFO : drive status is CDS_TRAY_OPEN -05:51:52,616 ERROR : Drive tray reports open when it should be closed -05:52:07,635 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,636 DEBUG : going to set language to en_US.UTF-8 -05:52:07,636 INFO : setting language to en_US.UTF-8 -05:52:07,654 INFO : starting STEP_METHOD -05:52:07,654 DEBUG : loaderData->method is set, adding skipMethodDialog -05:52:07,654 DEBUG : skipMethodDialog is set -05:52:07,663 INFO : starting STEP_STAGE2 -05:52:07,663 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,663 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:52:07,780 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:52:07,780 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:52:07,780 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:52:07,814 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:52:07,815 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,354 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:52:47,354 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,403 INFO : Loading SELinux policy -05:52:48,130 INFO : getting ready to spawn shell now -05:52:48,359 INFO : Running anaconda script /usr/bin/anaconda -05:52:54,804 INFO : CentOS Linux is the highest priority installclass, using it -05:52:54,867 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:52:54,868 INFO : Running kickstart %%pre script(s) -05:52:54,868 WARNING : '/bin/sh' specified as full path -05:52:56,966 INFO : All kickstart %%pre script(s) have been run -05:52:57,017 INFO : ISCSID is /usr/sbin/iscsid -05:52:57,017 INFO : no initiator set -05:52:57,128 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:52:57,137 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:52:57,138 INFO : no /etc/zfcp.conf; not configuring zfcp -05:53:00,902 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -05:53:00,903 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:53:00,903 INFO : Display mode = t -05:53:00,903 INFO : Default encoding = utf-8 -05:53:01,064 INFO : Detected 2016M of memory -05:53:01,064 INFO : Swap attempt of 4032M -05:53:01,398 INFO : ISCSID is /usr/sbin/iscsid -05:53:01,399 INFO : no initiator set -05:53:05,059 INFO : setting installation environment hostname to server1 -05:53:05,104 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:53:05,276 INFO : Detected 2016M of memory -05:53:05,277 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:53:05,277 INFO : Swap attempt of 3276M -05:53:05,453 WARNING : step installtype does not exist -05:53:05,454 WARNING : step confirminstall does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,457 WARNING : step complete does not exist -05:53:05,457 INFO : moving (1) to step setuptime -05:53:05,458 DEBUG : setuptime is a direct step -22:53:05,458 WARNING : '/usr/sbin/hwclock' specified as full path -22:53:06,002 INFO : leaving (1) step setuptime -22:53:06,003 INFO : moving (1) to step autopartitionexecute -22:53:06,003 DEBUG : autopartitionexecute is a direct step -22:53:06,138 INFO : leaving (1) step autopartitionexecute -22:53:06,138 INFO : moving (1) to step storagedone -22:53:06,138 DEBUG : storagedone is a direct step -22:53:06,138 INFO : leaving (1) step storagedone -22:53:06,139 INFO : moving (1) to step enablefilesystems -22:53:06,139 DEBUG : enablefilesystems is a direct step -22:53:10,959 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:53:41,215 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:53:57,388 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:54:14,838 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:54:21,717 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:54:27,576 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:54:40,058 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:54:41,949 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:54:41,950 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-rootvol on /mnt/sysimage as ext3 with options defaults -22:54:42,826 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:54:43,148 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:54:43,158 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:54:43,164 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:54:43,207 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-homevol on /mnt/sysimage/home as ext3 with options defaults -22:54:43,434 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,435 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:54:43,439 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,496 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:54:43,609 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:54:43,874 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-varvol on /mnt/sysimage/var as ext3 with options defaults -22:54:44,056 INFO : leaving (1) step enablefilesystems -22:54:44,057 INFO : moving (1) to step bootloadersetup -22:54:44,057 DEBUG : bootloadersetup is a direct step -22:54:44,061 INFO : leaving (1) step bootloadersetup -22:54:44,061 INFO : moving (1) to step reposetup -22:54:44,061 DEBUG : reposetup is a direct step -22:54:56,952 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:54:56,953 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:54:57,133 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:54:57,454 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:54:58,637 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:54:58,971 INFO : leaving (1) step reposetup -22:54:58,971 INFO : moving (1) to step basepkgsel -22:54:58,972 DEBUG : basepkgsel is a direct step -22:54:58,986 WARNING : not adding Base group -22:54:59,388 INFO : leaving (1) step basepkgsel -22:54:59,388 INFO : moving (1) to step postselection -22:54:59,388 DEBUG : postselection is a direct step -22:54:59,390 INFO : selected kernel package for kernel -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:55:07,745 INFO : leaving (1) step postselection -22:55:07,745 INFO : moving (1) to step install -22:55:07,748 INFO : leaving (1) step install -22:55:07,748 INFO : moving (1) to step preinstallconfig -22:55:07,748 DEBUG : preinstallconfig is a direct step -22:55:08,087 DEBUG : isys.py:mount()- going to mount /selinux on /mnt/sysimage/selinux as selinuxfs with options defaults -22:55:08,091 DEBUG : isys.py:mount()- going to mount /proc/bus/usb on /mnt/sysimage/proc/bus/usb as usbfs with options defaults -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,122 INFO : leaving (1) step preinstallconfig -22:55:08,122 INFO : moving (1) to step installpackages -22:55:08,122 DEBUG : installpackages is a direct step -22:55:08,122 INFO : Preparing to install packages -23:17:06,152 INFO : leaving (1) step installpackages -23:17:06,153 INFO : moving (1) to step postinstallconfig -23:17:06,153 DEBUG : postinstallconfig is a direct step -23:17:06,162 DEBUG : Removing cachedir: /mnt/sysimage/var/cache/yum/anaconda-CentOS-201311291202.x86_64 -23:17:06,181 DEBUG : Removing headers and packages from /mnt/sysimage/var/cache/yum/ppa_repo -23:17:06,183 INFO : leaving (1) step postinstallconfig -23:17:06,184 INFO : moving (1) to step writeconfig -23:17:06,184 DEBUG : writeconfig is a direct step -23:17:06,184 INFO : Writing main configuration -23:17:06,219 WARNING : '/usr/sbin/authconfig' specified as full path -23:17:11,643 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,703 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,885 INFO : removing libuser.conf at /tmp/libuser.WMDW9M -23:17:11,885 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -23:17:12,722 INFO : leaving (1) step writeconfig -23:17:12,722 INFO : moving (1) to step firstboot -23:17:12,723 DEBUG : firstboot is a direct step -23:17:12,723 INFO : leaving (1) step firstboot -23:17:12,723 INFO : moving (1) to step instbootloader -23:17:12,724 DEBUG : instbootloader is a direct step -23:17:14,664 WARNING : '/sbin/grub-install' specified as full path -23:17:15,006 WARNING : '/sbin/grub' specified as full path -23:17:16,039 INFO : leaving (1) step instbootloader -23:17:16,040 INFO : moving (1) to step reipl -23:17:16,040 DEBUG : reipl is a direct step -23:17:16,040 INFO : leaving (1) step reipl -23:17:16,040 INFO : moving (1) to step writeksconfig -23:17:16,040 DEBUG : writeksconfig is a direct step -23:17:16,041 INFO : Writing autokickstart file -23:17:16,070 INFO : leaving (1) step writeksconfig -23:17:16,071 INFO : moving (1) to step setfilecon -23:17:16,071 DEBUG : setfilecon is a direct step -23:17:16,071 INFO : setting SELinux contexts for anaconda created files -23:17:17,822 INFO : leaving (1) step setfilecon -23:17:17,822 INFO : moving (1) to step copylogs -23:17:17,822 DEBUG : copylogs is a direct step -23:17:17,822 INFO : Copying anaconda logs -23:17:17,825 INFO : leaving (1) step copylogs -23:17:17,825 INFO : moving (1) to step methodcomplete -23:17:17,825 DEBUG : methodcomplete is a direct step -23:17:17,825 INFO : leaving (1) step methodcomplete -23:17:17,826 INFO : moving (1) to step postscripts -23:17:17,826 DEBUG : postscripts is a direct step -23:17:17,826 INFO : Running kickstart %%post script(s) -23:17:17,858 WARNING : '/bin/sh' specified as full path -23:17:21,002 INFO : All kickstart %%post script(s) have been run -23:17:21,002 INFO : leaving (1) step postscripts -23:17:21,002 INFO : moving (1) to step dopostaction -23:17:21,002 DEBUG : dopostaction is a direct step -23:17:21,003 INFO : leaving (1) step dopostaction diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/chef-client.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/chef-client.log.template deleted file mode 100644 index 58640d9d..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/chef-client.log.template +++ /dev/null @@ -1,422 +0,0 @@ -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: execute[Keystone: sleep] ran successfully -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing directory[/etc/keystone] action create (openstack-identity::server line 73) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: directory[/etc/keystone] owner changed to 163 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: directory[/etc/keystone] mode changed to 700 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing directory[/etc/keystone/ssl] action create (openstack-identity::server line 79) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing file[/var/lib/keystone/keystone.db] action delete (openstack-identity::server line 87) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing execute[keystone-manage pki_setup] action run (openstack-identity::server line 91) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing template[/etc/keystone/keystone.conf] action create (openstack-identity::server line 140) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] backed up to /var/chef/backup/etc/keystone/keystone.conf.chef-20140221203911.069202 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] updated file contents /etc/keystone/keystone.conf -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] owner changed to 163 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] mode changed to 644 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] sending restart action to service[keystone] (immediate) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing service[keystone] action restart (openstack-identity::server line 64) -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: service[keystone] restarted -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: service[keystone] sending run action to execute[Keystone: sleep] (immediate) -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing execute[Keystone: sleep] action run (openstack-identity::server line 58) -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: execute[Keystone: sleep] ran successfully -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: Processing template[/etc/keystone/default_catalog.templates] action create (openstack-identity::server line 158) -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: Processing execute[keystone-manage db_sync] action run (openstack-identity::server line 172) -Feb 21 20:39:43 server1.1 [2014-02-21T20:39:42-08:00] INFO: execute[keystone-manage db_sync] ran successfully -Feb 21 20:39:43 server1.1 [2014-02-21T20:39:42-08:00] INFO: Processing bash[bootstrap-keystone-admin] action run (openstack-identity::registration line 40) -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: bash[bootstrap-keystone-admin] ran successfully -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Processing openstack-identity_register[Register 'admin' Tenant] action create_tenant (openstack-identity::registration line 80) -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Tenant 'admin' already exists.. Not creating. -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Tenant UUID: 87cf46951cc14159bd16b68e3eb96321 -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Processing openstack-identity_register[Register 'service' Tenant] action create_tenant (openstack-identity::registration line 80) -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Created tenant 'service' -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Processing openstack-identity_register[Register 'admin' Role] action create_role (openstack-identity::registration line 92) -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Role 'admin' already exists.. Not creating. -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Role UUID: 8070c199fc2647c9a50176d11256bebc -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Processing openstack-identity_register[Register 'Member' Role] action create_role (openstack-identity::registration line 92) -Feb 21 20:39:47 server1.1 [2014-02-21T20:39:46-08:00] INFO: Created Role 'Member' -Feb 21 20:39:47 server1.1 [2014-02-21T20:39:46-08:00] INFO: Processing openstack-identity_register[Register 'compute' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:48 server1.1 [2014-02-21T20:39:47-08:00] INFO: Created user 'service' for tenant 'service' -Feb 21 20:39:48 server1.1 [2014-02-21T20:39:47-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:39:49 server1.1 [2014-02-21T20:39:48-08:00] INFO: Granted Role 'admin' to User 'service' in Tenant 'service' -Feb 21 20:39:49 server1.1 [2014-02-21T20:39:48-08:00] INFO: Processing openstack-identity_register[Register compute Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:49-08:00] INFO: Created service 'nova' -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:49-08:00] INFO: Processing openstack-identity_register[Register compute Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:50-08:00] INFO: Created endpoint for service type 'compute' -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:50-08:00] INFO: Processing openstack-identity_register[Register 'network' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:51 server1.1 [2014-02-21T20:39:50-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:39:51 server1.1 [2014-02-21T20:39:50-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:39:52 server1.1 [2014-02-21T20:39:51-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:39:52 server1.1 [2014-02-21T20:39:51-08:00] INFO: Processing openstack-identity_register[Register network Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:53 server1.1 [2014-02-21T20:39:52-08:00] INFO: Created service 'quantum' -Feb 21 20:39:53 server1.1 [2014-02-21T20:39:52-08:00] INFO: Processing openstack-identity_register[Register network Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: Created endpoint for service type 'network' -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: Processing openstack-identity_register[Register 'volume' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:39:55 server1.1 [2014-02-21T20:39:54-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:39:55 server1.1 [2014-02-21T20:39:54-08:00] INFO: Processing openstack-identity_register[Register volume Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:56 server1.1 [2014-02-21T20:39:55-08:00] INFO: Created service 'cinder' -Feb 21 20:39:56 server1.1 [2014-02-21T20:39:55-08:00] INFO: Processing openstack-identity_register[Register volume Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Created endpoint for service type 'volume' -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Processing openstack-identity_register[Register identity Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Created service 'keystone' -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Processing openstack-identity_register[Register identity Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:58 server1.1 [2014-02-21T20:39:57-08:00] INFO: Created endpoint for service type 'identity' -Feb 21 20:39:58 server1.1 [2014-02-21T20:39:57-08:00] INFO: Processing openstack-identity_register[Register 'image' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:59 server1.1 [2014-02-21T20:39:58-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:39:59 server1.1 [2014-02-21T20:39:58-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:40:00 server1.1 [2014-02-21T20:39:59-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:40:00 server1.1 [2014-02-21T20:39:59-08:00] INFO: Processing openstack-identity_register[Register image Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:40:00 server1.1 [2014-02-21T20:40:00-08:00] INFO: Created service 'glance' -Feb 21 20:40:00 server1.1 [2014-02-21T20:40:00-08:00] INFO: Processing openstack-identity_register[Register image Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:40:01 server1.1 [2014-02-21T20:40:00-08:00] INFO: Created endpoint for service type 'image' -Feb 21 20:40:01 server1.1 [2014-02-21T20:40:00-08:00] INFO: Processing openstack-identity_register[Register 'object-store' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:40:02 server1.1 [2014-02-21T20:40:01-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:40:02 server1.1 [2014-02-21T20:40:01-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:40:03 server1.1 [2014-02-21T20:40:02-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:40:03 server1.1 [2014-02-21T20:40:02-08:00] INFO: Processing openstack-identity_register[Register object-store Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:40:04 server1.1 [2014-02-21T20:40:03-08:00] INFO: Created service 'swift' -Feb 21 20:40:04 server1.1 [2014-02-21T20:40:03-08:00] INFO: Processing openstack-identity_register[Create EC2 credentials for 'admin' user] action create_ec2_credentials (openstack-identity::registration line 166) -Feb 21 20:40:05 server1.1 [2014-02-21T20:40:04-08:00] INFO: Created EC2 Credentials for User 'admin' in Tenant 'admin' -Feb 21 20:40:05 server1.1 [2014-02-21T20:40:04-08:00] INFO: Processing openstack-identity_register[Create EC2 credentials for 'monitoring' user] action create_ec2_credentials (openstack-identity::registration line 166) -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] ERROR: Unable to create EC2 Credentials for User 'monitoring' in Tenant 'service' -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] ERROR: Error was: Could not lookup uuid for ec2-credentials:tenant=>service. Error was 'Client' object has no attribute 'auth_user_id' -Feb 21 20:40:07 server1.1 (1) -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] INFO: Processing package[openstack-cinder] action upgrade (openstack-block-storage::cinder-common line 26) -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] INFO: package[openstack-cinder] installing openstack-cinder-2013.1.4-1.el6 from openstack repository -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: package[openstack-cinder] upgraded from uninstalled to 2013.1.4-1.el6 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing directory[/etc/cinder] action create (openstack-block-storage::cinder-common line 44) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/etc/cinder] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/etc/cinder] group changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/etc/cinder] mode changed to 750 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing template[/etc/cinder/cinder.conf] action create (openstack-block-storage::cinder-common line 51) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] backed up to /var/chef/backup/etc/cinder/cinder.conf.chef-20140221204110.415861 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] updated file contents /etc/cinder/cinder.conf -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] mode changed to 644 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing package[python-cinderclient] action upgrade (openstack-block-storage::api line 32) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing package[MySQL-python] action upgrade (openstack-block-storage::api line 41) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing directory[/var/cache/cinder] action create (openstack-block-storage::api line 46) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] created directory /var/cache/cinder -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] group changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] mode changed to 700 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing directory[/var/lock/cinder] action create (openstack-block-storage::api line 52) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] created directory /var/lock/cinder -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] group changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] mode changed to 700 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing service[cinder-api] action enable (openstack-block-storage::api line 58) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: service[cinder-api] enabled -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing execute[cinder-manage db sync] action run (openstack-block-storage::api line 71) -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: execute[cinder-manage db sync] ran successfully -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing template[/etc/cinder/api-paste.ini] action create (openstack-block-storage::api line 73) -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] backed up to /var/chef/backup/etc/cinder/api-paste.ini.chef-20140221204130.194587 -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] updated file contents /etc/cinder/api-paste.ini -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] owner changed to 165 -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] mode changed to 644 -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] sending restart action to service[cinder-api] (immediate) -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing service[cinder-api] action restart (openstack-block-storage::api line 58) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: service[cinder-api] restarted -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing template[/etc/cinder/policy.json] action create (openstack-block-storage::api line 88) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] backed up to /var/chef/backup/etc/cinder/policy.json.chef-20140221204130.442890 -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] updated file contents /etc/cinder/policy.json -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] owner changed to 165 -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] mode changed to 644 -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] not queuing delayed action restart on service[cinder-api] (delayed), as it's already been queued -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing package[MySQL-python] action upgrade (openstack-block-storage::scheduler line 45) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing service[cinder-scheduler] action enable (openstack-block-storage::scheduler line 50) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: service[cinder-scheduler] enabled -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing service[cinder-scheduler] action start (openstack-block-storage::scheduler line 50) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: service[cinder-scheduler] started -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing package[openstack-nova-common] action upgrade (openstack-compute::nova-common line 37) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: package[openstack-nova-common] installing openstack-nova-common-2013.1.4-7.el6 from openstack repository -Feb 21 20:41:52 server1.1 [2014-02-21T20:41:52-08:00] INFO: package[openstack-nova-common] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:41:52 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing package[python-memcached] action install (openstack-compute::nova-common line 46) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing directory[/etc/nova] action create (openstack-compute::nova-common line 51) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova] owner changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova] group changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova] mode changed to 700 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing directory[/etc/nova/rootwrap.d] action create (openstack-compute::nova-common line 59) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] created directory /etc/nova/rootwrap.d -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] mode changed to 700 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/nova.conf] action create (openstack-compute::nova-common line 134) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] backed up to /var/chef/backup/etc/nova/nova.conf.chef-20140221204152.340272 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] updated file contents /etc/nova/nova.conf -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] owner changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.conf] action create (openstack-compute::nova-common line 164) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] backed up to /var/chef/backup/etc/nova/rootwrap.conf.chef-20140221204152.347747 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] updated file contents /etc/nova/rootwrap.conf -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.d/api-metadata.filters] action create (openstack-compute::nova-common line 172) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] created file /etc/nova/rootwrap.d/api-metadata.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] updated file contents /etc/nova/rootwrap.d/api-metadata.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.d/compute.filters] action create (openstack-compute::nova-common line 180) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] created file /etc/nova/rootwrap.d/compute.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] updated file contents /etc/nova/rootwrap.d/compute.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.d/network.filters] action create (openstack-compute::nova-common line 188) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] created file /etc/nova/rootwrap.d/network.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] updated file contents /etc/nova/rootwrap.d/network.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/root/openrc] action create (openstack-compute::nova-common line 199) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] created file /root/openrc -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] updated file contents /root/openrc -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] mode changed to 600 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing execute[enable nova login] action run (openstack-compute::nova-common line 215) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: execute[enable nova login] ran successfully -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing directory[/var/lock/nova] action create (openstack-compute::api-ec2 line 28) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/var/lock/nova] created directory /var/lock/nova -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/var/lock/nova] owner changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/var/lock/nova] group changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/var/lock/nova] mode changed to 700 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing package[python-keystone] action upgrade (openstack-compute::api-ec2 line 36) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing package[openstack-nova-api] action upgrade (openstack-compute::api-ec2 line 41) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: package[openstack-nova-api] installing openstack-nova-api-2013.1.4-7.el6 from openstack repository -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: package[openstack-nova-api] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing service[nova-api-ec2] action enable (openstack-compute::api-ec2 line 48) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: service[nova-api-ec2] enabled -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing template[/etc/nova/api-paste.ini] action create (openstack-compute::api-ec2 line 74) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] backed up to /var/chef/backup/etc/nova/api-paste.ini.chef-20140221204156.594842 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] updated file contents /etc/nova/api-paste.ini -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] owner changed to 162 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] mode changed to 644 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] not queuing delayed action restart on service[nova-api-ec2] (delayed), as it's already been queued -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] not queuing delayed action restart on service[nova-api-os-compute] (delayed), as it's already been queued -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing directory[/var/lock/nova] action create (openstack-compute::api-os-compute line 28) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing directory[/var/cache/nova] action create (openstack-compute::api-os-compute line 34) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: directory[/var/cache/nova] created directory /var/cache/nova -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: directory[/var/cache/nova] owner changed to 162 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: directory[/var/cache/nova] group changed to 162 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: directory[/var/cache/nova] mode changed to 700 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing package[python-keystone] action upgrade (openstack-compute::api-os-compute line 40) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing package[openstack-nova-api] action upgrade (openstack-compute::api-os-compute line 45) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing service[nova-api-os-compute] action enable (openstack-compute::api-os-compute line 52) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing service[nova-api-os-compute] action start (openstack-compute::api-os-compute line 52) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:57-08:00] INFO: service[nova-api-os-compute] started -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:57-08:00] INFO: Processing template[/etc/nova/api-paste.ini] action create (openstack-compute::api-os-compute line 78) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:57-08:00] INFO: Processing package[openstack-nova-cert] action upgrade (openstack-compute::nova-cert line 25) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:57-08:00] INFO: package[openstack-nova-cert] installing openstack-nova-cert-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: package[openstack-nova-cert] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: Processing service[nova-cert] action enable (openstack-compute::nova-cert line 32) -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: service[nova-cert] enabled -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: Processing service[nova-cert] action restart (openstack-compute::nova-cert line 32) -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: service[nova-cert] restarted -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: Processing directory[/var/lock/nova] action create (openstack-compute::scheduler line 25) -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: Processing package[openstack-nova-scheduler] action upgrade (openstack-compute::scheduler line 34) -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: package[openstack-nova-scheduler] installing openstack-nova-scheduler-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:11 server1.1 [2014-02-21T20:42:11-08:00] INFO: package[openstack-nova-scheduler] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:11 server1.1 [2014-02-21T20:42:11-08:00] INFO: Processing service[nova-scheduler] action enable (openstack-compute::scheduler line 41) -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: service[nova-scheduler] enabled -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: Processing service[nova-scheduler] action restart (openstack-compute::scheduler line 41) -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: service[nova-scheduler] restarted -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: Processing package[openstack-nova-novncproxy] action upgrade (openstack-compute::vncproxy line 26) -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: package[openstack-nova-novncproxy] installing openstack-nova-novncproxy-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:21 server1.1 [2014-02-21T20:42:20-08:00] INFO: package[openstack-nova-novncproxy] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:21 server1.1 [2014-02-21T20:42:20-08:00] INFO: Processing package[openstack-nova-console] action upgrade (openstack-compute::vncproxy line 35) -Feb 21 20:42:21 server1.1 [2014-02-21T20:42:21-08:00] INFO: package[openstack-nova-console] installing openstack-nova-console-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:24-08:00] INFO: package[openstack-nova-console] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:24-08:00] INFO: Processing package[openstack-nova-console] action upgrade (openstack-compute::vncproxy line 42) -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[openstack-nova-novncproxy] action enable (openstack-compute::vncproxy line 49) -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[openstack-nova-novncproxy] enabled -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[openstack-nova-novncproxy] action start (openstack-compute::vncproxy line 49) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[openstack-nova-novncproxy] started -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[nova-console] action enable (openstack-compute::vncproxy line 57) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[nova-console] enabled -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[nova-console] action start (openstack-compute::vncproxy line 57) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[nova-console] started -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[nova-consoleauth] action enable (openstack-compute::vncproxy line 64) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[nova-consoleauth] enabled -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[nova-consoleauth] action start (openstack-compute::vncproxy line 64) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:26-08:00] INFO: service[nova-consoleauth] started -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:26-08:00] INFO: Processing package[openstack-nova-conductor] action upgrade (openstack-compute::conductor line 26) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:26-08:00] INFO: package[openstack-nova-conductor] installing openstack-nova-conductor-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: package[openstack-nova-conductor] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: Processing service[nova-conductor] action enable (openstack-compute::conductor line 32) -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: service[nova-conductor] enabled -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: Processing service[nova-conductor] action restart (openstack-compute::conductor line 32) -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: service[nova-conductor] restarted -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: Processing execute[nova-manage db sync] action run (openstack-compute::nova-setup line 26) -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: execute[nova-manage db sync] ran successfully -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: Processing package[python-quantumclient] action upgrade (openstack-compute::nova-setup line 109) -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: Processing package[pyparsing] action upgrade (openstack-compute::nova-setup line 109) -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: Processing cookbook_file[/usr/local/bin/add_floaters.py] action create (openstack-compute::nova-setup line 115) -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: cookbook_file[/usr/local/bin/add_floaters.py] created file /usr/local/bin/add_floaters.py -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: cookbook_file[/usr/local/bin/add_floaters.py] updated file contents /usr/local/bin/add_floaters.py -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: cookbook_file[/usr/local/bin/add_floaters.py] mode changed to 755 -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: Processing package[openstack-nova-network] action purge (openstack-network::common line 38) -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: Processing package[openstack-quantum] action install (openstack-network::common line 44) -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: package[openstack-quantum] installing openstack-quantum-2013.1.4-4.el6 from openstack repository -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing directory[/etc/quantum/plugins] action create (openstack-network::common line 49) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/etc/quantum/plugins] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/etc/quantum/plugins] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/etc/quantum/plugins] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing directory[/var/cache/quantum] action create (openstack-network::common line 57) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/var/cache/quantum] created directory /var/cache/quantum -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/var/cache/quantum] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/var/cache/quantum] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/var/cache/quantum] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing directory[/var/cache/quantum] action create (openstack-network::common line 64) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing remote_directory[/etc/quantum/rootwrap.d] action create (openstack-network::common line 74) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: remote_directory[/etc/quantum/rootwrap.d] created directory /etc/quantum/rootwrap.d -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] created file /etc/quantum/rootwrap.d/ryu-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] updated file contents /etc/quantum/rootwrap.d/ryu-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] created file /etc/quantum/rootwrap.d/openvswitch-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] updated file contents /etc/quantum/rootwrap.d/openvswitch-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] created file /etc/quantum/rootwrap.d/nec-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] updated file contents /etc/quantum/rootwrap.d/nec-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] created file /etc/quantum/rootwrap.d/linuxbridge-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] updated file contents /etc/quantum/rootwrap.d/linuxbridge-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] created file /etc/quantum/rootwrap.d/lbaas-haproxy.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] updated file contents /etc/quantum/rootwrap.d/lbaas-haproxy.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/l3.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] created file /etc/quantum/rootwrap.d/l3.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] updated file contents /etc/quantum/rootwrap.d/l3.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] created file /etc/quantum/rootwrap.d/iptables-firewall.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] updated file contents /etc/quantum/rootwrap.d/iptables-firewall.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] created file /etc/quantum/rootwrap.d/dhcp.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] updated file contents /etc/quantum/rootwrap.d/dhcp.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/debug.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] created file /etc/quantum/rootwrap.d/debug.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] updated file contents /etc/quantum/rootwrap.d/debug.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing template[/etc/quantum/rootwrap.conf] action create (openstack-network::common line 81) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/rootwrap.conf] backed up to /var/chef/backup/etc/quantum/rootwrap.conf.chef-20140221204614.967634 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/rootwrap.conf] updated file contents /etc/quantum/rootwrap.conf -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/rootwrap.conf] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/rootwrap.conf] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing template[/etc/quantum/policy.json] action create (openstack-network::common line 88) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/policy.json] backed up to /var/chef/backup/etc/quantum/policy.json.chef-20140221204614.975067 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/policy.json] updated file contents /etc/quantum/policy.json -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/policy.json] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/policy.json] mode changed to 644 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing execute[delete_auto_qpid] action nothing (openstack-network::common line 103) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing service[quantum-server] action nothing (openstack-network::common line 157) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing template[/etc/quantum/quantum.conf] action create (openstack-network::common line 165) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] backed up to /var/chef/backup/etc/quantum/quantum.conf.chef-20140221204614.991537 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] updated file contents /etc/quantum/quantum.conf -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] mode changed to 644 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] not queuing delayed action restart on service[quantum-server] (delayed), as it's already been queued -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing template[/etc/quantum/api-paste.ini] action create (openstack-network::common line 186) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/api-paste.ini] backed up to /var/chef/backup/etc/quantum/api-paste.ini.chef-20140221204614.998443 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/api-paste.ini] updated file contents /etc/quantum/api-paste.ini -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/api-paste.ini] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/api-paste.ini] mode changed to 644 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/api-paste.ini] not queuing delayed action restart on service[quantum-server] (delayed), as it's already been queued -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing directory[/etc/quantum/plugins/openvswitch] action create (openstack-network::common line 201) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: directory[/etc/quantum/plugins/openvswitch] created directory /etc/quantum/plugins/openvswitch -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: directory[/etc/quantum/plugins/openvswitch] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: directory[/etc/quantum/plugins/openvswitch] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: directory[/etc/quantum/plugins/openvswitch] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing service[quantum-plugin-openvswitch-agent] action nothing (openstack-network::common line 341) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] action create (openstack-network::common line 346) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] created file /etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] updated file contents /etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] mode changed to 644 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] not queuing delayed action restart on service[quantum-server] (delayed), as it's already been queued -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing template[/etc/default/quantum-server] action create (openstack-network::common line 395) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing package[openstack-quantum-openvswitch] action install (openstack-network::server line 42) -Feb 21 20:46:16 server1.1 [2014-02-21T20:46:15-08:00] INFO: package[openstack-quantum-openvswitch] installing openstack-quantum-openvswitch-2013.1.4-4.el6 from openstack repository -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing directory[/var/cache/quantum/api] action create (openstack-network::server line 49) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: directory[/var/cache/quantum/api] created directory /var/cache/quantum/api -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: directory[/var/cache/quantum/api] owner changed to 164 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: directory[/var/cache/quantum/api] group changed to 164 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing template[/etc/init.d/quantum-server] action create (openstack-network::server line 55) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: template[/etc/init.d/quantum-server] backed up to /var/chef/backup/etc/init.d/quantum-server.chef-20140221204621.125222 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: template[/etc/init.d/quantum-server] updated file contents /etc/init.d/quantum-server -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing service[quantum-server] action enable (openstack-network::server line 63) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: service[quantum-server] enabled -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing service[quantum-server] action restart (openstack-network::server line 63) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: service[quantum-server] restarted -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing cookbook_file[quantum-ha-tool] action create (openstack-network::server line 69) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] created file /usr/local/bin/quantum-ha-tool.py -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] updated file contents /usr/local/bin/quantum-ha-tool.py -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] owner changed to 0 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] group changed to 0 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] mode changed to 755 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing template[/etc/sysconfig/quantum] action create (openstack-network::server line 98) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: template[/etc/httpd/mods-available/deflate.conf] sending restart action to service[apache2] (delayed) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing service[apache2] action restart (apache2::default line 221) -Feb 21 20:46:23 server1.1 [2014-02-21T20:46:22-08:00] INFO: service[apache2] restarted -Feb 21 20:46:23 server1.1 [2014-02-21T20:46:22-08:00] INFO: [template[/etc/cinder/cinder.conf]] sending restart action to service[cinder-api] (delayed) -Feb 21 20:46:23 server1.1 [2014-02-21T20:46:22-08:00] INFO: Processing service[cinder-api] action restart (openstack-block-storage::api line 58) -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: service[cinder-api] restarted -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: [template[/etc/cinder/cinder.conf]] sending restart action to service[cinder-scheduler] (delayed) -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: Processing service[cinder-scheduler] action restart (openstack-block-storage::scheduler line 50) -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: service[cinder-scheduler] restarted -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-api-ec2] (delayed) -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: Processing service[nova-api-ec2] action restart (openstack-compute::api-ec2 line 48) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: service[nova-api-ec2] restarted -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-api-os-compute] (delayed) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: Processing service[nova-api-os-compute] action restart (openstack-compute::api-os-compute line 52) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: service[nova-api-os-compute] restarted -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-cert] (delayed) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: Processing service[nova-cert] action restart (openstack-compute::nova-cert line 32) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: service[nova-cert] restarted -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-scheduler] (delayed) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: Processing service[nova-scheduler] action restart (openstack-compute::scheduler line 41) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: service[nova-scheduler] restarted -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[openstack-nova-novncproxy] (delayed) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: Processing service[openstack-nova-novncproxy] action restart (openstack-compute::vncproxy line 49) -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:26-08:00] INFO: service[openstack-nova-novncproxy] restarted -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:26-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-console] (delayed) -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:26-08:00] INFO: Processing service[nova-console] action restart (openstack-compute::vncproxy line 57) -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:27-08:00] INFO: service[nova-console] restarted -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:27-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-consoleauth] (delayed) -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:27-08:00] INFO: Processing service[nova-consoleauth] action restart (openstack-compute::vncproxy line 64) -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:27-08:00] INFO: service[nova-consoleauth] restarted -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:27-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-conductor] (delayed) -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:27-08:00] INFO: Processing service[nova-conductor] action restart (openstack-compute::conductor line 32) -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:28-08:00] INFO: service[nova-conductor] restarted -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:28-08:00] INFO: template[/etc/quantum/policy.json] sending restart action to service[quantum-server] (delayed) -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:28-08:00] INFO: Processing service[quantum-server] action restart (openstack-network::server line 63) -Feb 21 20:46:29 server1.1 [2014-02-21T20:46:29-08:00] INFO: service[quantum-server] restarted -Feb 21 20:46:29 server1.1 [2014-02-21T20:46:29-08:00] INFO: Chef Run complete in 1449.433415826 seconds -Feb 21 20:46:30 server1.1 [2014-02-21T20:46:30-08:00] INFO: Running report handlers -Feb 21 20:46:30 server1.1 [2014-02-21T20:46:30-08:00] INFO: Report handlers complete diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/install.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/install.log.template deleted file mode 100644 index 861b3a53..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/install.log.template +++ /dev/null @@ -1,212 +0,0 @@ -Installing libgcc-4.4.7-4.el6.x86_64 -warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY -Installing setup-2.8.14-20.el6_4.1.noarch -Installing filesystem-2.4.30-3.el6.x86_64 -Installing basesystem-10.0-4.el6.noarch -Installing ncurses-base-5.7-3.20090208.el6.x86_64 -Installing kernel-firmware-2.6.32-431.el6.noarch -Installing tzdata-2013g-1.el6.noarch -Installing nss-softokn-freebl-3.14.3-9.el6.x86_64 -Installing glibc-common-2.12-1.132.el6.x86_64 -Installing glibc-2.12-1.132.el6.x86_64 -Installing ncurses-libs-5.7-3.20090208.el6.x86_64 -Installing bash-4.1.2-15.el6_4.x86_64 -Installing libattr-2.4.44-7.el6.x86_64 -Installing libcap-2.16-5.5.el6.x86_64 -Installing zlib-1.2.3-29.el6.x86_64 -Installing info-4.13a-8.el6.x86_64 -Installing popt-1.13-7.el6.x86_64 -Installing chkconfig-1.3.49.3-2.el6_4.1.x86_64 -Installing audit-libs-2.2-2.el6.x86_64 -Installing libcom_err-1.41.12-18.el6.x86_64 -Installing libacl-2.2.49-6.el6.x86_64 -Installing db4-4.7.25-18.el6_4.x86_64 -Installing nspr-4.10.0-1.el6.x86_64 -Installing nss-util-3.15.1-3.el6.x86_64 -Installing readline-6.0-4.el6.x86_64 -Installing libsepol-2.0.41-4.el6.x86_64 -Installing libselinux-2.0.94-5.3.el6_4.1.x86_64 -Installing shadow-utils-4.1.4.2-13.el6.x86_64 -Installing sed-4.2.1-10.el6.x86_64 -Installing bzip2-libs-1.0.5-7.el6_0.x86_64 -Installing libuuid-2.17.2-12.14.el6.x86_64 -Installing libstdc++-4.4.7-4.el6.x86_64 -Installing libblkid-2.17.2-12.14.el6.x86_64 -Installing gawk-3.1.7-10.el6.x86_64 -Installing file-libs-5.04-15.el6.x86_64 -Installing libgpg-error-1.7-4.el6.x86_64 -Installing dbus-libs-1.2.24-7.el6_3.x86_64 -Installing libudev-147-2.51.el6.x86_64 -Installing pcre-7.8-6.el6.x86_64 -Installing grep-2.6.3-4.el6.x86_64 -Installing lua-5.1.4-4.1.el6.x86_64 -Installing sqlite-3.6.20-1.el6.x86_64 -Installing cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 -Installing libidn-1.18-2.el6.x86_64 -Installing expat-2.0.1-11.el6_2.x86_64 -Installing xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64 -Installing elfutils-libelf-0.152-1.el6.x86_64 -Installing libgcrypt-1.4.5-11.el6_4.x86_64 -Installing bzip2-1.0.5-7.el6_0.x86_64 -Installing findutils-4.4.2-6.el6.x86_64 -Installing libselinux-utils-2.0.94-5.3.el6_4.1.x86_64 -Installing checkpolicy-2.0.22-1.el6.x86_64 -Installing cpio-2.10-11.el6_3.x86_64 -Installing which-2.19-6.el6.x86_64 -Installing libxml2-2.7.6-14.el6.x86_64 -Installing libedit-2.11-4.20080712cvs.1.el6.x86_64 -Installing pth-2.0.7-9.3.el6.x86_64 -Installing tcp_wrappers-libs-7.6-57.el6.x86_64 -Installing sysvinit-tools-2.87-5.dsf.el6.x86_64 -Installing libtasn1-2.3-3.el6_2.1.x86_64 -Installing p11-kit-0.18.5-2.el6.x86_64 -Installing p11-kit-trust-0.18.5-2.el6.x86_64 -Installing ca-certificates-2013.1.94-65.0.el6.noarch -Installing device-mapper-persistent-data-0.2.8-2.el6.x86_64 -Installing nss-softokn-3.14.3-9.el6.x86_64 -Installing libnih-1.0.1-7.el6.x86_64 -Installing upstart-0.6.5-12.el6_4.1.x86_64 -Installing file-5.04-15.el6.x86_64 -Installing gmp-4.3.1-7.el6_2.2.x86_64 -Installing libusb-0.1.12-23.el6.x86_64 -Installing MAKEDEV-3.24-6.el6.x86_64 -Installing libutempter-1.1.5-4.1.el6.x86_64 -Installing psmisc-22.6-15.el6_0.1.x86_64 -Installing net-tools-1.60-110.el6_2.x86_64 -Installing vim-minimal-7.2.411-1.8.el6.x86_64 -Installing tar-1.23-11.el6.x86_64 -Installing procps-3.2.8-25.el6.x86_64 -Installing db4-utils-4.7.25-18.el6_4.x86_64 -Installing e2fsprogs-libs-1.41.12-18.el6.x86_64 -Installing libss-1.41.12-18.el6.x86_64 -Installing pinentry-0.7.6-6.el6.x86_64 -Installing binutils-2.20.51.0.2-5.36.el6.x86_64 -Installing m4-1.4.13-5.el6.x86_64 -Installing diffutils-2.8.1-28.el6.x86_64 -Installing make-3.81-20.el6.x86_64 -Installing dash-0.5.5.1-4.el6.x86_64 -Installing ncurses-5.7-3.20090208.el6.x86_64 -Installing groff-1.18.1.4-21.el6.x86_64 -Installing less-436-10.el6.x86_64 -Installing coreutils-libs-8.4-31.el6.x86_64 -Installing gzip-1.3.12-19.el6_4.x86_64 -Installing cracklib-2.8.16-4.el6.x86_64 -Installing cracklib-dicts-2.8.16-4.el6.x86_64 -Installing coreutils-8.4-31.el6.x86_64 -Installing pam-1.1.1-17.el6.x86_64 -Installing module-init-tools-3.9-21.el6_4.x86_64 -Installing hwdata-0.233-9.1.el6.noarch -Installing redhat-logos-60.0.14-12.el6.centos.noarch -Installing plymouth-scripts-0.8.3-27.el6.centos.x86_64 -Installing libpciaccess-0.13.1-2.el6.x86_64 -Installing nss-3.15.1-15.el6.x86_64 -Installing nss-sysinit-3.15.1-15.el6.x86_64 -Installing nss-tools-3.15.1-15.el6.x86_64 -Installing openldap-2.4.23-32.el6_4.1.x86_64 -Installing logrotate-3.7.8-17.el6.x86_64 -Installing gdbm-1.8.0-36.el6.x86_64 -Installing mingetty-1.08-5.el6.x86_64 -Installing keyutils-libs-1.4-4.el6.x86_64 -Installing krb5-libs-1.10.3-10.el6_4.6.x86_64 -Installing openssl-1.0.1e-15.el6.x86_64 -Installing libssh2-1.4.2-1.el6.x86_64 -Installing libcurl-7.19.7-37.el6_4.x86_64 -Installing gnupg2-2.0.14-6.el6_4.x86_64 -Installing gpgme-1.1.8-3.el6.x86_64 -Installing curl-7.19.7-37.el6_4.x86_64 -Installing rpm-libs-4.8.0-37.el6.x86_64 -Installing rpm-4.8.0-37.el6.x86_64 -Installing fipscheck-lib-1.2.0-7.el6.x86_64 -Installing fipscheck-1.2.0-7.el6.x86_64 -Installing mysql-libs-5.1.71-1.el6.x86_64 -Installing ethtool-3.5-1.el6.x86_64 -Installing pciutils-libs-3.1.10-2.el6.x86_64 -Installing plymouth-core-libs-0.8.3-27.el6.centos.x86_64 -Installing libcap-ng-0.6.4-3.el6_0.1.x86_64 -Installing libffi-3.0.5-3.2.el6.x86_64 -Installing python-2.6.6-51.el6.x86_64 -Installing python-libs-2.6.6-51.el6.x86_64 -Installing python-pycurl-7.19.0-8.el6.x86_64 -Installing python-urlgrabber-3.9.1-9.el6.noarch -Installing pygpgme-0.1-18.20090824bzr68.el6.x86_64 -Installing rpm-python-4.8.0-37.el6.x86_64 -Installing python-iniparse-0.3.1-2.1.el6.noarch -Installing slang-2.2.1-1.el6.x86_64 -Installing newt-0.52.11-3.el6.x86_64 -Installing newt-python-0.52.11-3.el6.x86_64 -Installing ustr-1.0.4-9.1.el6.x86_64 -Installing libsemanage-2.0.43-4.2.el6.x86_64 -Installing libaio-0.3.107-10.el6.x86_64 -Installing pkgconfig-0.23-9.1.el6.x86_64 -Installing gamin-0.1.10-9.el6.x86_64 -Installing glib2-2.26.1-3.el6.x86_64 -Installing shared-mime-info-0.70-4.el6.x86_64 -Installing libuser-0.56.13-5.el6.x86_64 -Installing grubby-7.0.15-5.el6.x86_64 -Installing yum-metadata-parser-1.1.2-16.el6.x86_64 -Installing yum-plugin-fastestmirror-1.1.30-14.el6.noarch -Installing yum-3.2.29-40.el6.centos.noarch -Installing dbus-glib-0.86-6.el6.x86_64 -Installing dhcp-common-4.1.1-38.P1.el6.centos.x86_64 -Installing centos-release-6-5.el6.centos.11.1.x86_64 -Installing policycoreutils-2.0.83-19.39.el6.x86_64 -Installing iptables-1.4.7-11.el6.x86_64 -Installing iproute-2.6.32-31.el6.x86_64 -Installing iputils-20071127-17.el6_4.2.x86_64 -Installing util-linux-ng-2.17.2-12.14.el6.x86_64 -Installing initscripts-9.03.40-2.el6.centos.x86_64 -Installing udev-147-2.51.el6.x86_64 -Installing device-mapper-libs-1.02.79-8.el6.x86_64 -Installing device-mapper-1.02.79-8.el6.x86_64 -Installing device-mapper-event-libs-1.02.79-8.el6.x86_64 -Installing openssh-5.3p1-94.el6.x86_64 -Installing device-mapper-event-1.02.79-8.el6.x86_64 -Installing lvm2-libs-2.02.100-8.el6.x86_64 -Installing cryptsetup-luks-libs-1.2.0-7.el6.x86_64 -Installing device-mapper-multipath-libs-0.4.9-72.el6.x86_64 -Installing kpartx-0.4.9-72.el6.x86_64 -Installing libdrm-2.4.45-2.el6.x86_64 -Installing plymouth-0.8.3-27.el6.centos.x86_64 -Installing rsyslog-5.8.10-8.el6.x86_64 -Installing cyrus-sasl-2.1.23-13.el6_3.1.x86_64 -Installing postfix-2.6.6-2.2.el6_1.x86_64 -Installing cronie-anacron-1.4.4-12.el6.x86_64 -Installing cronie-1.4.4-12.el6.x86_64 -Installing crontabs-1.10-33.el6.noarch -Installing ntpdate-4.2.6p5-1.el6.centos.x86_64 -Installing iptables-ipv6-1.4.7-11.el6.x86_64 -Installing selinux-policy-3.7.19-231.el6.noarch -Installing kbd-misc-1.15-11.el6.noarch -Installing kbd-1.15-11.el6.x86_64 -Installing dracut-004-335.el6.noarch -Installing dracut-kernel-004-335.el6.noarch -Installing kernel-2.6.32-431.el6.x86_64 -Installing fuse-2.8.3-4.el6.x86_64 -Installing selinux-policy-targeted-3.7.19-231.el6.noarch -Installing system-config-firewall-base-1.2.27-5.el6.noarch -Installing ntp-4.2.6p5-1.el6.centos.x86_64 -Installing device-mapper-multipath-0.4.9-72.el6.x86_64 -Installing cryptsetup-luks-1.2.0-7.el6.x86_64 -Installing lvm2-2.02.100-8.el6.x86_64 -Installing openssh-clients-5.3p1-94.el6.x86_64 -Installing openssh-server-5.3p1-94.el6.x86_64 -Installing mdadm-3.2.6-7.el6.x86_64 -Installing b43-openfwwf-5.2-4.el6.noarch -Installing dhclient-4.1.1-38.P1.el6.centos.x86_64 -Installing iscsi-initiator-utils-6.2.0.873-10.el6.x86_64 -Installing passwd-0.77-4.el6_2.2.x86_64 -Installing authconfig-6.1.12-13.el6.x86_64 -Installing grub-0.97-83.el6.x86_64 -Installing efibootmgr-0.5.4-11.el6.x86_64 -Installing wget-1.12-1.8.el6.x86_64 -Installing sudo-1.8.6p3-12.el6.x86_64 -Installing audit-2.2-2.el6.x86_64 -Installing e2fsprogs-1.41.12-18.el6.x86_64 -Installing xfsprogs-3.1.1-14.el6.x86_64 -Installing acl-2.2.49-6.el6.x86_64 -Installing attr-2.4.44-7.el6.x86_64 -Installing chef-11.8.0-1.el6.x86_64 -warning: chef-11.8.0-1.el6.x86_64: Header V4 DSA/SHA1 Signature, key ID 83ef826a: NOKEY -Installing bridge-utils-1.2-10.el6.x86_64 -Installing rootfiles-8.1-6.1.el6.noarch -*** FINISHED INSTALLING PACKAGES *** \ No newline at end of file diff --git a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test1/anamon/checkpoint_5/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test1/test1 b/compass/tests/actions/update_progress/data/test1/test1 deleted file mode 100644 index 970fb2d9..00000000 --- a/compass/tests/actions/update_progress/data/test1/test1 +++ /dev/null @@ -1,182 +0,0 @@ -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-single-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute', 'target_system': 'openstack'}, -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor': 'huawei', 'credential': {'version': 'v2c', 'community': 'public'}}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security': { - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }, - 'networking': { - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }, - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - }, -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'server1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config': { - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': ["os-single-controller", "os-network", "os-compute"], - }, - }, - ], -} - -EXPECTED = { - 'test1': { - 'checkpoint_1': { - 'host_states': { - 'server1': { - 'hostname': 'server1', - 'progress': 0.0060000000000000001, - 'state': 'INSTALLING' - }, - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 0.0060000000000000001, - 'state': 'INSTALLING' - }, - }, - }, - 'checkpoint_2': { - 'host_states': { - 'server1': { - 'hostname': 'server1', - 'progress': 0.222, - 'state': 'INSTALLING' - }, - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 0.222, - 'state': 'INSTALLING' - }, - }, - }, - 'checkpoint_3': { - 'host_states': { - 'server1': { - 'hostname': 'server1', - 'progress': 0.59999999999999998, - 'state': 'INSTALLING' - }, - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 0.59999999999999998, - 'state': 'INSTALLING' - }, - }, - }, - 'checkpoint_4': { - 'host_states': { - 'server1': { - 'hostname': 'server1', - 'progress': 0.65134000000000003, - 'state': 'INSTALLING' - }, - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 0.65134000000000003, - 'state': 'INSTALLING' - }, - }, - }, - 'checkpoint_5': { - 'host_states':{ - 'server1': { - 'hostname': 'server1', - 'progress': 1.0, - 'state': 'READY' - }, - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 1.0, - 'state': 'READY' - }, - }, - }, - }, -} diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_1/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_1/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_1/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_1/server2.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_1/server2.1/sys.log.template deleted file mode 100644 index 1fbb5602..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_1/server2.1/sys.log.template +++ /dev/null @@ -1,1628 +0,0 @@ -05:50:20,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:50:20,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:50:20,517 INFO kernel:Initializing cgroup subsys cpuset -05:50:20,517 INFO kernel:Initializing cgroup subsys cpu -05:50:20,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:50:20,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,517 INFO kernel:KERNEL supported cpus: -05:50:20,517 INFO kernel: Intel GenuineIntel -05:50:20,517 INFO kernel: AMD AuthenticAMD -05:50:20,517 INFO kernel: Centaur CentaurHauls -05:50:20,517 INFO kernel:Disabled fast string operations -05:50:20,517 INFO kernel:BIOS-provided physical RAM map: -05:50:20,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:50:20,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:50:20,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:50:20,517 INFO kernel:DMI present. -05:50:20,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:50:20,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:50:20,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:50:20,517 INFO kernel:Hypervisor detected: VMware -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:50:20,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:50:20,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:50:20,517 DEBUG kernel:MTRR default type: uncachable -05:50:20,517 DEBUG kernel:MTRR fixed ranges enabled: -05:50:20,517 DEBUG kernel: 00000-9FFFF write-back -05:50:20,517 DEBUG kernel: A0000-BFFFF uncachable -05:50:20,517 DEBUG kernel: C0000-CFFFF write-protect -05:50:20,517 DEBUG kernel: D0000-EFFFF uncachable -05:50:20,517 DEBUG kernel: F0000-FFFFF write-protect -05:50:20,517 DEBUG kernel:MTRR variable ranges enabled: -05:50:20,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:50:20,517 DEBUG kernel: 1 disabled -05:50:20,517 DEBUG kernel: 2 disabled -05:50:20,517 DEBUG kernel: 3 disabled -05:50:20,517 DEBUG kernel: 4 disabled -05:50:20,517 DEBUG kernel: 5 disabled -05:50:20,517 DEBUG kernel: 6 disabled -05:50:20,517 DEBUG kernel: 7 disabled -05:50:20,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:50:20,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:50:20,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:50:20,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:50:20,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:50:20,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:50:20,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:50:20,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:50:20,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:50:20,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:50:20,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:50:20,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:50:20,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:50:20,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,517 INFO kernel:Setting APIC routing to flat. -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:50:20,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:50:20,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:50:20,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:50:20,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:50:20,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:50:20,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:50:20,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:50:20,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:50:20,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:50:20,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:50:20,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:50:20,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:50:20,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:50:20,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:50:20,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:50:20,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:50:20,517 WARNING kernel:Zone PFN ranges: -05:50:20,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:50:20,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:50:20,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:50:20,517 WARNING kernel:Movable zone start PFN for each node -05:50:20,517 WARNING kernel:early_node_map[3] active PFN ranges -05:50:20,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:50:20,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:50:20,520 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:50:20,520 DEBUG kernel:On node 0 totalpages: 524159 -05:50:20,520 DEBUG kernel: DMA zone: 56 pages used for memmap -05:50:20,520 DEBUG kernel: DMA zone: 101 pages reserved -05:50:20,520 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:50:20,520 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:50:20,520 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:50:20,520 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:50:20,520 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,520 INFO kernel:Setting APIC routing to flat. -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:50:20,521 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:50:20,521 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:50:20,521 DEBUG kernel:ACPI: IRQ0 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ2 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ9 used by override. -05:50:20,521 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:50:20,521 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:50:20,521 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:50:20,521 DEBUG kernel:nr_irqs_gsi: 24 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:50:20,521 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:50:20,521 INFO kernel:Booting paravirtualized kernel on bare hardware -05:50:20,521 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:50:20,521 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:50:20,521 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:50:20,521 INFO kernel:pcpu-alloc: [0] 0 1 -05:50:20,521 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:50:20,521 WARNING kernel:Policy zone: DMA32 -05:50:20,521 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,521 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:50:20,521 INFO kernel:Checking aperture... -05:50:20,521 INFO kernel:No AGP bridge found -05:50:20,521 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:50:20,521 INFO kernel:Hierarchical RCU implementation. -05:50:20,521 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:50:20,521 INFO kernel:Extended CMOS year: 2000 -05:50:20,521 WARNING kernel:Console: colour VGA+ 80x25 -05:50:20,521 INFO kernel:console [tty0] enabled -05:50:20,521 INFO kernel:allocated 8388608 bytes of page_cgroup -05:50:20,521 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:50:20,521 DEBUG kernel:hpet clockevent registered -05:50:20,521 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:50:20,521 WARNING kernel:Detected 2400.085 MHz processor. -05:50:20,521 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:50:20,521 INFO kernel:pid_max: default: 32768 minimum: 301 -05:50:20,521 INFO kernel:Security Framework initialized -05:50:20,521 INFO kernel:SELinux: Initializing. -05:50:20,521 DEBUG kernel:SELinux: Starting in permissive mode -05:50:20,521 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:50:20,521 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:50:20,521 WARNING kernel:Mount-cache hash table entries: 256 -05:50:20,521 INFO kernel:Initializing cgroup subsys ns -05:50:20,521 INFO kernel:Initializing cgroup subsys cpuacct -05:50:20,521 INFO kernel:Initializing cgroup subsys memory -05:50:20,521 INFO kernel:Initializing cgroup subsys devices -05:50:20,521 INFO kernel:Initializing cgroup subsys freezer -05:50:20,521 INFO kernel:Initializing cgroup subsys net_cls -05:50:20,521 INFO kernel:Initializing cgroup subsys blkio -05:50:20,521 INFO kernel:Initializing cgroup subsys perf_event -05:50:20,521 INFO kernel:Initializing cgroup subsys net_prio -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:CPU: Physical Processor ID: 0 -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:alternatives: switching to unfair spinlock -05:50:20,521 INFO kernel:ACPI: Core revision 20090903 -05:50:20,521 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:50:20,521 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:50:20,521 INFO kernel:APIC routing finalized to flat. -05:50:20,521 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:50:20,521 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:50:20,521 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:50:20,521 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:50:20,521 INFO kernel:... version: 3 -05:50:20,521 INFO kernel:... bit width: 48 -05:50:20,521 INFO kernel:... generic registers: 4 -05:50:20,521 INFO kernel:... value mask: 0000ffffffffffff -05:50:20,521 INFO kernel:... max period: 000000007fffffff -05:50:20,521 INFO kernel:... fixed-purpose events: 3 -05:50:20,521 INFO kernel:... event mask: 000000070000000f -05:50:20,521 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:50:20,521 INFO kernel:Booting Node 0, Processors #1 Ok. -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:50:20,521 INFO kernel:Brought up 2 CPUs -05:50:20,521 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:50:20,521 DEBUG kernel:sizeof(vma)=200 bytes -05:50:20,521 DEBUG kernel:sizeof(page)=56 bytes -05:50:20,521 DEBUG kernel:sizeof(inode)=592 bytes -05:50:20,521 DEBUG kernel:sizeof(dentry)=192 bytes -05:50:20,521 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:50:20,521 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:50:20,521 DEBUG kernel:sizeof(skbuff)=232 bytes -05:50:20,521 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:50:20,521 INFO kernel:devtmpfs: initialized -05:50:20,521 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:50:20,521 INFO kernel:regulator: core version 0.5 -05:50:20,521 INFO kernel:NET: Registered protocol family 16 -05:50:20,521 INFO kernel:ACPI: bus type pci registered -05:50:20,521 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:50:20,521 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:50:20,521 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:50:20,521 INFO kernel:PCI: Using configuration type 1 for base access -05:50:20,521 WARNING kernel:bio: create slab at 0 -05:50:20,521 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:50:20,521 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:50:20,521 INFO kernel:ACPI: Interpreter enabled -05:50:20,521 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:50:20,521 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:50:20,521 INFO kernel:ACPI: No dock devices found. -05:50:20,521 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:50:20,521 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:50:20,521 INFO kernel:PCI host bridge to bus 0000:00 -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:50:20,521 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:50:20,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,522 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:50:20,522 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:50:20,522 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:50:20,522 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:50:20,522 INFO kernel:vgaarb: loaded -05:50:20,522 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:50:20,522 NOTICE kernel:SCSI subsystem initialized -05:50:20,522 DEBUG kernel:libata version 3.00 loaded. -05:50:20,522 INFO kernel:usbcore: registered new interface driver usbfs -05:50:20,522 INFO kernel:usbcore: registered new interface driver hub -05:50:20,522 INFO kernel:usbcore: registered new device driver usb -05:50:20,522 INFO kernel:PCI: Using ACPI for IRQ routing -05:50:20,522 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:50:20,522 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:50:20,522 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:50:20,522 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:50:20,522 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:50:20,522 INFO kernel:NetLabel: Initializing -05:50:20,522 INFO kernel:NetLabel: domain hash size = 128 -05:50:20,522 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:50:20,522 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:50:20,522 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:50:20,522 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:50:20,522 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:50:20,522 INFO kernel:Switching to clocksource hpet -05:50:20,522 INFO kernel:pnp: PnP ACPI init -05:50:20,522 INFO kernel:ACPI: bus type pnp registered -05:50:20,522 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:50:20,522 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0080] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:50:20,522 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:50:20,522 DEBUG kernel:pnp 00:02: [dma 4] -05:50:20,522 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:50:20,522 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:50:20,522 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:50:20,522 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:50:20,522 DEBUG kernel:pnp 00:04: [irq 8] -05:50:20,522 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:50:20,522 DEBUG kernel:pnp 00:05: [io 0x0061] -05:50:20,522 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0060] -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0064] -05:50:20,522 DEBUG kernel:pnp 00:06: [irq 1] -05:50:20,522 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:50:20,522 DEBUG kernel:pnp 00:07: [irq 12] -05:50:20,522 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:50:20,522 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:50:20,522 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:50:20,522 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:50:20,522 DEBUG kernel:pnp 00:09: [irq 7] -05:50:20,522 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:50:20,522 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:50:20,522 DEBUG kernel:pnp 00:0a: [irq 4] -05:50:20,522 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:50:20,522 DEBUG kernel:pnp 00:0b: [irq 3] -05:50:20,522 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:50:20,522 DEBUG kernel:pnp 00:0c: [irq 6] -05:50:20,522 DEBUG kernel:pnp 00:0c: [dma 2] -05:50:20,522 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 INFO kernel:pnp: PnP ACPI: found 14 devices -05:50:20,522 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:50:20,522 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:50:20,522 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:50:20,522 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:50:20,522 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:50:20,522 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:50:20,523 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,524 INFO kernel:NET: Registered protocol family 2 -05:50:20,524 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:50:20,524 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:50:20,524 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:50:20,524 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:50:20,524 INFO kernel:TCP reno registered -05:50:20,524 INFO kernel:NET: Registered protocol family 1 -05:50:20,524 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:50:20,524 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:50:20,524 INFO kernel:Trying to unpack rootfs image as initramfs... -05:50:20,524 INFO kernel:Freeing initrd memory: 32601k freed -05:50:20,524 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:50:20,524 INFO kernel:audit: initializing netlink socket (disabled) -05:50:20,524 NOTICE kernel:type=2000 audit(1021096218.805:1): initialized -05:50:20,524 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:50:20,524 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:50:20,524 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:50:20,524 INFO kernel:msgmni has been set to 4005 -05:50:20,526 DEBUG kernel:SELinux: Registering netfilter hooks -05:50:20,526 INFO kernel:alg: No test for stdrng (krng) -05:50:20,526 WARNING kernel:ksign: Installing public key data -05:50:20,526 WARNING kernel:Loading keyring -05:50:20,526 WARNING kernel:- Added public key 8A44323FB303E068 -05:50:20,526 WARNING kernel: - key was been created 363988241 seconds in future -05:50:20,526 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:50:20,526 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:50:20,526 INFO kernel:io scheduler noop registered -05:50:20,526 INFO kernel:io scheduler anticipatory registered -05:50:20,526 INFO kernel:io scheduler deadline registered -05:50:20,526 INFO kernel:io scheduler cfq registered (default) -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:50:20,526 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:50:20,526 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:50:20,526 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:50:20,526 INFO kernel:acpiphp: Slot [32] registered -05:50:20,526 INFO kernel:acpiphp: Slot [33] registered -05:50:20,526 INFO kernel:acpiphp: Slot [34] registered -05:50:20,526 INFO kernel:acpiphp: Slot [35] registered -05:50:20,526 INFO kernel:acpiphp: Slot [36] registered -05:50:20,526 INFO kernel:acpiphp: Slot [37] registered -05:50:20,526 INFO kernel:acpiphp: Slot [38] registered -05:50:20,527 INFO kernel:acpiphp: Slot [39] registered -05:50:20,527 INFO kernel:acpiphp: Slot [40] registered -05:50:20,527 INFO kernel:acpiphp: Slot [41] registered -05:50:20,527 INFO kernel:acpiphp: Slot [42] registered -05:50:20,527 INFO kernel:acpiphp: Slot [43] registered -05:50:20,527 INFO kernel:acpiphp: Slot [44] registered -05:50:20,527 INFO kernel:acpiphp: Slot [45] registered -05:50:20,527 INFO kernel:acpiphp: Slot [46] registered -05:50:20,527 INFO kernel:acpiphp: Slot [47] registered -05:50:20,527 INFO kernel:acpiphp: Slot [48] registered -05:50:20,527 INFO kernel:acpiphp: Slot [49] registered -05:50:20,527 INFO kernel:acpiphp: Slot [50] registered -05:50:20,527 INFO kernel:acpiphp: Slot [51] registered -05:50:20,527 INFO kernel:acpiphp: Slot [52] registered -05:50:20,527 INFO kernel:acpiphp: Slot [53] registered -05:50:20,527 INFO kernel:acpiphp: Slot [54] registered -05:50:20,527 INFO kernel:acpiphp: Slot [55] registered -05:50:20,527 INFO kernel:acpiphp: Slot [56] registered -05:50:20,527 INFO kernel:acpiphp: Slot [57] registered -05:50:20,527 INFO kernel:acpiphp: Slot [58] registered -05:50:20,527 INFO kernel:acpiphp: Slot [59] registered -05:50:20,527 INFO kernel:acpiphp: Slot [60] registered -05:50:20,527 INFO kernel:acpiphp: Slot [61] registered -05:50:20,527 INFO kernel:acpiphp: Slot [62] registered -05:50:20,527 INFO kernel:acpiphp: Slot [63] registered -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:50:20,527 INFO kernel:ipmi message handler version 39.2 -05:50:20,527 INFO kernel:IPMI System Interface driver. -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:50:20,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:50:20,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:50:20,527 INFO kernel:ACPI: Power Button [PWRF] -05:50:20,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:50:20,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:50:20,527 INFO kernel:GHES: HEST is not enabled! -05:50:20,527 INFO kernel:Non-volatile memory driver v1.3 -05:50:20,527 INFO kernel:Linux agpgart interface v0.103 -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:50:20,527 INFO kernel:crash memory driver: version 1.1 -05:50:20,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:50:20,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:brd: module loaded -05:50:20,527 INFO kernel:loop: module loaded -05:50:20,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:50:20,527 INFO kernel:Fixed MDIO Bus: probed -05:50:20,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:50:20,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:50:20,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:50:20,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:50:20,527 INFO kernel:Refined TSC clocksource calibration: 2400.081 MHz. -05:50:20,527 INFO kernel:Switching to clocksource tsc -05:50:20,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:50:20,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:50:20,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:50:20,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:50:20,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:50:20,527 INFO kernel:cpuidle: using governor ladder -05:50:20,527 INFO kernel:cpuidle: using governor menu -05:50:20,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:50:20,527 INFO kernel:usbcore: registered new interface driver hiddev -05:50:20,527 INFO kernel:usbcore: registered new interface driver usbhid -05:50:20,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:50:20,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:50:20,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:50:20,527 INFO kernel:TCP cubic registered -05:50:20,527 INFO kernel:Initializing XFRM netlink socket -05:50:20,527 INFO kernel:NET: Registered protocol family 17 -05:50:20,527 WARNING kernel:registered taskstats version 1 -05:50:20,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:50:20,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:50:20 UTC (1021096220) -05:50:20,527 INFO kernel:Initalizing network drop monitor service -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:50:20,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:50:20,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:50:22,553 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:50:22,564 INFO kernel:Loading iSCSI transport class v2.0-870. -05:50:22,583 NOTICE kernel:iscsi: registered transport (tcp) -05:50:22,589 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:50:22,600 INFO kernel:FDC 0 is a post-1991 82077 -05:50:22,604 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:50:22,608 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:50:22,615 INFO kernel:No iBFT detected. -05:50:22,648 INFO kernel:NET: Registered protocol family 10 -05:50:22,648 INFO kernel:lo: Disabled Privacy Extensions -05:50:22,720 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:50:22,720 INFO kernel:scsi0 : ata_piix -05:50:22,721 INFO kernel:scsi1 : ata_piix -05:50:22,721 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:50:22,721 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:50:22,731 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:22,907 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:50:22,913 INFO kernel:ata2.00: configured for UDMA/33 -05:50:22,913 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:50:22,936 INFO kernel:Fusion MPT base driver 3.04.20 -05:50:22,936 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:50:22,947 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:50:22,947 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:50:22,947 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:22,947 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:22,947 INFO kernel:mptbase: ioc0: Initiating bringup -05:50:22,966 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:50:23,007 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:50:23,035 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,035 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:50:23,035 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,036 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,036 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:50:23,037 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,061 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:50:23,061 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:50:23,061 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:50:23,072 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:50:23,072 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:50:23,072 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:50:23,072 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,072 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:50:23,072 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:b8 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:50:23,422 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:50:23,422 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,422 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:50:23,422 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:c2 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:50:23,766 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:50:23,766 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,766 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:50:23,766 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:cc -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:50:24,116 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:24,116 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:d6 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 INFO kernel: sda: -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 INFO kernel: sdb: -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,502 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:50:24,505 WARNING kernel: sda1 sda2 -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,531 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:50:24,537 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:50:24,538 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:50:24,538 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:50:28,728 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:31,010 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:50:31,010 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:50:31,012 INFO NetworkManager: trying to start the modem manager... -05:50:31,016 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:50:31,016 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:50:31,017 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:50:31,018 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:50:31,023 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:50:31,025 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: Networking is enabled by state file -05:50:31,044 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:50:31,044 INFO kernel:All bugs added by David S. Miller -05:50:31,045 INFO NetworkManager: (eth0): carrier is OFF -05:50:31,045 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:50:31,045 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:50:31,045 INFO NetworkManager: (eth0): now managed -05:50:31,045 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:50:31,045 INFO NetworkManager: (eth0): bringing up device. -05:50:31,051 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,055 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:50:31,056 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,056 INFO NetworkManager: (eth0): preparing device. -05:50:31,056 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:50:31,057 INFO NetworkManager: (eth1): carrier is OFF -05:50:31,058 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:50:31,058 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:50:31,058 INFO NetworkManager: (eth1): now managed -05:50:31,058 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:50:31,058 INFO NetworkManager: (eth1): bringing up device. -05:50:31,063 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,068 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:50:31,068 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,068 INFO NetworkManager: (eth1): preparing device. -05:50:31,068 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:50:31,069 INFO NetworkManager: (eth2): carrier is OFF -05:50:31,070 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:50:31,070 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:50:31,070 INFO NetworkManager: (eth2): now managed -05:50:31,070 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:50:31,070 INFO NetworkManager: (eth2): bringing up device. -05:50:31,076 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,080 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:50:31,080 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,080 INFO NetworkManager: (eth2): preparing device. -05:50:31,080 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:50:31,081 INFO NetworkManager: (eth3): carrier is OFF -05:50:31,082 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:50:31,082 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:50:31,082 INFO NetworkManager: (eth3): now managed -05:50:31,082 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:50:31,082 INFO NetworkManager: (eth3): bringing up device. -05:50:31,086 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,091 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:50:31,091 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,091 INFO NetworkManager: (eth3): preparing device. -05:50:31,091 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:50:31,093 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,095 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,096 INFO NetworkManager: Trying to start the supplicant... -05:50:31,097 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:50:31,098 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:50:31,104 INFO NetworkManager: wpa_supplicant started -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:33,054 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:50:33,057 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:50:33,057 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:50:33,058 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:50:33,060 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:50:33,062 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:50:33,062 INFO NetworkManager: dhclient started with pid 654 -05:50:33,063 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:50:33,063 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:50:33,063 INFO dhclient: All rights reserved. -05:50:33,063 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:50:33,063 INFO dhclient: -05:50:33,063 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:50:33,066 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:50:33,068 INFO dhclient: Listening on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on Socket/fallback -05:50:37,004 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x3433ec2c) -05:50:37,048 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:50:37,048 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x3433ec2c) -05:50:38,084 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x3433ec2c) -05:50:38,087 INFO dhclient: bound to 10.145.88.104 -- renewal in 10764 seconds. -05:50:38,087 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:50:38,087 INFO NetworkManager: address 10.145.88.104 -05:50:38,087 INFO NetworkManager: prefix 23 (255.255.254.0) -05:50:38,087 INFO NetworkManager: gateway 10.145.88.1 -05:50:38,087 INFO NetworkManager: hostname 'server2' -05:50:38,087 INFO NetworkManager: nameserver '10.145.88.211' -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:50:39,089 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:50:39,090 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:50:39,090 INFO NetworkManager: Setting system hostname to 'server2' (from DHCPv4) -05:50:39,091 INFO NetworkManager: Activation (eth0) successful, device activated. -05:50:39,092 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:46,967 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/nm-dhcp-client.conf, line 1, column 0: no element found -05:51:46,969 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/org.freedesktop.PolicyKit1.conf, line 1, column 0: no element found -05:51:46,976 NOTICE dbus-daemon: [system] Reloaded configuration -05:51:47,135 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,214 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,702 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:51:47,702 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:51:47,706 DEBUG kernel:SELinux: Completing initialization. -05:51:47,706 DEBUG kernel:SELinux: Setting up existing superblocks. -05:51:47,706 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:51:47,709 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:51:47,751 NOTICE kernel:type=1403 audit(1021096307.739:2): policy loaded auid=4294967295 ses=4294967295 -05:51:47,786 INFO kernel:md: raid0 personality registered for level 0 -05:51:47,793 INFO kernel:md: raid1 personality registered for level 1 -05:51:47,797 INFO kernel:async_tx: api initialized (async) -05:51:47,802 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:51:47,810 INFO kernel: generic_sse: 9176.000 MB/sec -05:51:47,810 INFO kernel:xor: using function: generic_sse (9176.000 MB/sec) -05:51:47,834 WARNING kernel:raid6: sse2x1 4742 MB/s -05:51:47,851 WARNING kernel:raid6: sse2x2 7117 MB/s -05:51:47,868 WARNING kernel:raid6: sse2x4 7660 MB/s -05:51:47,868 WARNING kernel:raid6: using algorithm sse2x4 (7660 MB/s) -05:51:47,868 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:51:47,882 INFO kernel:md: raid6 personality registered for level 6 -05:51:47,882 INFO kernel:md: raid5 personality registered for level 5 -05:51:47,882 INFO kernel:md: raid4 personality registered for level 4 -05:51:47,893 INFO kernel:md: raid10 personality registered for level 10 -05:51:47,896 INFO kernel:md: linear personality registered for level -1 -05:51:47,909 INFO kernel:device-mapper: uevent: version 1.0.3 -05:51:47,909 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:51:47,940 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:51:47,944 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:52:05,224 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:05,224 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:05,225 INFO kernel: sda: sda1 -05:52:06,013 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,013 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,023 INFO kernel: sda: -05:52:06,365 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,365 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,415 INFO kernel: sda: sda1 -05:52:09,171 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:09,171 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:09,171 INFO kernel: sda: sda1 sda2 -05:52:11,280 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:11,280 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:11,280 INFO kernel: sda: sda1 sda2 sda3 -05:52:44,551 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:52:45,044 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,053 INFO kernel:EXT3-fs (dm-0): using internal journal -05:52:45,053 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:52:45,053 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:52:45,103 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,170 INFO kernel:EXT3-fs (sda1): using internal journal -05:52:45,170 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:52:45,170 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:52:45,250 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:45,384 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,439 INFO kernel:EXT3-fs (dm-1): using internal journal -05:52:45,439 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:52:45,439 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:52:45,604 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,648 INFO kernel:EXT3-fs (dm-2): using internal journal -05:52:45,648 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:52:45,648 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:52:45,851 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,875 INFO kernel:EXT3-fs (dm-3): using internal journal -05:52:45,875 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:52:45,875 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:52:54,110 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:54,124 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,143 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:55,145 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -06:11:24,179 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,305 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,821 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:24,821 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server1.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server1.1/anaconda.log.template deleted file mode 100644 index 77c5c1c1..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server1.1/anaconda.log.template +++ /dev/null @@ -1,223 +0,0 @@ -05:51:20,534 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af - -05:51:20,534 INFO : text mode forced from cmdline -05:51:20,534 DEBUG : readNetInfo /tmp/s390net not found, early return -05:51:20,534 INFO : anaconda version 13.21.215 on x86_64 starting -05:51:20,656 DEBUG : Saving module ipv6 -05:51:20,656 DEBUG : Saving module iscsi_ibft -05:51:20,656 DEBUG : Saving module iscsi_boot_sysfs -05:51:20,656 DEBUG : Saving module pcspkr -05:51:20,656 DEBUG : Saving module edd -05:51:20,656 DEBUG : Saving module floppy -05:51:20,656 DEBUG : Saving module iscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi -05:51:20,656 DEBUG : Saving module scsi_transport_iscsi -05:51:20,656 DEBUG : Saving module squashfs -05:51:20,656 DEBUG : Saving module cramfs -05:51:20,656 DEBUG : probing buses -05:51:20,693 DEBUG : waiting for hardware to initialize -05:51:27,902 DEBUG : probing buses -05:51:27,925 DEBUG : waiting for hardware to initialize -05:51:47,187 INFO : getting kickstart file -05:51:47,196 INFO : eth0 has link, using it -05:51:47,208 INFO : doing kickstart... setting it up -05:51:47,208 DEBUG : activating device eth0 -05:51:52,221 INFO : wait_for_iface_activation (2502): device eth0 activated -05:51:52,222 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,223 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,611 INFO : setting up kickstart -05:51:52,611 INFO : kickstart forcing text mode -05:51:52,611 INFO : kickstartFromUrl -05:51:52,612 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:51:52,612 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:51:52,616 INFO : drive status is CDS_TRAY_OPEN -05:51:52,616 ERROR : Drive tray reports open when it should be closed -05:52:07,635 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,636 DEBUG : going to set language to en_US.UTF-8 -05:52:07,636 INFO : setting language to en_US.UTF-8 -05:52:07,654 INFO : starting STEP_METHOD -05:52:07,654 DEBUG : loaderData->method is set, adding skipMethodDialog -05:52:07,654 DEBUG : skipMethodDialog is set -05:52:07,663 INFO : starting STEP_STAGE2 -05:52:07,663 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,663 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:52:07,780 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:52:07,780 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:52:07,780 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:52:07,814 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:52:07,815 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,354 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:52:47,354 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,403 INFO : Loading SELinux policy -05:52:48,130 INFO : getting ready to spawn shell now -05:52:48,359 INFO : Running anaconda script /usr/bin/anaconda -05:52:54,804 INFO : CentOS Linux is the highest priority installclass, using it -05:52:54,867 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:52:54,868 INFO : Running kickstart %%pre script(s) -05:52:54,868 WARNING : '/bin/sh' specified as full path -05:52:56,966 INFO : All kickstart %%pre script(s) have been run -05:52:57,017 INFO : ISCSID is /usr/sbin/iscsid -05:52:57,017 INFO : no initiator set -05:52:57,128 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:52:57,137 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:52:57,138 INFO : no /etc/zfcp.conf; not configuring zfcp -05:53:00,902 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -05:53:00,903 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:53:00,903 INFO : Display mode = t -05:53:00,903 INFO : Default encoding = utf-8 -05:53:01,064 INFO : Detected 2016M of memory -05:53:01,064 INFO : Swap attempt of 4032M -05:53:01,398 INFO : ISCSID is /usr/sbin/iscsid -05:53:01,399 INFO : no initiator set -05:53:05,059 INFO : setting installation environment hostname to server1 -05:53:05,104 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:53:05,276 INFO : Detected 2016M of memory -05:53:05,277 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:53:05,277 INFO : Swap attempt of 3276M -05:53:05,453 WARNING : step installtype does not exist -05:53:05,454 WARNING : step confirminstall does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,457 WARNING : step complete does not exist -05:53:05,457 INFO : moving (1) to step setuptime -05:53:05,458 DEBUG : setuptime is a direct step -22:53:05,458 WARNING : '/usr/sbin/hwclock' specified as full path -22:53:06,002 INFO : leaving (1) step setuptime -22:53:06,003 INFO : moving (1) to step autopartitionexecute -22:53:06,003 DEBUG : autopartitionexecute is a direct step -22:53:06,138 INFO : leaving (1) step autopartitionexecute -22:53:06,138 INFO : moving (1) to step storagedone -22:53:06,138 DEBUG : storagedone is a direct step -22:53:06,138 INFO : leaving (1) step storagedone -22:53:06,139 INFO : moving (1) to step enablefilesystems -22:53:06,139 DEBUG : enablefilesystems is a direct step -22:53:10,959 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:53:41,215 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:53:57,388 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:54:14,838 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:54:21,717 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:54:27,576 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:54:40,058 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:54:41,949 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:54:41,950 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-rootvol on /mnt/sysimage as ext3 with options defaults -22:54:42,826 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:54:43,148 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:54:43,158 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:54:43,164 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:54:43,207 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-homevol on /mnt/sysimage/home as ext3 with options defaults -22:54:43,434 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,435 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:54:43,439 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,496 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:54:43,609 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:54:43,874 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-varvol on /mnt/sysimage/var as ext3 with options defaults -22:54:44,056 INFO : leaving (1) step enablefilesystems -22:54:44,057 INFO : moving (1) to step bootloadersetup -22:54:44,057 DEBUG : bootloadersetup is a direct step -22:54:44,061 INFO : leaving (1) step bootloadersetup -22:54:44,061 INFO : moving (1) to step reposetup -22:54:44,061 DEBUG : reposetup is a direct step -22:54:56,952 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:54:56,953 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:54:57,133 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:54:57,454 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:54:58,637 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:54:58,971 INFO : leaving (1) step reposetup -22:54:58,971 INFO : moving (1) to step basepkgsel -22:54:58,972 DEBUG : basepkgsel is a direct step -22:54:58,986 WARNING : not adding Base group -22:54:59,388 INFO : leaving (1) step basepkgsel -22:54:59,388 INFO : moving (1) to step postselection -22:54:59,388 DEBUG : postselection is a direct step -22:54:59,390 INFO : selected kernel package for kernel -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:55:07,745 INFO : leaving (1) step postselection -22:55:07,745 INFO : moving (1) to step install diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server2.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server2.1/anaconda.log.template deleted file mode 100644 index 39ab3f27..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server2.1/anaconda.log.template +++ /dev/null @@ -1,222 +0,0 @@ -05:50:22,531 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 - -05:50:22,531 INFO : text mode forced from cmdline -05:50:22,531 DEBUG : readNetInfo /tmp/s390net not found, early return -05:50:22,531 INFO : anaconda version 13.21.215 on x86_64 starting -05:50:22,649 DEBUG : Saving module ipv6 -05:50:22,649 DEBUG : Saving module iscsi_ibft -05:50:22,649 DEBUG : Saving module iscsi_boot_sysfs -05:50:22,649 DEBUG : Saving module pcspkr -05:50:22,649 DEBUG : Saving module edd -05:50:22,649 DEBUG : Saving module floppy -05:50:22,649 DEBUG : Saving module iscsi_tcp -05:50:22,649 DEBUG : Saving module libiscsi_tcp -05:50:22,649 DEBUG : Saving module libiscsi -05:50:22,649 DEBUG : Saving module scsi_transport_iscsi -05:50:22,649 DEBUG : Saving module squashfs -05:50:22,649 DEBUG : Saving module cramfs -05:50:22,649 DEBUG : probing buses -05:50:22,673 DEBUG : waiting for hardware to initialize -05:50:28,619 DEBUG : probing buses -05:50:28,644 DEBUG : waiting for hardware to initialize -05:50:32,015 INFO : getting kickstart file -05:50:32,022 INFO : eth0 has link, using it -05:50:32,033 INFO : doing kickstart... setting it up -05:50:32,034 DEBUG : activating device eth0 -05:50:40,048 INFO : wait_for_iface_activation (2502): device eth0 activated -05:50:40,048 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server2.1 -05:50:40,049 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server2.1 -05:50:40,134 INFO : setting up kickstart -05:50:40,134 INFO : kickstart forcing text mode -05:50:40,134 INFO : kickstartFromUrl -05:50:40,134 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:50:40,135 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:50:40,137 INFO : drive status is CDS_TRAY_OPEN -05:50:40,137 ERROR : Drive tray reports open when it should be closed -05:50:55,155 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:50:55,156 DEBUG : going to set language to en_US.UTF-8 -05:50:55,156 INFO : setting language to en_US.UTF-8 -05:50:55,169 INFO : starting STEP_METHOD -05:50:55,169 DEBUG : loaderData->method is set, adding skipMethodDialog -05:50:55,169 DEBUG : skipMethodDialog is set -05:50:55,176 INFO : starting STEP_STAGE2 -05:50:55,176 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:50:55,176 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:50:56,174 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:50:56,175 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:50:56,175 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:50:57,459 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:50:57,459 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:51:46,964 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:51:46,964 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:51:47,009 INFO : Loading SELinux policy -05:51:47,753 INFO : getting ready to spawn shell now -05:51:47,973 INFO : Running anaconda script /usr/bin/anaconda -05:51:52,842 INFO : CentOS Linux is the highest priority installclass, using it -05:51:52,887 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:51:52,888 INFO : Running kickstart %%pre script(s) -05:51:52,888 WARNING : '/bin/sh' specified as full path -05:51:54,265 INFO : All kickstart %%pre script(s) have been run -05:51:54,314 INFO : ISCSID is /usr/sbin/iscsid -05:51:54,314 INFO : no initiator set -05:51:54,416 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:51:54,425 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:51:54,425 INFO : no /etc/zfcp.conf; not configuring zfcp -05:51:59,033 INFO : created new libuser.conf at /tmp/libuser.KyLOeb with instPath="/mnt/sysimage" -05:51:59,033 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:51:59,033 INFO : Display mode = t -05:51:59,034 INFO : Default encoding = utf-8 -05:51:59,193 INFO : Detected 2016M of memory -05:51:59,193 INFO : Swap attempt of 4032M -05:51:59,528 INFO : ISCSID is /usr/sbin/iscsid -05:51:59,528 INFO : no initiator set -05:52:00,372 INFO : setting installation environment hostname to server2 -05:52:00,415 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:52:00,541 INFO : Detected 2016M of memory -05:52:00,541 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:52:00,541 INFO : Swap attempt of 3276M -05:52:00,698 WARNING : step installtype does not exist -05:52:00,699 WARNING : step confirminstall does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,702 INFO : moving (1) to step setuptime -05:52:00,702 DEBUG : setuptime is a direct step -22:52:00,703 WARNING : '/usr/sbin/hwclock' specified as full path -22:52:02,003 INFO : leaving (1) step setuptime -22:52:02,003 INFO : moving (1) to step autopartitionexecute -22:52:02,003 DEBUG : autopartitionexecute is a direct step -22:52:02,141 INFO : leaving (1) step autopartitionexecute -22:52:02,141 INFO : moving (1) to step storagedone -22:52:02,141 DEBUG : storagedone is a direct step -22:52:02,142 INFO : leaving (1) step storagedone -22:52:02,142 INFO : moving (1) to step enablefilesystems -22:52:02,142 DEBUG : enablefilesystems is a direct step -22:52:08,928 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:52:12,407 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:52:25,536 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:52:30,102 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:52:35,181 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:52:40,809 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:52:44,576 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:52:44,576 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-rootvol on /mnt/sysimage as ext3 with options defaults -22:52:45,082 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:52:45,230 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:52:45,240 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:52:45,247 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:52:45,333 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-homevol on /mnt/sysimage/home as ext3 with options defaults -22:52:45,482 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:52:45,483 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:52:45,487 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:52:45,534 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:52:45,571 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:52:45,795 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-varvol on /mnt/sysimage/var as ext3 with options defaults -22:52:45,955 INFO : leaving (1) step enablefilesystems -22:52:45,955 INFO : moving (1) to step bootloadersetup -22:52:45,956 DEBUG : bootloadersetup is a direct step -22:52:45,960 INFO : leaving (1) step bootloadersetup -22:52:45,960 INFO : moving (1) to step reposetup -22:52:45,960 DEBUG : reposetup is a direct step -22:52:47,076 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:52:47,077 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:52:47,296 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:52:47,358 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:52:47,499 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:52:47,629 INFO : leaving (1) step reposetup -22:52:47,629 INFO : moving (1) to step basepkgsel -22:52:47,629 DEBUG : basepkgsel is a direct step -22:52:47,645 WARNING : not adding Base group -22:52:48,052 INFO : leaving (1) step basepkgsel -22:52:48,053 INFO : moving (1) to step postselection -22:52:48,053 DEBUG : postselection is a direct step -22:52:48,056 INFO : selected kernel package for kernel -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:52:53,656 INFO : leaving (1) step postselection -22:52:53,657 INFO : moving (1) to step install diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server2.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server2.1/sys.log.template deleted file mode 100644 index 1fbb5602..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_2/server2.1/sys.log.template +++ /dev/null @@ -1,1628 +0,0 @@ -05:50:20,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:50:20,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:50:20,517 INFO kernel:Initializing cgroup subsys cpuset -05:50:20,517 INFO kernel:Initializing cgroup subsys cpu -05:50:20,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:50:20,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,517 INFO kernel:KERNEL supported cpus: -05:50:20,517 INFO kernel: Intel GenuineIntel -05:50:20,517 INFO kernel: AMD AuthenticAMD -05:50:20,517 INFO kernel: Centaur CentaurHauls -05:50:20,517 INFO kernel:Disabled fast string operations -05:50:20,517 INFO kernel:BIOS-provided physical RAM map: -05:50:20,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:50:20,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:50:20,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:50:20,517 INFO kernel:DMI present. -05:50:20,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:50:20,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:50:20,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:50:20,517 INFO kernel:Hypervisor detected: VMware -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:50:20,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:50:20,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:50:20,517 DEBUG kernel:MTRR default type: uncachable -05:50:20,517 DEBUG kernel:MTRR fixed ranges enabled: -05:50:20,517 DEBUG kernel: 00000-9FFFF write-back -05:50:20,517 DEBUG kernel: A0000-BFFFF uncachable -05:50:20,517 DEBUG kernel: C0000-CFFFF write-protect -05:50:20,517 DEBUG kernel: D0000-EFFFF uncachable -05:50:20,517 DEBUG kernel: F0000-FFFFF write-protect -05:50:20,517 DEBUG kernel:MTRR variable ranges enabled: -05:50:20,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:50:20,517 DEBUG kernel: 1 disabled -05:50:20,517 DEBUG kernel: 2 disabled -05:50:20,517 DEBUG kernel: 3 disabled -05:50:20,517 DEBUG kernel: 4 disabled -05:50:20,517 DEBUG kernel: 5 disabled -05:50:20,517 DEBUG kernel: 6 disabled -05:50:20,517 DEBUG kernel: 7 disabled -05:50:20,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:50:20,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:50:20,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:50:20,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:50:20,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:50:20,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:50:20,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:50:20,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:50:20,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:50:20,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:50:20,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:50:20,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:50:20,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:50:20,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,517 INFO kernel:Setting APIC routing to flat. -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:50:20,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:50:20,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:50:20,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:50:20,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:50:20,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:50:20,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:50:20,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:50:20,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:50:20,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:50:20,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:50:20,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:50:20,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:50:20,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:50:20,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:50:20,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:50:20,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:50:20,517 WARNING kernel:Zone PFN ranges: -05:50:20,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:50:20,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:50:20,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:50:20,517 WARNING kernel:Movable zone start PFN for each node -05:50:20,517 WARNING kernel:early_node_map[3] active PFN ranges -05:50:20,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:50:20,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:50:20,520 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:50:20,520 DEBUG kernel:On node 0 totalpages: 524159 -05:50:20,520 DEBUG kernel: DMA zone: 56 pages used for memmap -05:50:20,520 DEBUG kernel: DMA zone: 101 pages reserved -05:50:20,520 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:50:20,520 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:50:20,520 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:50:20,520 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:50:20,520 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,520 INFO kernel:Setting APIC routing to flat. -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:50:20,521 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:50:20,521 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:50:20,521 DEBUG kernel:ACPI: IRQ0 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ2 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ9 used by override. -05:50:20,521 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:50:20,521 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:50:20,521 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:50:20,521 DEBUG kernel:nr_irqs_gsi: 24 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:50:20,521 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:50:20,521 INFO kernel:Booting paravirtualized kernel on bare hardware -05:50:20,521 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:50:20,521 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:50:20,521 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:50:20,521 INFO kernel:pcpu-alloc: [0] 0 1 -05:50:20,521 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:50:20,521 WARNING kernel:Policy zone: DMA32 -05:50:20,521 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,521 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:50:20,521 INFO kernel:Checking aperture... -05:50:20,521 INFO kernel:No AGP bridge found -05:50:20,521 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:50:20,521 INFO kernel:Hierarchical RCU implementation. -05:50:20,521 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:50:20,521 INFO kernel:Extended CMOS year: 2000 -05:50:20,521 WARNING kernel:Console: colour VGA+ 80x25 -05:50:20,521 INFO kernel:console [tty0] enabled -05:50:20,521 INFO kernel:allocated 8388608 bytes of page_cgroup -05:50:20,521 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:50:20,521 DEBUG kernel:hpet clockevent registered -05:50:20,521 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:50:20,521 WARNING kernel:Detected 2400.085 MHz processor. -05:50:20,521 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:50:20,521 INFO kernel:pid_max: default: 32768 minimum: 301 -05:50:20,521 INFO kernel:Security Framework initialized -05:50:20,521 INFO kernel:SELinux: Initializing. -05:50:20,521 DEBUG kernel:SELinux: Starting in permissive mode -05:50:20,521 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:50:20,521 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:50:20,521 WARNING kernel:Mount-cache hash table entries: 256 -05:50:20,521 INFO kernel:Initializing cgroup subsys ns -05:50:20,521 INFO kernel:Initializing cgroup subsys cpuacct -05:50:20,521 INFO kernel:Initializing cgroup subsys memory -05:50:20,521 INFO kernel:Initializing cgroup subsys devices -05:50:20,521 INFO kernel:Initializing cgroup subsys freezer -05:50:20,521 INFO kernel:Initializing cgroup subsys net_cls -05:50:20,521 INFO kernel:Initializing cgroup subsys blkio -05:50:20,521 INFO kernel:Initializing cgroup subsys perf_event -05:50:20,521 INFO kernel:Initializing cgroup subsys net_prio -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:CPU: Physical Processor ID: 0 -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:alternatives: switching to unfair spinlock -05:50:20,521 INFO kernel:ACPI: Core revision 20090903 -05:50:20,521 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:50:20,521 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:50:20,521 INFO kernel:APIC routing finalized to flat. -05:50:20,521 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:50:20,521 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:50:20,521 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:50:20,521 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:50:20,521 INFO kernel:... version: 3 -05:50:20,521 INFO kernel:... bit width: 48 -05:50:20,521 INFO kernel:... generic registers: 4 -05:50:20,521 INFO kernel:... value mask: 0000ffffffffffff -05:50:20,521 INFO kernel:... max period: 000000007fffffff -05:50:20,521 INFO kernel:... fixed-purpose events: 3 -05:50:20,521 INFO kernel:... event mask: 000000070000000f -05:50:20,521 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:50:20,521 INFO kernel:Booting Node 0, Processors #1 Ok. -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:50:20,521 INFO kernel:Brought up 2 CPUs -05:50:20,521 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:50:20,521 DEBUG kernel:sizeof(vma)=200 bytes -05:50:20,521 DEBUG kernel:sizeof(page)=56 bytes -05:50:20,521 DEBUG kernel:sizeof(inode)=592 bytes -05:50:20,521 DEBUG kernel:sizeof(dentry)=192 bytes -05:50:20,521 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:50:20,521 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:50:20,521 DEBUG kernel:sizeof(skbuff)=232 bytes -05:50:20,521 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:50:20,521 INFO kernel:devtmpfs: initialized -05:50:20,521 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:50:20,521 INFO kernel:regulator: core version 0.5 -05:50:20,521 INFO kernel:NET: Registered protocol family 16 -05:50:20,521 INFO kernel:ACPI: bus type pci registered -05:50:20,521 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:50:20,521 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:50:20,521 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:50:20,521 INFO kernel:PCI: Using configuration type 1 for base access -05:50:20,521 WARNING kernel:bio: create slab at 0 -05:50:20,521 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:50:20,521 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:50:20,521 INFO kernel:ACPI: Interpreter enabled -05:50:20,521 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:50:20,521 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:50:20,521 INFO kernel:ACPI: No dock devices found. -05:50:20,521 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:50:20,521 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:50:20,521 INFO kernel:PCI host bridge to bus 0000:00 -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:50:20,521 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:50:20,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,522 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:50:20,522 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:50:20,522 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:50:20,522 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:50:20,522 INFO kernel:vgaarb: loaded -05:50:20,522 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:50:20,522 NOTICE kernel:SCSI subsystem initialized -05:50:20,522 DEBUG kernel:libata version 3.00 loaded. -05:50:20,522 INFO kernel:usbcore: registered new interface driver usbfs -05:50:20,522 INFO kernel:usbcore: registered new interface driver hub -05:50:20,522 INFO kernel:usbcore: registered new device driver usb -05:50:20,522 INFO kernel:PCI: Using ACPI for IRQ routing -05:50:20,522 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:50:20,522 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:50:20,522 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:50:20,522 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:50:20,522 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:50:20,522 INFO kernel:NetLabel: Initializing -05:50:20,522 INFO kernel:NetLabel: domain hash size = 128 -05:50:20,522 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:50:20,522 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:50:20,522 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:50:20,522 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:50:20,522 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:50:20,522 INFO kernel:Switching to clocksource hpet -05:50:20,522 INFO kernel:pnp: PnP ACPI init -05:50:20,522 INFO kernel:ACPI: bus type pnp registered -05:50:20,522 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:50:20,522 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0080] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:50:20,522 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:50:20,522 DEBUG kernel:pnp 00:02: [dma 4] -05:50:20,522 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:50:20,522 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:50:20,522 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:50:20,522 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:50:20,522 DEBUG kernel:pnp 00:04: [irq 8] -05:50:20,522 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:50:20,522 DEBUG kernel:pnp 00:05: [io 0x0061] -05:50:20,522 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0060] -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0064] -05:50:20,522 DEBUG kernel:pnp 00:06: [irq 1] -05:50:20,522 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:50:20,522 DEBUG kernel:pnp 00:07: [irq 12] -05:50:20,522 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:50:20,522 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:50:20,522 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:50:20,522 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:50:20,522 DEBUG kernel:pnp 00:09: [irq 7] -05:50:20,522 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:50:20,522 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:50:20,522 DEBUG kernel:pnp 00:0a: [irq 4] -05:50:20,522 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:50:20,522 DEBUG kernel:pnp 00:0b: [irq 3] -05:50:20,522 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:50:20,522 DEBUG kernel:pnp 00:0c: [irq 6] -05:50:20,522 DEBUG kernel:pnp 00:0c: [dma 2] -05:50:20,522 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 INFO kernel:pnp: PnP ACPI: found 14 devices -05:50:20,522 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:50:20,522 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:50:20,522 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:50:20,522 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:50:20,522 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:50:20,522 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:50:20,523 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,524 INFO kernel:NET: Registered protocol family 2 -05:50:20,524 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:50:20,524 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:50:20,524 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:50:20,524 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:50:20,524 INFO kernel:TCP reno registered -05:50:20,524 INFO kernel:NET: Registered protocol family 1 -05:50:20,524 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:50:20,524 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:50:20,524 INFO kernel:Trying to unpack rootfs image as initramfs... -05:50:20,524 INFO kernel:Freeing initrd memory: 32601k freed -05:50:20,524 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:50:20,524 INFO kernel:audit: initializing netlink socket (disabled) -05:50:20,524 NOTICE kernel:type=2000 audit(1021096218.805:1): initialized -05:50:20,524 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:50:20,524 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:50:20,524 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:50:20,524 INFO kernel:msgmni has been set to 4005 -05:50:20,526 DEBUG kernel:SELinux: Registering netfilter hooks -05:50:20,526 INFO kernel:alg: No test for stdrng (krng) -05:50:20,526 WARNING kernel:ksign: Installing public key data -05:50:20,526 WARNING kernel:Loading keyring -05:50:20,526 WARNING kernel:- Added public key 8A44323FB303E068 -05:50:20,526 WARNING kernel: - key was been created 363988241 seconds in future -05:50:20,526 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:50:20,526 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:50:20,526 INFO kernel:io scheduler noop registered -05:50:20,526 INFO kernel:io scheduler anticipatory registered -05:50:20,526 INFO kernel:io scheduler deadline registered -05:50:20,526 INFO kernel:io scheduler cfq registered (default) -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:50:20,526 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:50:20,526 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:50:20,526 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:50:20,526 INFO kernel:acpiphp: Slot [32] registered -05:50:20,526 INFO kernel:acpiphp: Slot [33] registered -05:50:20,526 INFO kernel:acpiphp: Slot [34] registered -05:50:20,526 INFO kernel:acpiphp: Slot [35] registered -05:50:20,526 INFO kernel:acpiphp: Slot [36] registered -05:50:20,526 INFO kernel:acpiphp: Slot [37] registered -05:50:20,526 INFO kernel:acpiphp: Slot [38] registered -05:50:20,527 INFO kernel:acpiphp: Slot [39] registered -05:50:20,527 INFO kernel:acpiphp: Slot [40] registered -05:50:20,527 INFO kernel:acpiphp: Slot [41] registered -05:50:20,527 INFO kernel:acpiphp: Slot [42] registered -05:50:20,527 INFO kernel:acpiphp: Slot [43] registered -05:50:20,527 INFO kernel:acpiphp: Slot [44] registered -05:50:20,527 INFO kernel:acpiphp: Slot [45] registered -05:50:20,527 INFO kernel:acpiphp: Slot [46] registered -05:50:20,527 INFO kernel:acpiphp: Slot [47] registered -05:50:20,527 INFO kernel:acpiphp: Slot [48] registered -05:50:20,527 INFO kernel:acpiphp: Slot [49] registered -05:50:20,527 INFO kernel:acpiphp: Slot [50] registered -05:50:20,527 INFO kernel:acpiphp: Slot [51] registered -05:50:20,527 INFO kernel:acpiphp: Slot [52] registered -05:50:20,527 INFO kernel:acpiphp: Slot [53] registered -05:50:20,527 INFO kernel:acpiphp: Slot [54] registered -05:50:20,527 INFO kernel:acpiphp: Slot [55] registered -05:50:20,527 INFO kernel:acpiphp: Slot [56] registered -05:50:20,527 INFO kernel:acpiphp: Slot [57] registered -05:50:20,527 INFO kernel:acpiphp: Slot [58] registered -05:50:20,527 INFO kernel:acpiphp: Slot [59] registered -05:50:20,527 INFO kernel:acpiphp: Slot [60] registered -05:50:20,527 INFO kernel:acpiphp: Slot [61] registered -05:50:20,527 INFO kernel:acpiphp: Slot [62] registered -05:50:20,527 INFO kernel:acpiphp: Slot [63] registered -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:50:20,527 INFO kernel:ipmi message handler version 39.2 -05:50:20,527 INFO kernel:IPMI System Interface driver. -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:50:20,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:50:20,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:50:20,527 INFO kernel:ACPI: Power Button [PWRF] -05:50:20,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:50:20,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:50:20,527 INFO kernel:GHES: HEST is not enabled! -05:50:20,527 INFO kernel:Non-volatile memory driver v1.3 -05:50:20,527 INFO kernel:Linux agpgart interface v0.103 -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:50:20,527 INFO kernel:crash memory driver: version 1.1 -05:50:20,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:50:20,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:brd: module loaded -05:50:20,527 INFO kernel:loop: module loaded -05:50:20,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:50:20,527 INFO kernel:Fixed MDIO Bus: probed -05:50:20,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:50:20,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:50:20,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:50:20,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:50:20,527 INFO kernel:Refined TSC clocksource calibration: 2400.081 MHz. -05:50:20,527 INFO kernel:Switching to clocksource tsc -05:50:20,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:50:20,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:50:20,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:50:20,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:50:20,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:50:20,527 INFO kernel:cpuidle: using governor ladder -05:50:20,527 INFO kernel:cpuidle: using governor menu -05:50:20,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:50:20,527 INFO kernel:usbcore: registered new interface driver hiddev -05:50:20,527 INFO kernel:usbcore: registered new interface driver usbhid -05:50:20,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:50:20,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:50:20,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:50:20,527 INFO kernel:TCP cubic registered -05:50:20,527 INFO kernel:Initializing XFRM netlink socket -05:50:20,527 INFO kernel:NET: Registered protocol family 17 -05:50:20,527 WARNING kernel:registered taskstats version 1 -05:50:20,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:50:20,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:50:20 UTC (1021096220) -05:50:20,527 INFO kernel:Initalizing network drop monitor service -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:50:20,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:50:20,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:50:22,553 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:50:22,564 INFO kernel:Loading iSCSI transport class v2.0-870. -05:50:22,583 NOTICE kernel:iscsi: registered transport (tcp) -05:50:22,589 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:50:22,600 INFO kernel:FDC 0 is a post-1991 82077 -05:50:22,604 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:50:22,608 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:50:22,615 INFO kernel:No iBFT detected. -05:50:22,648 INFO kernel:NET: Registered protocol family 10 -05:50:22,648 INFO kernel:lo: Disabled Privacy Extensions -05:50:22,720 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:50:22,720 INFO kernel:scsi0 : ata_piix -05:50:22,721 INFO kernel:scsi1 : ata_piix -05:50:22,721 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:50:22,721 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:50:22,731 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:22,907 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:50:22,913 INFO kernel:ata2.00: configured for UDMA/33 -05:50:22,913 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:50:22,936 INFO kernel:Fusion MPT base driver 3.04.20 -05:50:22,936 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:50:22,947 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:50:22,947 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:50:22,947 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:22,947 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:22,947 INFO kernel:mptbase: ioc0: Initiating bringup -05:50:22,966 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:50:23,007 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:50:23,035 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,035 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:50:23,035 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,036 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,036 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:50:23,037 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,061 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:50:23,061 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:50:23,061 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:50:23,072 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:50:23,072 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:50:23,072 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:50:23,072 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,072 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:50:23,072 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:b8 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:50:23,422 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:50:23,422 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,422 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:50:23,422 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:c2 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:50:23,766 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:50:23,766 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,766 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:50:23,766 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:cc -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:50:24,116 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:24,116 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:d6 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 INFO kernel: sda: -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 INFO kernel: sdb: -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,502 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:50:24,505 WARNING kernel: sda1 sda2 -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,531 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:50:24,537 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:50:24,538 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:50:24,538 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:50:28,728 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:31,010 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:50:31,010 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:50:31,012 INFO NetworkManager: trying to start the modem manager... -05:50:31,016 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:50:31,016 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:50:31,017 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:50:31,018 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:50:31,023 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:50:31,025 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: Networking is enabled by state file -05:50:31,044 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:50:31,044 INFO kernel:All bugs added by David S. Miller -05:50:31,045 INFO NetworkManager: (eth0): carrier is OFF -05:50:31,045 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:50:31,045 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:50:31,045 INFO NetworkManager: (eth0): now managed -05:50:31,045 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:50:31,045 INFO NetworkManager: (eth0): bringing up device. -05:50:31,051 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,055 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:50:31,056 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,056 INFO NetworkManager: (eth0): preparing device. -05:50:31,056 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:50:31,057 INFO NetworkManager: (eth1): carrier is OFF -05:50:31,058 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:50:31,058 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:50:31,058 INFO NetworkManager: (eth1): now managed -05:50:31,058 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:50:31,058 INFO NetworkManager: (eth1): bringing up device. -05:50:31,063 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,068 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:50:31,068 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,068 INFO NetworkManager: (eth1): preparing device. -05:50:31,068 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:50:31,069 INFO NetworkManager: (eth2): carrier is OFF -05:50:31,070 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:50:31,070 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:50:31,070 INFO NetworkManager: (eth2): now managed -05:50:31,070 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:50:31,070 INFO NetworkManager: (eth2): bringing up device. -05:50:31,076 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,080 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:50:31,080 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,080 INFO NetworkManager: (eth2): preparing device. -05:50:31,080 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:50:31,081 INFO NetworkManager: (eth3): carrier is OFF -05:50:31,082 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:50:31,082 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:50:31,082 INFO NetworkManager: (eth3): now managed -05:50:31,082 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:50:31,082 INFO NetworkManager: (eth3): bringing up device. -05:50:31,086 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,091 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:50:31,091 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,091 INFO NetworkManager: (eth3): preparing device. -05:50:31,091 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:50:31,093 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,095 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,096 INFO NetworkManager: Trying to start the supplicant... -05:50:31,097 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:50:31,098 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:50:31,104 INFO NetworkManager: wpa_supplicant started -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:33,054 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:50:33,057 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:50:33,057 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:50:33,058 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:50:33,060 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:50:33,062 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:50:33,062 INFO NetworkManager: dhclient started with pid 654 -05:50:33,063 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:50:33,063 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:50:33,063 INFO dhclient: All rights reserved. -05:50:33,063 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:50:33,063 INFO dhclient: -05:50:33,063 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:50:33,066 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:50:33,068 INFO dhclient: Listening on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on Socket/fallback -05:50:37,004 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x3433ec2c) -05:50:37,048 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:50:37,048 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x3433ec2c) -05:50:38,084 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x3433ec2c) -05:50:38,087 INFO dhclient: bound to 10.145.88.104 -- renewal in 10764 seconds. -05:50:38,087 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:50:38,087 INFO NetworkManager: address 10.145.88.104 -05:50:38,087 INFO NetworkManager: prefix 23 (255.255.254.0) -05:50:38,087 INFO NetworkManager: gateway 10.145.88.1 -05:50:38,087 INFO NetworkManager: hostname 'server2' -05:50:38,087 INFO NetworkManager: nameserver '10.145.88.211' -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:50:39,089 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:50:39,090 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:50:39,090 INFO NetworkManager: Setting system hostname to 'server2' (from DHCPv4) -05:50:39,091 INFO NetworkManager: Activation (eth0) successful, device activated. -05:50:39,092 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:46,967 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/nm-dhcp-client.conf, line 1, column 0: no element found -05:51:46,969 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/org.freedesktop.PolicyKit1.conf, line 1, column 0: no element found -05:51:46,976 NOTICE dbus-daemon: [system] Reloaded configuration -05:51:47,135 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,214 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,702 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:51:47,702 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:51:47,706 DEBUG kernel:SELinux: Completing initialization. -05:51:47,706 DEBUG kernel:SELinux: Setting up existing superblocks. -05:51:47,706 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:51:47,709 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:51:47,751 NOTICE kernel:type=1403 audit(1021096307.739:2): policy loaded auid=4294967295 ses=4294967295 -05:51:47,786 INFO kernel:md: raid0 personality registered for level 0 -05:51:47,793 INFO kernel:md: raid1 personality registered for level 1 -05:51:47,797 INFO kernel:async_tx: api initialized (async) -05:51:47,802 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:51:47,810 INFO kernel: generic_sse: 9176.000 MB/sec -05:51:47,810 INFO kernel:xor: using function: generic_sse (9176.000 MB/sec) -05:51:47,834 WARNING kernel:raid6: sse2x1 4742 MB/s -05:51:47,851 WARNING kernel:raid6: sse2x2 7117 MB/s -05:51:47,868 WARNING kernel:raid6: sse2x4 7660 MB/s -05:51:47,868 WARNING kernel:raid6: using algorithm sse2x4 (7660 MB/s) -05:51:47,868 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:51:47,882 INFO kernel:md: raid6 personality registered for level 6 -05:51:47,882 INFO kernel:md: raid5 personality registered for level 5 -05:51:47,882 INFO kernel:md: raid4 personality registered for level 4 -05:51:47,893 INFO kernel:md: raid10 personality registered for level 10 -05:51:47,896 INFO kernel:md: linear personality registered for level -1 -05:51:47,909 INFO kernel:device-mapper: uevent: version 1.0.3 -05:51:47,909 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:51:47,940 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:51:47,944 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:52:05,224 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:05,224 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:05,225 INFO kernel: sda: sda1 -05:52:06,013 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,013 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,023 INFO kernel: sda: -05:52:06,365 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,365 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,415 INFO kernel: sda: sda1 -05:52:09,171 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:09,171 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:09,171 INFO kernel: sda: sda1 sda2 -05:52:11,280 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:11,280 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:11,280 INFO kernel: sda: sda1 sda2 sda3 -05:52:44,551 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:52:45,044 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,053 INFO kernel:EXT3-fs (dm-0): using internal journal -05:52:45,053 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:52:45,053 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:52:45,103 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,170 INFO kernel:EXT3-fs (sda1): using internal journal -05:52:45,170 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:52:45,170 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:52:45,250 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:45,384 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,439 INFO kernel:EXT3-fs (dm-1): using internal journal -05:52:45,439 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:52:45,439 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:52:45,604 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,648 INFO kernel:EXT3-fs (dm-2): using internal journal -05:52:45,648 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:52:45,648 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:52:45,851 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,875 INFO kernel:EXT3-fs (dm-3): using internal journal -05:52:45,875 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:52:45,875 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:52:54,110 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:54,124 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,143 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:55,145 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -06:11:24,179 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,305 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,821 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:24,821 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/anaconda.log.template deleted file mode 100644 index f04da66a..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/anaconda.log.template +++ /dev/null @@ -1,286 +0,0 @@ -05:51:20,534 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af - -05:51:20,534 INFO : text mode forced from cmdline -05:51:20,534 DEBUG : readNetInfo /tmp/s390net not found, early return -05:51:20,534 INFO : anaconda version 13.21.215 on x86_64 starting -05:51:20,656 DEBUG : Saving module ipv6 -05:51:20,656 DEBUG : Saving module iscsi_ibft -05:51:20,656 DEBUG : Saving module iscsi_boot_sysfs -05:51:20,656 DEBUG : Saving module pcspkr -05:51:20,656 DEBUG : Saving module edd -05:51:20,656 DEBUG : Saving module floppy -05:51:20,656 DEBUG : Saving module iscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi -05:51:20,656 DEBUG : Saving module scsi_transport_iscsi -05:51:20,656 DEBUG : Saving module squashfs -05:51:20,656 DEBUG : Saving module cramfs -05:51:20,656 DEBUG : probing buses -05:51:20,693 DEBUG : waiting for hardware to initialize -05:51:27,902 DEBUG : probing buses -05:51:27,925 DEBUG : waiting for hardware to initialize -05:51:47,187 INFO : getting kickstart file -05:51:47,196 INFO : eth0 has link, using it -05:51:47,208 INFO : doing kickstart... setting it up -05:51:47,208 DEBUG : activating device eth0 -05:51:52,221 INFO : wait_for_iface_activation (2502): device eth0 activated -05:51:52,222 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,223 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,611 INFO : setting up kickstart -05:51:52,611 INFO : kickstart forcing text mode -05:51:52,611 INFO : kickstartFromUrl -05:51:52,612 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:51:52,612 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:51:52,616 INFO : drive status is CDS_TRAY_OPEN -05:51:52,616 ERROR : Drive tray reports open when it should be closed -05:52:07,635 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,636 DEBUG : going to set language to en_US.UTF-8 -05:52:07,636 INFO : setting language to en_US.UTF-8 -05:52:07,654 INFO : starting STEP_METHOD -05:52:07,654 DEBUG : loaderData->method is set, adding skipMethodDialog -05:52:07,654 DEBUG : skipMethodDialog is set -05:52:07,663 INFO : starting STEP_STAGE2 -05:52:07,663 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,663 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:52:07,780 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:52:07,780 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:52:07,780 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:52:07,814 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:52:07,815 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,354 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:52:47,354 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,403 INFO : Loading SELinux policy -05:52:48,130 INFO : getting ready to spawn shell now -05:52:48,359 INFO : Running anaconda script /usr/bin/anaconda -05:52:54,804 INFO : CentOS Linux is the highest priority installclass, using it -05:52:54,867 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:52:54,868 INFO : Running kickstart %%pre script(s) -05:52:54,868 WARNING : '/bin/sh' specified as full path -05:52:56,966 INFO : All kickstart %%pre script(s) have been run -05:52:57,017 INFO : ISCSID is /usr/sbin/iscsid -05:52:57,017 INFO : no initiator set -05:52:57,128 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:52:57,137 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:52:57,138 INFO : no /etc/zfcp.conf; not configuring zfcp -05:53:00,902 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -05:53:00,903 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:53:00,903 INFO : Display mode = t -05:53:00,903 INFO : Default encoding = utf-8 -05:53:01,064 INFO : Detected 2016M of memory -05:53:01,064 INFO : Swap attempt of 4032M -05:53:01,398 INFO : ISCSID is /usr/sbin/iscsid -05:53:01,399 INFO : no initiator set -05:53:05,059 INFO : setting installation environment hostname to server1 -05:53:05,104 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:53:05,276 INFO : Detected 2016M of memory -05:53:05,277 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:53:05,277 INFO : Swap attempt of 3276M -05:53:05,453 WARNING : step installtype does not exist -05:53:05,454 WARNING : step confirminstall does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,457 WARNING : step complete does not exist -05:53:05,457 INFO : moving (1) to step setuptime -05:53:05,458 DEBUG : setuptime is a direct step -22:53:05,458 WARNING : '/usr/sbin/hwclock' specified as full path -22:53:06,002 INFO : leaving (1) step setuptime -22:53:06,003 INFO : moving (1) to step autopartitionexecute -22:53:06,003 DEBUG : autopartitionexecute is a direct step -22:53:06,138 INFO : leaving (1) step autopartitionexecute -22:53:06,138 INFO : moving (1) to step storagedone -22:53:06,138 DEBUG : storagedone is a direct step -22:53:06,138 INFO : leaving (1) step storagedone -22:53:06,139 INFO : moving (1) to step enablefilesystems -22:53:06,139 DEBUG : enablefilesystems is a direct step -22:53:10,959 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:53:41,215 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:53:57,388 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:54:14,838 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:54:21,717 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:54:27,576 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:54:40,058 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:54:41,949 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:54:41,950 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-rootvol on /mnt/sysimage as ext3 with options defaults -22:54:42,826 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:54:43,148 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:54:43,158 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:54:43,164 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:54:43,207 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-homevol on /mnt/sysimage/home as ext3 with options defaults -22:54:43,434 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,435 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:54:43,439 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,496 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:54:43,609 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:54:43,874 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-varvol on /mnt/sysimage/var as ext3 with options defaults -22:54:44,056 INFO : leaving (1) step enablefilesystems -22:54:44,057 INFO : moving (1) to step bootloadersetup -22:54:44,057 DEBUG : bootloadersetup is a direct step -22:54:44,061 INFO : leaving (1) step bootloadersetup -22:54:44,061 INFO : moving (1) to step reposetup -22:54:44,061 DEBUG : reposetup is a direct step -22:54:56,952 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:54:56,953 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:54:57,133 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:54:57,454 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:54:58,637 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:54:58,971 INFO : leaving (1) step reposetup -22:54:58,971 INFO : moving (1) to step basepkgsel -22:54:58,972 DEBUG : basepkgsel is a direct step -22:54:58,986 WARNING : not adding Base group -22:54:59,388 INFO : leaving (1) step basepkgsel -22:54:59,388 INFO : moving (1) to step postselection -22:54:59,388 DEBUG : postselection is a direct step -22:54:59,390 INFO : selected kernel package for kernel -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:55:07,745 INFO : leaving (1) step postselection -22:55:07,745 INFO : moving (1) to step install -22:55:07,748 INFO : leaving (1) step install -22:55:07,748 INFO : moving (1) to step preinstallconfig -22:55:07,748 DEBUG : preinstallconfig is a direct step -22:55:08,087 DEBUG : isys.py:mount()- going to mount /selinux on /mnt/sysimage/selinux as selinuxfs with options defaults -22:55:08,091 DEBUG : isys.py:mount()- going to mount /proc/bus/usb on /mnt/sysimage/proc/bus/usb as usbfs with options defaults -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,122 INFO : leaving (1) step preinstallconfig -22:55:08,122 INFO : moving (1) to step installpackages -22:55:08,122 DEBUG : installpackages is a direct step -22:55:08,122 INFO : Preparing to install packages -23:17:06,152 INFO : leaving (1) step installpackages -23:17:06,153 INFO : moving (1) to step postinstallconfig -23:17:06,153 DEBUG : postinstallconfig is a direct step -23:17:06,162 DEBUG : Removing cachedir: /mnt/sysimage/var/cache/yum/anaconda-CentOS-201311291202.x86_64 -23:17:06,181 DEBUG : Removing headers and packages from /mnt/sysimage/var/cache/yum/ppa_repo -23:17:06,183 INFO : leaving (1) step postinstallconfig -23:17:06,184 INFO : moving (1) to step writeconfig -23:17:06,184 DEBUG : writeconfig is a direct step -23:17:06,184 INFO : Writing main configuration -23:17:06,219 WARNING : '/usr/sbin/authconfig' specified as full path -23:17:11,643 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,703 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,885 INFO : removing libuser.conf at /tmp/libuser.WMDW9M -23:17:11,885 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -23:17:12,722 INFO : leaving (1) step writeconfig -23:17:12,722 INFO : moving (1) to step firstboot -23:17:12,723 DEBUG : firstboot is a direct step -23:17:12,723 INFO : leaving (1) step firstboot -23:17:12,723 INFO : moving (1) to step instbootloader -23:17:12,724 DEBUG : instbootloader is a direct step -23:17:14,664 WARNING : '/sbin/grub-install' specified as full path -23:17:15,006 WARNING : '/sbin/grub' specified as full path -23:17:16,039 INFO : leaving (1) step instbootloader -23:17:16,040 INFO : moving (1) to step reipl -23:17:16,040 DEBUG : reipl is a direct step -23:17:16,040 INFO : leaving (1) step reipl -23:17:16,040 INFO : moving (1) to step writeksconfig -23:17:16,040 DEBUG : writeksconfig is a direct step -23:17:16,041 INFO : Writing autokickstart file -23:17:16,070 INFO : leaving (1) step writeksconfig -23:17:16,071 INFO : moving (1) to step setfilecon -23:17:16,071 DEBUG : setfilecon is a direct step -23:17:16,071 INFO : setting SELinux contexts for anaconda created files -23:17:17,822 INFO : leaving (1) step setfilecon -23:17:17,822 INFO : moving (1) to step copylogs -23:17:17,822 DEBUG : copylogs is a direct step -23:17:17,822 INFO : Copying anaconda logs -23:17:17,825 INFO : leaving (1) step copylogs -23:17:17,825 INFO : moving (1) to step methodcomplete -23:17:17,825 DEBUG : methodcomplete is a direct step -23:17:17,825 INFO : leaving (1) step methodcomplete -23:17:17,826 INFO : moving (1) to step postscripts -23:17:17,826 DEBUG : postscripts is a direct step -23:17:17,826 INFO : Running kickstart %%post script(s) -23:17:17,858 WARNING : '/bin/sh' specified as full path -23:17:21,002 INFO : All kickstart %%post script(s) have been run -23:17:21,002 INFO : leaving (1) step postscripts -23:17:21,002 INFO : moving (1) to step dopostaction -23:17:21,002 DEBUG : dopostaction is a direct step -23:17:21,003 INFO : leaving (1) step dopostaction diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/install.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/install.log.template deleted file mode 100644 index 861b3a53..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/install.log.template +++ /dev/null @@ -1,212 +0,0 @@ -Installing libgcc-4.4.7-4.el6.x86_64 -warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY -Installing setup-2.8.14-20.el6_4.1.noarch -Installing filesystem-2.4.30-3.el6.x86_64 -Installing basesystem-10.0-4.el6.noarch -Installing ncurses-base-5.7-3.20090208.el6.x86_64 -Installing kernel-firmware-2.6.32-431.el6.noarch -Installing tzdata-2013g-1.el6.noarch -Installing nss-softokn-freebl-3.14.3-9.el6.x86_64 -Installing glibc-common-2.12-1.132.el6.x86_64 -Installing glibc-2.12-1.132.el6.x86_64 -Installing ncurses-libs-5.7-3.20090208.el6.x86_64 -Installing bash-4.1.2-15.el6_4.x86_64 -Installing libattr-2.4.44-7.el6.x86_64 -Installing libcap-2.16-5.5.el6.x86_64 -Installing zlib-1.2.3-29.el6.x86_64 -Installing info-4.13a-8.el6.x86_64 -Installing popt-1.13-7.el6.x86_64 -Installing chkconfig-1.3.49.3-2.el6_4.1.x86_64 -Installing audit-libs-2.2-2.el6.x86_64 -Installing libcom_err-1.41.12-18.el6.x86_64 -Installing libacl-2.2.49-6.el6.x86_64 -Installing db4-4.7.25-18.el6_4.x86_64 -Installing nspr-4.10.0-1.el6.x86_64 -Installing nss-util-3.15.1-3.el6.x86_64 -Installing readline-6.0-4.el6.x86_64 -Installing libsepol-2.0.41-4.el6.x86_64 -Installing libselinux-2.0.94-5.3.el6_4.1.x86_64 -Installing shadow-utils-4.1.4.2-13.el6.x86_64 -Installing sed-4.2.1-10.el6.x86_64 -Installing bzip2-libs-1.0.5-7.el6_0.x86_64 -Installing libuuid-2.17.2-12.14.el6.x86_64 -Installing libstdc++-4.4.7-4.el6.x86_64 -Installing libblkid-2.17.2-12.14.el6.x86_64 -Installing gawk-3.1.7-10.el6.x86_64 -Installing file-libs-5.04-15.el6.x86_64 -Installing libgpg-error-1.7-4.el6.x86_64 -Installing dbus-libs-1.2.24-7.el6_3.x86_64 -Installing libudev-147-2.51.el6.x86_64 -Installing pcre-7.8-6.el6.x86_64 -Installing grep-2.6.3-4.el6.x86_64 -Installing lua-5.1.4-4.1.el6.x86_64 -Installing sqlite-3.6.20-1.el6.x86_64 -Installing cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 -Installing libidn-1.18-2.el6.x86_64 -Installing expat-2.0.1-11.el6_2.x86_64 -Installing xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64 -Installing elfutils-libelf-0.152-1.el6.x86_64 -Installing libgcrypt-1.4.5-11.el6_4.x86_64 -Installing bzip2-1.0.5-7.el6_0.x86_64 -Installing findutils-4.4.2-6.el6.x86_64 -Installing libselinux-utils-2.0.94-5.3.el6_4.1.x86_64 -Installing checkpolicy-2.0.22-1.el6.x86_64 -Installing cpio-2.10-11.el6_3.x86_64 -Installing which-2.19-6.el6.x86_64 -Installing libxml2-2.7.6-14.el6.x86_64 -Installing libedit-2.11-4.20080712cvs.1.el6.x86_64 -Installing pth-2.0.7-9.3.el6.x86_64 -Installing tcp_wrappers-libs-7.6-57.el6.x86_64 -Installing sysvinit-tools-2.87-5.dsf.el6.x86_64 -Installing libtasn1-2.3-3.el6_2.1.x86_64 -Installing p11-kit-0.18.5-2.el6.x86_64 -Installing p11-kit-trust-0.18.5-2.el6.x86_64 -Installing ca-certificates-2013.1.94-65.0.el6.noarch -Installing device-mapper-persistent-data-0.2.8-2.el6.x86_64 -Installing nss-softokn-3.14.3-9.el6.x86_64 -Installing libnih-1.0.1-7.el6.x86_64 -Installing upstart-0.6.5-12.el6_4.1.x86_64 -Installing file-5.04-15.el6.x86_64 -Installing gmp-4.3.1-7.el6_2.2.x86_64 -Installing libusb-0.1.12-23.el6.x86_64 -Installing MAKEDEV-3.24-6.el6.x86_64 -Installing libutempter-1.1.5-4.1.el6.x86_64 -Installing psmisc-22.6-15.el6_0.1.x86_64 -Installing net-tools-1.60-110.el6_2.x86_64 -Installing vim-minimal-7.2.411-1.8.el6.x86_64 -Installing tar-1.23-11.el6.x86_64 -Installing procps-3.2.8-25.el6.x86_64 -Installing db4-utils-4.7.25-18.el6_4.x86_64 -Installing e2fsprogs-libs-1.41.12-18.el6.x86_64 -Installing libss-1.41.12-18.el6.x86_64 -Installing pinentry-0.7.6-6.el6.x86_64 -Installing binutils-2.20.51.0.2-5.36.el6.x86_64 -Installing m4-1.4.13-5.el6.x86_64 -Installing diffutils-2.8.1-28.el6.x86_64 -Installing make-3.81-20.el6.x86_64 -Installing dash-0.5.5.1-4.el6.x86_64 -Installing ncurses-5.7-3.20090208.el6.x86_64 -Installing groff-1.18.1.4-21.el6.x86_64 -Installing less-436-10.el6.x86_64 -Installing coreutils-libs-8.4-31.el6.x86_64 -Installing gzip-1.3.12-19.el6_4.x86_64 -Installing cracklib-2.8.16-4.el6.x86_64 -Installing cracklib-dicts-2.8.16-4.el6.x86_64 -Installing coreutils-8.4-31.el6.x86_64 -Installing pam-1.1.1-17.el6.x86_64 -Installing module-init-tools-3.9-21.el6_4.x86_64 -Installing hwdata-0.233-9.1.el6.noarch -Installing redhat-logos-60.0.14-12.el6.centos.noarch -Installing plymouth-scripts-0.8.3-27.el6.centos.x86_64 -Installing libpciaccess-0.13.1-2.el6.x86_64 -Installing nss-3.15.1-15.el6.x86_64 -Installing nss-sysinit-3.15.1-15.el6.x86_64 -Installing nss-tools-3.15.1-15.el6.x86_64 -Installing openldap-2.4.23-32.el6_4.1.x86_64 -Installing logrotate-3.7.8-17.el6.x86_64 -Installing gdbm-1.8.0-36.el6.x86_64 -Installing mingetty-1.08-5.el6.x86_64 -Installing keyutils-libs-1.4-4.el6.x86_64 -Installing krb5-libs-1.10.3-10.el6_4.6.x86_64 -Installing openssl-1.0.1e-15.el6.x86_64 -Installing libssh2-1.4.2-1.el6.x86_64 -Installing libcurl-7.19.7-37.el6_4.x86_64 -Installing gnupg2-2.0.14-6.el6_4.x86_64 -Installing gpgme-1.1.8-3.el6.x86_64 -Installing curl-7.19.7-37.el6_4.x86_64 -Installing rpm-libs-4.8.0-37.el6.x86_64 -Installing rpm-4.8.0-37.el6.x86_64 -Installing fipscheck-lib-1.2.0-7.el6.x86_64 -Installing fipscheck-1.2.0-7.el6.x86_64 -Installing mysql-libs-5.1.71-1.el6.x86_64 -Installing ethtool-3.5-1.el6.x86_64 -Installing pciutils-libs-3.1.10-2.el6.x86_64 -Installing plymouth-core-libs-0.8.3-27.el6.centos.x86_64 -Installing libcap-ng-0.6.4-3.el6_0.1.x86_64 -Installing libffi-3.0.5-3.2.el6.x86_64 -Installing python-2.6.6-51.el6.x86_64 -Installing python-libs-2.6.6-51.el6.x86_64 -Installing python-pycurl-7.19.0-8.el6.x86_64 -Installing python-urlgrabber-3.9.1-9.el6.noarch -Installing pygpgme-0.1-18.20090824bzr68.el6.x86_64 -Installing rpm-python-4.8.0-37.el6.x86_64 -Installing python-iniparse-0.3.1-2.1.el6.noarch -Installing slang-2.2.1-1.el6.x86_64 -Installing newt-0.52.11-3.el6.x86_64 -Installing newt-python-0.52.11-3.el6.x86_64 -Installing ustr-1.0.4-9.1.el6.x86_64 -Installing libsemanage-2.0.43-4.2.el6.x86_64 -Installing libaio-0.3.107-10.el6.x86_64 -Installing pkgconfig-0.23-9.1.el6.x86_64 -Installing gamin-0.1.10-9.el6.x86_64 -Installing glib2-2.26.1-3.el6.x86_64 -Installing shared-mime-info-0.70-4.el6.x86_64 -Installing libuser-0.56.13-5.el6.x86_64 -Installing grubby-7.0.15-5.el6.x86_64 -Installing yum-metadata-parser-1.1.2-16.el6.x86_64 -Installing yum-plugin-fastestmirror-1.1.30-14.el6.noarch -Installing yum-3.2.29-40.el6.centos.noarch -Installing dbus-glib-0.86-6.el6.x86_64 -Installing dhcp-common-4.1.1-38.P1.el6.centos.x86_64 -Installing centos-release-6-5.el6.centos.11.1.x86_64 -Installing policycoreutils-2.0.83-19.39.el6.x86_64 -Installing iptables-1.4.7-11.el6.x86_64 -Installing iproute-2.6.32-31.el6.x86_64 -Installing iputils-20071127-17.el6_4.2.x86_64 -Installing util-linux-ng-2.17.2-12.14.el6.x86_64 -Installing initscripts-9.03.40-2.el6.centos.x86_64 -Installing udev-147-2.51.el6.x86_64 -Installing device-mapper-libs-1.02.79-8.el6.x86_64 -Installing device-mapper-1.02.79-8.el6.x86_64 -Installing device-mapper-event-libs-1.02.79-8.el6.x86_64 -Installing openssh-5.3p1-94.el6.x86_64 -Installing device-mapper-event-1.02.79-8.el6.x86_64 -Installing lvm2-libs-2.02.100-8.el6.x86_64 -Installing cryptsetup-luks-libs-1.2.0-7.el6.x86_64 -Installing device-mapper-multipath-libs-0.4.9-72.el6.x86_64 -Installing kpartx-0.4.9-72.el6.x86_64 -Installing libdrm-2.4.45-2.el6.x86_64 -Installing plymouth-0.8.3-27.el6.centos.x86_64 -Installing rsyslog-5.8.10-8.el6.x86_64 -Installing cyrus-sasl-2.1.23-13.el6_3.1.x86_64 -Installing postfix-2.6.6-2.2.el6_1.x86_64 -Installing cronie-anacron-1.4.4-12.el6.x86_64 -Installing cronie-1.4.4-12.el6.x86_64 -Installing crontabs-1.10-33.el6.noarch -Installing ntpdate-4.2.6p5-1.el6.centos.x86_64 -Installing iptables-ipv6-1.4.7-11.el6.x86_64 -Installing selinux-policy-3.7.19-231.el6.noarch -Installing kbd-misc-1.15-11.el6.noarch -Installing kbd-1.15-11.el6.x86_64 -Installing dracut-004-335.el6.noarch -Installing dracut-kernel-004-335.el6.noarch -Installing kernel-2.6.32-431.el6.x86_64 -Installing fuse-2.8.3-4.el6.x86_64 -Installing selinux-policy-targeted-3.7.19-231.el6.noarch -Installing system-config-firewall-base-1.2.27-5.el6.noarch -Installing ntp-4.2.6p5-1.el6.centos.x86_64 -Installing device-mapper-multipath-0.4.9-72.el6.x86_64 -Installing cryptsetup-luks-1.2.0-7.el6.x86_64 -Installing lvm2-2.02.100-8.el6.x86_64 -Installing openssh-clients-5.3p1-94.el6.x86_64 -Installing openssh-server-5.3p1-94.el6.x86_64 -Installing mdadm-3.2.6-7.el6.x86_64 -Installing b43-openfwwf-5.2-4.el6.noarch -Installing dhclient-4.1.1-38.P1.el6.centos.x86_64 -Installing iscsi-initiator-utils-6.2.0.873-10.el6.x86_64 -Installing passwd-0.77-4.el6_2.2.x86_64 -Installing authconfig-6.1.12-13.el6.x86_64 -Installing grub-0.97-83.el6.x86_64 -Installing efibootmgr-0.5.4-11.el6.x86_64 -Installing wget-1.12-1.8.el6.x86_64 -Installing sudo-1.8.6p3-12.el6.x86_64 -Installing audit-2.2-2.el6.x86_64 -Installing e2fsprogs-1.41.12-18.el6.x86_64 -Installing xfsprogs-3.1.1-14.el6.x86_64 -Installing acl-2.2.49-6.el6.x86_64 -Installing attr-2.4.44-7.el6.x86_64 -Installing chef-11.8.0-1.el6.x86_64 -warning: chef-11.8.0-1.el6.x86_64: Header V4 DSA/SHA1 Signature, key ID 83ef826a: NOKEY -Installing bridge-utils-1.2-10.el6.x86_64 -Installing rootfiles-8.1-6.1.el6.noarch -*** FINISHED INSTALLING PACKAGES *** \ No newline at end of file diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/anaconda.log.template deleted file mode 100644 index 0e91936e..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/anaconda.log.template +++ /dev/null @@ -1,280 +0,0 @@ -05:50:22,531 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 - -05:50:22,531 INFO : text mode forced from cmdline -05:50:22,531 DEBUG : readNetInfo /tmp/s390net not found, early return -05:50:22,531 INFO : anaconda version 13.21.215 on x86_64 starting -05:50:22,649 DEBUG : Saving module ipv6 -05:50:22,649 DEBUG : Saving module iscsi_ibft -05:50:22,649 DEBUG : Saving module iscsi_boot_sysfs -05:50:22,649 DEBUG : Saving module pcspkr -05:50:22,649 DEBUG : Saving module edd -05:50:22,649 DEBUG : Saving module floppy -05:50:22,649 DEBUG : Saving module iscsi_tcp -05:50:22,649 DEBUG : Saving module libiscsi_tcp -05:50:22,649 DEBUG : Saving module libiscsi -05:50:22,649 DEBUG : Saving module scsi_transport_iscsi -05:50:22,649 DEBUG : Saving module squashfs -05:50:22,649 DEBUG : Saving module cramfs -05:50:22,649 DEBUG : probing buses -05:50:22,673 DEBUG : waiting for hardware to initialize -05:50:28,619 DEBUG : probing buses -05:50:28,644 DEBUG : waiting for hardware to initialize -05:50:32,015 INFO : getting kickstart file -05:50:32,022 INFO : eth0 has link, using it -05:50:32,033 INFO : doing kickstart... setting it up -05:50:32,034 DEBUG : activating device eth0 -05:50:40,048 INFO : wait_for_iface_activation (2502): device eth0 activated -05:50:40,048 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server2.1 -05:50:40,049 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server2.1 -05:50:40,134 INFO : setting up kickstart -05:50:40,134 INFO : kickstart forcing text mode -05:50:40,134 INFO : kickstartFromUrl -05:50:40,134 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:50:40,135 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:50:40,137 INFO : drive status is CDS_TRAY_OPEN -05:50:40,137 ERROR : Drive tray reports open when it should be closed -05:50:55,155 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:50:55,156 DEBUG : going to set language to en_US.UTF-8 -05:50:55,156 INFO : setting language to en_US.UTF-8 -05:50:55,169 INFO : starting STEP_METHOD -05:50:55,169 DEBUG : loaderData->method is set, adding skipMethodDialog -05:50:55,169 DEBUG : skipMethodDialog is set -05:50:55,176 INFO : starting STEP_STAGE2 -05:50:55,176 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:50:55,176 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:50:56,174 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:50:56,175 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:50:56,175 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:50:57,459 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:50:57,459 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:51:46,964 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:51:46,964 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:51:47,009 INFO : Loading SELinux policy -05:51:47,753 INFO : getting ready to spawn shell now -05:51:47,973 INFO : Running anaconda script /usr/bin/anaconda -05:51:52,842 INFO : CentOS Linux is the highest priority installclass, using it -05:51:52,887 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:51:52,888 INFO : Running kickstart %%pre script(s) -05:51:52,888 WARNING : '/bin/sh' specified as full path -05:51:54,265 INFO : All kickstart %%pre script(s) have been run -05:51:54,314 INFO : ISCSID is /usr/sbin/iscsid -05:51:54,314 INFO : no initiator set -05:51:54,416 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:51:54,425 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:51:54,425 INFO : no /etc/zfcp.conf; not configuring zfcp -05:51:59,033 INFO : created new libuser.conf at /tmp/libuser.KyLOeb with instPath="/mnt/sysimage" -05:51:59,033 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:51:59,033 INFO : Display mode = t -05:51:59,034 INFO : Default encoding = utf-8 -05:51:59,193 INFO : Detected 2016M of memory -05:51:59,193 INFO : Swap attempt of 4032M -05:51:59,528 INFO : ISCSID is /usr/sbin/iscsid -05:51:59,528 INFO : no initiator set -05:52:00,372 INFO : setting installation environment hostname to server2 -05:52:00,415 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:52:00,541 INFO : Detected 2016M of memory -05:52:00,541 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:52:00,541 INFO : Swap attempt of 3276M -05:52:00,698 WARNING : step installtype does not exist -05:52:00,699 WARNING : step confirminstall does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,702 INFO : moving (1) to step setuptime -05:52:00,702 DEBUG : setuptime is a direct step -22:52:00,703 WARNING : '/usr/sbin/hwclock' specified as full path -22:52:02,003 INFO : leaving (1) step setuptime -22:52:02,003 INFO : moving (1) to step autopartitionexecute -22:52:02,003 DEBUG : autopartitionexecute is a direct step -22:52:02,141 INFO : leaving (1) step autopartitionexecute -22:52:02,141 INFO : moving (1) to step storagedone -22:52:02,141 DEBUG : storagedone is a direct step -22:52:02,142 INFO : leaving (1) step storagedone -22:52:02,142 INFO : moving (1) to step enablefilesystems -22:52:02,142 DEBUG : enablefilesystems is a direct step -22:52:08,928 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:52:12,407 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:52:25,536 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:52:30,102 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:52:35,181 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:52:40,809 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:52:44,576 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:52:44,576 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-rootvol on /mnt/sysimage as ext3 with options defaults -22:52:45,082 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:52:45,230 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:52:45,240 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:52:45,247 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:52:45,333 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-homevol on /mnt/sysimage/home as ext3 with options defaults -22:52:45,482 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:52:45,483 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:52:45,487 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:52:45,534 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:52:45,571 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:52:45,795 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-varvol on /mnt/sysimage/var as ext3 with options defaults -22:52:45,955 INFO : leaving (1) step enablefilesystems -22:52:45,955 INFO : moving (1) to step bootloadersetup -22:52:45,956 DEBUG : bootloadersetup is a direct step -22:52:45,960 INFO : leaving (1) step bootloadersetup -22:52:45,960 INFO : moving (1) to step reposetup -22:52:45,960 DEBUG : reposetup is a direct step -22:52:47,076 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:52:47,077 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:52:47,296 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:52:47,358 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:52:47,499 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:52:47,629 INFO : leaving (1) step reposetup -22:52:47,629 INFO : moving (1) to step basepkgsel -22:52:47,629 DEBUG : basepkgsel is a direct step -22:52:47,645 WARNING : not adding Base group -22:52:48,052 INFO : leaving (1) step basepkgsel -22:52:48,053 INFO : moving (1) to step postselection -22:52:48,053 DEBUG : postselection is a direct step -22:52:48,056 INFO : selected kernel package for kernel -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:52:53,656 INFO : leaving (1) step postselection -22:52:53,657 INFO : moving (1) to step install -22:52:53,660 INFO : leaving (1) step install -22:52:53,660 INFO : moving (1) to step preinstallconfig -22:52:53,660 DEBUG : preinstallconfig is a direct step -22:52:54,102 DEBUG : isys.py:mount()- going to mount /selinux on /mnt/sysimage/selinux as selinuxfs with options defaults -22:52:54,107 DEBUG : isys.py:mount()- going to mount /proc/bus/usb on /mnt/sysimage/proc/bus/usb as usbfs with options defaults -22:52:54,117 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:52:54,117 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:52:54,130 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:52:54,130 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:52:54,134 INFO : leaving (1) step preinstallconfig -22:52:54,134 INFO : moving (1) to step installpackages -22:52:54,134 DEBUG : installpackages is a direct step -22:52:54,134 INFO : Preparing to install packages -23:16:26,925 INFO : leaving (1) step installpackages -23:16:26,926 INFO : moving (1) to step postinstallconfig -23:16:26,926 DEBUG : postinstallconfig is a direct step -23:16:26,934 DEBUG : Removing cachedir: /mnt/sysimage/var/cache/yum/anaconda-CentOS-201311291202.x86_64 -23:16:26,949 DEBUG : Removing headers and packages from /mnt/sysimage/var/cache/yum/ppa_repo -23:16:26,953 INFO : leaving (1) step postinstallconfig -23:16:26,953 INFO : moving (1) to step writeconfig -23:16:26,953 DEBUG : writeconfig is a direct step -23:16:26,953 INFO : Writing main configuration -23:16:26,958 WARNING : '/usr/sbin/authconfig' specified as full path -23:16:30,473 WARNING : '/usr/sbin/lokkit' specified as full path -23:16:30,530 WARNING : '/usr/sbin/lokkit' specified as full path -23:16:30,632 INFO : removing libuser.conf at /tmp/libuser.KyLOeb -23:16:30,633 INFO : created new libuser.conf at /tmp/libuser.KyLOeb with instPath="/mnt/sysimage" -23:16:31,956 INFO : leaving (1) step writeconfig -23:16:31,956 INFO : moving (1) to step firstboot -23:16:31,957 DEBUG : firstboot is a direct step -23:16:31,957 INFO : leaving (1) step firstboot -23:16:31,957 INFO : moving (1) to step instbootloader -23:16:31,957 DEBUG : instbootloader is a direct step -23:16:33,920 WARNING : '/sbin/grub-install' specified as full path -23:16:34,226 WARNING : '/sbin/grub' specified as full path -23:16:35,092 INFO : leaving (1) step instbootloader -23:16:35,092 INFO : moving (1) to step reipl -23:16:35,092 DEBUG : reipl is a direct step -23:16:35,093 INFO : leaving (1) step reipl -23:16:35,093 INFO : moving (1) to step writeksconfig -23:16:35,093 DEBUG : writeksconfig is a direct step -23:16:35,093 INFO : Writing autokickstart file -23:16:35,124 INFO : leaving (1) step writeksconfig -23:16:35,124 INFO : moving (1) to step setfilecon -23:16:35,125 DEBUG : setfilecon is a direct step -23:16:35,125 INFO : setting SELinux contexts for anaconda created files -23:16:36,828 INFO : leaving (1) step setfilecon -23:16:36,829 INFO : moving (1) to step copylogs -23:16:36,829 DEBUG : copylogs is a direct step -23:16:36,829 INFO : Copying anaconda logs -23:16:36,831 INFO : leaving (1) step copylogs -23:16:36,831 INFO : moving (1) to step methodcomplete -23:16:36,832 DEBUG : methodcomplete is a direct step -23:16:36,832 INFO : leaving (1) step methodcomplete -23:16:36,832 INFO : moving (1) to step postscripts -23:16:36,832 DEBUG : postscripts is a direct step -23:16:36,832 INFO : Running kickstart %%post script(s) -23:16:36,872 WARNING : '/bin/sh' specified as full path diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/install.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/install.log.template deleted file mode 100644 index 861b3a53..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/install.log.template +++ /dev/null @@ -1,212 +0,0 @@ -Installing libgcc-4.4.7-4.el6.x86_64 -warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY -Installing setup-2.8.14-20.el6_4.1.noarch -Installing filesystem-2.4.30-3.el6.x86_64 -Installing basesystem-10.0-4.el6.noarch -Installing ncurses-base-5.7-3.20090208.el6.x86_64 -Installing kernel-firmware-2.6.32-431.el6.noarch -Installing tzdata-2013g-1.el6.noarch -Installing nss-softokn-freebl-3.14.3-9.el6.x86_64 -Installing glibc-common-2.12-1.132.el6.x86_64 -Installing glibc-2.12-1.132.el6.x86_64 -Installing ncurses-libs-5.7-3.20090208.el6.x86_64 -Installing bash-4.1.2-15.el6_4.x86_64 -Installing libattr-2.4.44-7.el6.x86_64 -Installing libcap-2.16-5.5.el6.x86_64 -Installing zlib-1.2.3-29.el6.x86_64 -Installing info-4.13a-8.el6.x86_64 -Installing popt-1.13-7.el6.x86_64 -Installing chkconfig-1.3.49.3-2.el6_4.1.x86_64 -Installing audit-libs-2.2-2.el6.x86_64 -Installing libcom_err-1.41.12-18.el6.x86_64 -Installing libacl-2.2.49-6.el6.x86_64 -Installing db4-4.7.25-18.el6_4.x86_64 -Installing nspr-4.10.0-1.el6.x86_64 -Installing nss-util-3.15.1-3.el6.x86_64 -Installing readline-6.0-4.el6.x86_64 -Installing libsepol-2.0.41-4.el6.x86_64 -Installing libselinux-2.0.94-5.3.el6_4.1.x86_64 -Installing shadow-utils-4.1.4.2-13.el6.x86_64 -Installing sed-4.2.1-10.el6.x86_64 -Installing bzip2-libs-1.0.5-7.el6_0.x86_64 -Installing libuuid-2.17.2-12.14.el6.x86_64 -Installing libstdc++-4.4.7-4.el6.x86_64 -Installing libblkid-2.17.2-12.14.el6.x86_64 -Installing gawk-3.1.7-10.el6.x86_64 -Installing file-libs-5.04-15.el6.x86_64 -Installing libgpg-error-1.7-4.el6.x86_64 -Installing dbus-libs-1.2.24-7.el6_3.x86_64 -Installing libudev-147-2.51.el6.x86_64 -Installing pcre-7.8-6.el6.x86_64 -Installing grep-2.6.3-4.el6.x86_64 -Installing lua-5.1.4-4.1.el6.x86_64 -Installing sqlite-3.6.20-1.el6.x86_64 -Installing cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 -Installing libidn-1.18-2.el6.x86_64 -Installing expat-2.0.1-11.el6_2.x86_64 -Installing xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64 -Installing elfutils-libelf-0.152-1.el6.x86_64 -Installing libgcrypt-1.4.5-11.el6_4.x86_64 -Installing bzip2-1.0.5-7.el6_0.x86_64 -Installing findutils-4.4.2-6.el6.x86_64 -Installing libselinux-utils-2.0.94-5.3.el6_4.1.x86_64 -Installing checkpolicy-2.0.22-1.el6.x86_64 -Installing cpio-2.10-11.el6_3.x86_64 -Installing which-2.19-6.el6.x86_64 -Installing libxml2-2.7.6-14.el6.x86_64 -Installing libedit-2.11-4.20080712cvs.1.el6.x86_64 -Installing pth-2.0.7-9.3.el6.x86_64 -Installing tcp_wrappers-libs-7.6-57.el6.x86_64 -Installing sysvinit-tools-2.87-5.dsf.el6.x86_64 -Installing libtasn1-2.3-3.el6_2.1.x86_64 -Installing p11-kit-0.18.5-2.el6.x86_64 -Installing p11-kit-trust-0.18.5-2.el6.x86_64 -Installing ca-certificates-2013.1.94-65.0.el6.noarch -Installing device-mapper-persistent-data-0.2.8-2.el6.x86_64 -Installing nss-softokn-3.14.3-9.el6.x86_64 -Installing libnih-1.0.1-7.el6.x86_64 -Installing upstart-0.6.5-12.el6_4.1.x86_64 -Installing file-5.04-15.el6.x86_64 -Installing gmp-4.3.1-7.el6_2.2.x86_64 -Installing libusb-0.1.12-23.el6.x86_64 -Installing MAKEDEV-3.24-6.el6.x86_64 -Installing libutempter-1.1.5-4.1.el6.x86_64 -Installing psmisc-22.6-15.el6_0.1.x86_64 -Installing net-tools-1.60-110.el6_2.x86_64 -Installing vim-minimal-7.2.411-1.8.el6.x86_64 -Installing tar-1.23-11.el6.x86_64 -Installing procps-3.2.8-25.el6.x86_64 -Installing db4-utils-4.7.25-18.el6_4.x86_64 -Installing e2fsprogs-libs-1.41.12-18.el6.x86_64 -Installing libss-1.41.12-18.el6.x86_64 -Installing pinentry-0.7.6-6.el6.x86_64 -Installing binutils-2.20.51.0.2-5.36.el6.x86_64 -Installing m4-1.4.13-5.el6.x86_64 -Installing diffutils-2.8.1-28.el6.x86_64 -Installing make-3.81-20.el6.x86_64 -Installing dash-0.5.5.1-4.el6.x86_64 -Installing ncurses-5.7-3.20090208.el6.x86_64 -Installing groff-1.18.1.4-21.el6.x86_64 -Installing less-436-10.el6.x86_64 -Installing coreutils-libs-8.4-31.el6.x86_64 -Installing gzip-1.3.12-19.el6_4.x86_64 -Installing cracklib-2.8.16-4.el6.x86_64 -Installing cracklib-dicts-2.8.16-4.el6.x86_64 -Installing coreutils-8.4-31.el6.x86_64 -Installing pam-1.1.1-17.el6.x86_64 -Installing module-init-tools-3.9-21.el6_4.x86_64 -Installing hwdata-0.233-9.1.el6.noarch -Installing redhat-logos-60.0.14-12.el6.centos.noarch -Installing plymouth-scripts-0.8.3-27.el6.centos.x86_64 -Installing libpciaccess-0.13.1-2.el6.x86_64 -Installing nss-3.15.1-15.el6.x86_64 -Installing nss-sysinit-3.15.1-15.el6.x86_64 -Installing nss-tools-3.15.1-15.el6.x86_64 -Installing openldap-2.4.23-32.el6_4.1.x86_64 -Installing logrotate-3.7.8-17.el6.x86_64 -Installing gdbm-1.8.0-36.el6.x86_64 -Installing mingetty-1.08-5.el6.x86_64 -Installing keyutils-libs-1.4-4.el6.x86_64 -Installing krb5-libs-1.10.3-10.el6_4.6.x86_64 -Installing openssl-1.0.1e-15.el6.x86_64 -Installing libssh2-1.4.2-1.el6.x86_64 -Installing libcurl-7.19.7-37.el6_4.x86_64 -Installing gnupg2-2.0.14-6.el6_4.x86_64 -Installing gpgme-1.1.8-3.el6.x86_64 -Installing curl-7.19.7-37.el6_4.x86_64 -Installing rpm-libs-4.8.0-37.el6.x86_64 -Installing rpm-4.8.0-37.el6.x86_64 -Installing fipscheck-lib-1.2.0-7.el6.x86_64 -Installing fipscheck-1.2.0-7.el6.x86_64 -Installing mysql-libs-5.1.71-1.el6.x86_64 -Installing ethtool-3.5-1.el6.x86_64 -Installing pciutils-libs-3.1.10-2.el6.x86_64 -Installing plymouth-core-libs-0.8.3-27.el6.centos.x86_64 -Installing libcap-ng-0.6.4-3.el6_0.1.x86_64 -Installing libffi-3.0.5-3.2.el6.x86_64 -Installing python-2.6.6-51.el6.x86_64 -Installing python-libs-2.6.6-51.el6.x86_64 -Installing python-pycurl-7.19.0-8.el6.x86_64 -Installing python-urlgrabber-3.9.1-9.el6.noarch -Installing pygpgme-0.1-18.20090824bzr68.el6.x86_64 -Installing rpm-python-4.8.0-37.el6.x86_64 -Installing python-iniparse-0.3.1-2.1.el6.noarch -Installing slang-2.2.1-1.el6.x86_64 -Installing newt-0.52.11-3.el6.x86_64 -Installing newt-python-0.52.11-3.el6.x86_64 -Installing ustr-1.0.4-9.1.el6.x86_64 -Installing libsemanage-2.0.43-4.2.el6.x86_64 -Installing libaio-0.3.107-10.el6.x86_64 -Installing pkgconfig-0.23-9.1.el6.x86_64 -Installing gamin-0.1.10-9.el6.x86_64 -Installing glib2-2.26.1-3.el6.x86_64 -Installing shared-mime-info-0.70-4.el6.x86_64 -Installing libuser-0.56.13-5.el6.x86_64 -Installing grubby-7.0.15-5.el6.x86_64 -Installing yum-metadata-parser-1.1.2-16.el6.x86_64 -Installing yum-plugin-fastestmirror-1.1.30-14.el6.noarch -Installing yum-3.2.29-40.el6.centos.noarch -Installing dbus-glib-0.86-6.el6.x86_64 -Installing dhcp-common-4.1.1-38.P1.el6.centos.x86_64 -Installing centos-release-6-5.el6.centos.11.1.x86_64 -Installing policycoreutils-2.0.83-19.39.el6.x86_64 -Installing iptables-1.4.7-11.el6.x86_64 -Installing iproute-2.6.32-31.el6.x86_64 -Installing iputils-20071127-17.el6_4.2.x86_64 -Installing util-linux-ng-2.17.2-12.14.el6.x86_64 -Installing initscripts-9.03.40-2.el6.centos.x86_64 -Installing udev-147-2.51.el6.x86_64 -Installing device-mapper-libs-1.02.79-8.el6.x86_64 -Installing device-mapper-1.02.79-8.el6.x86_64 -Installing device-mapper-event-libs-1.02.79-8.el6.x86_64 -Installing openssh-5.3p1-94.el6.x86_64 -Installing device-mapper-event-1.02.79-8.el6.x86_64 -Installing lvm2-libs-2.02.100-8.el6.x86_64 -Installing cryptsetup-luks-libs-1.2.0-7.el6.x86_64 -Installing device-mapper-multipath-libs-0.4.9-72.el6.x86_64 -Installing kpartx-0.4.9-72.el6.x86_64 -Installing libdrm-2.4.45-2.el6.x86_64 -Installing plymouth-0.8.3-27.el6.centos.x86_64 -Installing rsyslog-5.8.10-8.el6.x86_64 -Installing cyrus-sasl-2.1.23-13.el6_3.1.x86_64 -Installing postfix-2.6.6-2.2.el6_1.x86_64 -Installing cronie-anacron-1.4.4-12.el6.x86_64 -Installing cronie-1.4.4-12.el6.x86_64 -Installing crontabs-1.10-33.el6.noarch -Installing ntpdate-4.2.6p5-1.el6.centos.x86_64 -Installing iptables-ipv6-1.4.7-11.el6.x86_64 -Installing selinux-policy-3.7.19-231.el6.noarch -Installing kbd-misc-1.15-11.el6.noarch -Installing kbd-1.15-11.el6.x86_64 -Installing dracut-004-335.el6.noarch -Installing dracut-kernel-004-335.el6.noarch -Installing kernel-2.6.32-431.el6.x86_64 -Installing fuse-2.8.3-4.el6.x86_64 -Installing selinux-policy-targeted-3.7.19-231.el6.noarch -Installing system-config-firewall-base-1.2.27-5.el6.noarch -Installing ntp-4.2.6p5-1.el6.centos.x86_64 -Installing device-mapper-multipath-0.4.9-72.el6.x86_64 -Installing cryptsetup-luks-1.2.0-7.el6.x86_64 -Installing lvm2-2.02.100-8.el6.x86_64 -Installing openssh-clients-5.3p1-94.el6.x86_64 -Installing openssh-server-5.3p1-94.el6.x86_64 -Installing mdadm-3.2.6-7.el6.x86_64 -Installing b43-openfwwf-5.2-4.el6.noarch -Installing dhclient-4.1.1-38.P1.el6.centos.x86_64 -Installing iscsi-initiator-utils-6.2.0.873-10.el6.x86_64 -Installing passwd-0.77-4.el6_2.2.x86_64 -Installing authconfig-6.1.12-13.el6.x86_64 -Installing grub-0.97-83.el6.x86_64 -Installing efibootmgr-0.5.4-11.el6.x86_64 -Installing wget-1.12-1.8.el6.x86_64 -Installing sudo-1.8.6p3-12.el6.x86_64 -Installing audit-2.2-2.el6.x86_64 -Installing e2fsprogs-1.41.12-18.el6.x86_64 -Installing xfsprogs-3.1.1-14.el6.x86_64 -Installing acl-2.2.49-6.el6.x86_64 -Installing attr-2.4.44-7.el6.x86_64 -Installing chef-11.8.0-1.el6.x86_64 -warning: chef-11.8.0-1.el6.x86_64: Header V4 DSA/SHA1 Signature, key ID 83ef826a: NOKEY -Installing bridge-utils-1.2-10.el6.x86_64 -Installing rootfiles-8.1-6.1.el6.noarch -*** FINISHED INSTALLING PACKAGES *** \ No newline at end of file diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/sys.log.template deleted file mode 100644 index 1fbb5602..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_3/server2.1/sys.log.template +++ /dev/null @@ -1,1628 +0,0 @@ -05:50:20,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:50:20,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:50:20,517 INFO kernel:Initializing cgroup subsys cpuset -05:50:20,517 INFO kernel:Initializing cgroup subsys cpu -05:50:20,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:50:20,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,517 INFO kernel:KERNEL supported cpus: -05:50:20,517 INFO kernel: Intel GenuineIntel -05:50:20,517 INFO kernel: AMD AuthenticAMD -05:50:20,517 INFO kernel: Centaur CentaurHauls -05:50:20,517 INFO kernel:Disabled fast string operations -05:50:20,517 INFO kernel:BIOS-provided physical RAM map: -05:50:20,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:50:20,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:50:20,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:50:20,517 INFO kernel:DMI present. -05:50:20,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:50:20,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:50:20,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:50:20,517 INFO kernel:Hypervisor detected: VMware -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:50:20,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:50:20,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:50:20,517 DEBUG kernel:MTRR default type: uncachable -05:50:20,517 DEBUG kernel:MTRR fixed ranges enabled: -05:50:20,517 DEBUG kernel: 00000-9FFFF write-back -05:50:20,517 DEBUG kernel: A0000-BFFFF uncachable -05:50:20,517 DEBUG kernel: C0000-CFFFF write-protect -05:50:20,517 DEBUG kernel: D0000-EFFFF uncachable -05:50:20,517 DEBUG kernel: F0000-FFFFF write-protect -05:50:20,517 DEBUG kernel:MTRR variable ranges enabled: -05:50:20,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:50:20,517 DEBUG kernel: 1 disabled -05:50:20,517 DEBUG kernel: 2 disabled -05:50:20,517 DEBUG kernel: 3 disabled -05:50:20,517 DEBUG kernel: 4 disabled -05:50:20,517 DEBUG kernel: 5 disabled -05:50:20,517 DEBUG kernel: 6 disabled -05:50:20,517 DEBUG kernel: 7 disabled -05:50:20,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:50:20,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:50:20,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:50:20,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:50:20,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:50:20,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:50:20,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:50:20,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:50:20,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:50:20,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:50:20,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:50:20,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:50:20,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:50:20,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,517 INFO kernel:Setting APIC routing to flat. -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:50:20,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:50:20,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:50:20,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:50:20,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:50:20,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:50:20,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:50:20,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:50:20,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:50:20,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:50:20,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:50:20,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:50:20,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:50:20,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:50:20,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:50:20,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:50:20,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:50:20,517 WARNING kernel:Zone PFN ranges: -05:50:20,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:50:20,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:50:20,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:50:20,517 WARNING kernel:Movable zone start PFN for each node -05:50:20,517 WARNING kernel:early_node_map[3] active PFN ranges -05:50:20,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:50:20,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:50:20,520 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:50:20,520 DEBUG kernel:On node 0 totalpages: 524159 -05:50:20,520 DEBUG kernel: DMA zone: 56 pages used for memmap -05:50:20,520 DEBUG kernel: DMA zone: 101 pages reserved -05:50:20,520 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:50:20,520 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:50:20,520 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:50:20,520 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:50:20,520 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,520 INFO kernel:Setting APIC routing to flat. -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:50:20,521 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:50:20,521 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:50:20,521 DEBUG kernel:ACPI: IRQ0 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ2 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ9 used by override. -05:50:20,521 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:50:20,521 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:50:20,521 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:50:20,521 DEBUG kernel:nr_irqs_gsi: 24 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:50:20,521 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:50:20,521 INFO kernel:Booting paravirtualized kernel on bare hardware -05:50:20,521 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:50:20,521 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:50:20,521 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:50:20,521 INFO kernel:pcpu-alloc: [0] 0 1 -05:50:20,521 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:50:20,521 WARNING kernel:Policy zone: DMA32 -05:50:20,521 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,521 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:50:20,521 INFO kernel:Checking aperture... -05:50:20,521 INFO kernel:No AGP bridge found -05:50:20,521 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:50:20,521 INFO kernel:Hierarchical RCU implementation. -05:50:20,521 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:50:20,521 INFO kernel:Extended CMOS year: 2000 -05:50:20,521 WARNING kernel:Console: colour VGA+ 80x25 -05:50:20,521 INFO kernel:console [tty0] enabled -05:50:20,521 INFO kernel:allocated 8388608 bytes of page_cgroup -05:50:20,521 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:50:20,521 DEBUG kernel:hpet clockevent registered -05:50:20,521 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:50:20,521 WARNING kernel:Detected 2400.085 MHz processor. -05:50:20,521 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:50:20,521 INFO kernel:pid_max: default: 32768 minimum: 301 -05:50:20,521 INFO kernel:Security Framework initialized -05:50:20,521 INFO kernel:SELinux: Initializing. -05:50:20,521 DEBUG kernel:SELinux: Starting in permissive mode -05:50:20,521 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:50:20,521 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:50:20,521 WARNING kernel:Mount-cache hash table entries: 256 -05:50:20,521 INFO kernel:Initializing cgroup subsys ns -05:50:20,521 INFO kernel:Initializing cgroup subsys cpuacct -05:50:20,521 INFO kernel:Initializing cgroup subsys memory -05:50:20,521 INFO kernel:Initializing cgroup subsys devices -05:50:20,521 INFO kernel:Initializing cgroup subsys freezer -05:50:20,521 INFO kernel:Initializing cgroup subsys net_cls -05:50:20,521 INFO kernel:Initializing cgroup subsys blkio -05:50:20,521 INFO kernel:Initializing cgroup subsys perf_event -05:50:20,521 INFO kernel:Initializing cgroup subsys net_prio -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:CPU: Physical Processor ID: 0 -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:alternatives: switching to unfair spinlock -05:50:20,521 INFO kernel:ACPI: Core revision 20090903 -05:50:20,521 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:50:20,521 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:50:20,521 INFO kernel:APIC routing finalized to flat. -05:50:20,521 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:50:20,521 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:50:20,521 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:50:20,521 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:50:20,521 INFO kernel:... version: 3 -05:50:20,521 INFO kernel:... bit width: 48 -05:50:20,521 INFO kernel:... generic registers: 4 -05:50:20,521 INFO kernel:... value mask: 0000ffffffffffff -05:50:20,521 INFO kernel:... max period: 000000007fffffff -05:50:20,521 INFO kernel:... fixed-purpose events: 3 -05:50:20,521 INFO kernel:... event mask: 000000070000000f -05:50:20,521 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:50:20,521 INFO kernel:Booting Node 0, Processors #1 Ok. -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:50:20,521 INFO kernel:Brought up 2 CPUs -05:50:20,521 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:50:20,521 DEBUG kernel:sizeof(vma)=200 bytes -05:50:20,521 DEBUG kernel:sizeof(page)=56 bytes -05:50:20,521 DEBUG kernel:sizeof(inode)=592 bytes -05:50:20,521 DEBUG kernel:sizeof(dentry)=192 bytes -05:50:20,521 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:50:20,521 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:50:20,521 DEBUG kernel:sizeof(skbuff)=232 bytes -05:50:20,521 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:50:20,521 INFO kernel:devtmpfs: initialized -05:50:20,521 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:50:20,521 INFO kernel:regulator: core version 0.5 -05:50:20,521 INFO kernel:NET: Registered protocol family 16 -05:50:20,521 INFO kernel:ACPI: bus type pci registered -05:50:20,521 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:50:20,521 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:50:20,521 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:50:20,521 INFO kernel:PCI: Using configuration type 1 for base access -05:50:20,521 WARNING kernel:bio: create slab at 0 -05:50:20,521 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:50:20,521 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:50:20,521 INFO kernel:ACPI: Interpreter enabled -05:50:20,521 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:50:20,521 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:50:20,521 INFO kernel:ACPI: No dock devices found. -05:50:20,521 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:50:20,521 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:50:20,521 INFO kernel:PCI host bridge to bus 0000:00 -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:50:20,521 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:50:20,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,522 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:50:20,522 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:50:20,522 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:50:20,522 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:50:20,522 INFO kernel:vgaarb: loaded -05:50:20,522 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:50:20,522 NOTICE kernel:SCSI subsystem initialized -05:50:20,522 DEBUG kernel:libata version 3.00 loaded. -05:50:20,522 INFO kernel:usbcore: registered new interface driver usbfs -05:50:20,522 INFO kernel:usbcore: registered new interface driver hub -05:50:20,522 INFO kernel:usbcore: registered new device driver usb -05:50:20,522 INFO kernel:PCI: Using ACPI for IRQ routing -05:50:20,522 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:50:20,522 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:50:20,522 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:50:20,522 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:50:20,522 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:50:20,522 INFO kernel:NetLabel: Initializing -05:50:20,522 INFO kernel:NetLabel: domain hash size = 128 -05:50:20,522 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:50:20,522 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:50:20,522 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:50:20,522 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:50:20,522 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:50:20,522 INFO kernel:Switching to clocksource hpet -05:50:20,522 INFO kernel:pnp: PnP ACPI init -05:50:20,522 INFO kernel:ACPI: bus type pnp registered -05:50:20,522 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:50:20,522 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0080] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:50:20,522 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:50:20,522 DEBUG kernel:pnp 00:02: [dma 4] -05:50:20,522 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:50:20,522 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:50:20,522 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:50:20,522 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:50:20,522 DEBUG kernel:pnp 00:04: [irq 8] -05:50:20,522 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:50:20,522 DEBUG kernel:pnp 00:05: [io 0x0061] -05:50:20,522 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0060] -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0064] -05:50:20,522 DEBUG kernel:pnp 00:06: [irq 1] -05:50:20,522 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:50:20,522 DEBUG kernel:pnp 00:07: [irq 12] -05:50:20,522 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:50:20,522 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:50:20,522 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:50:20,522 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:50:20,522 DEBUG kernel:pnp 00:09: [irq 7] -05:50:20,522 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:50:20,522 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:50:20,522 DEBUG kernel:pnp 00:0a: [irq 4] -05:50:20,522 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:50:20,522 DEBUG kernel:pnp 00:0b: [irq 3] -05:50:20,522 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:50:20,522 DEBUG kernel:pnp 00:0c: [irq 6] -05:50:20,522 DEBUG kernel:pnp 00:0c: [dma 2] -05:50:20,522 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 INFO kernel:pnp: PnP ACPI: found 14 devices -05:50:20,522 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:50:20,522 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:50:20,522 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:50:20,522 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:50:20,522 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:50:20,522 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:50:20,523 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,524 INFO kernel:NET: Registered protocol family 2 -05:50:20,524 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:50:20,524 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:50:20,524 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:50:20,524 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:50:20,524 INFO kernel:TCP reno registered -05:50:20,524 INFO kernel:NET: Registered protocol family 1 -05:50:20,524 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:50:20,524 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:50:20,524 INFO kernel:Trying to unpack rootfs image as initramfs... -05:50:20,524 INFO kernel:Freeing initrd memory: 32601k freed -05:50:20,524 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:50:20,524 INFO kernel:audit: initializing netlink socket (disabled) -05:50:20,524 NOTICE kernel:type=2000 audit(1021096218.805:1): initialized -05:50:20,524 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:50:20,524 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:50:20,524 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:50:20,524 INFO kernel:msgmni has been set to 4005 -05:50:20,526 DEBUG kernel:SELinux: Registering netfilter hooks -05:50:20,526 INFO kernel:alg: No test for stdrng (krng) -05:50:20,526 WARNING kernel:ksign: Installing public key data -05:50:20,526 WARNING kernel:Loading keyring -05:50:20,526 WARNING kernel:- Added public key 8A44323FB303E068 -05:50:20,526 WARNING kernel: - key was been created 363988241 seconds in future -05:50:20,526 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:50:20,526 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:50:20,526 INFO kernel:io scheduler noop registered -05:50:20,526 INFO kernel:io scheduler anticipatory registered -05:50:20,526 INFO kernel:io scheduler deadline registered -05:50:20,526 INFO kernel:io scheduler cfq registered (default) -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:50:20,526 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:50:20,526 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:50:20,526 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:50:20,526 INFO kernel:acpiphp: Slot [32] registered -05:50:20,526 INFO kernel:acpiphp: Slot [33] registered -05:50:20,526 INFO kernel:acpiphp: Slot [34] registered -05:50:20,526 INFO kernel:acpiphp: Slot [35] registered -05:50:20,526 INFO kernel:acpiphp: Slot [36] registered -05:50:20,526 INFO kernel:acpiphp: Slot [37] registered -05:50:20,526 INFO kernel:acpiphp: Slot [38] registered -05:50:20,527 INFO kernel:acpiphp: Slot [39] registered -05:50:20,527 INFO kernel:acpiphp: Slot [40] registered -05:50:20,527 INFO kernel:acpiphp: Slot [41] registered -05:50:20,527 INFO kernel:acpiphp: Slot [42] registered -05:50:20,527 INFO kernel:acpiphp: Slot [43] registered -05:50:20,527 INFO kernel:acpiphp: Slot [44] registered -05:50:20,527 INFO kernel:acpiphp: Slot [45] registered -05:50:20,527 INFO kernel:acpiphp: Slot [46] registered -05:50:20,527 INFO kernel:acpiphp: Slot [47] registered -05:50:20,527 INFO kernel:acpiphp: Slot [48] registered -05:50:20,527 INFO kernel:acpiphp: Slot [49] registered -05:50:20,527 INFO kernel:acpiphp: Slot [50] registered -05:50:20,527 INFO kernel:acpiphp: Slot [51] registered -05:50:20,527 INFO kernel:acpiphp: Slot [52] registered -05:50:20,527 INFO kernel:acpiphp: Slot [53] registered -05:50:20,527 INFO kernel:acpiphp: Slot [54] registered -05:50:20,527 INFO kernel:acpiphp: Slot [55] registered -05:50:20,527 INFO kernel:acpiphp: Slot [56] registered -05:50:20,527 INFO kernel:acpiphp: Slot [57] registered -05:50:20,527 INFO kernel:acpiphp: Slot [58] registered -05:50:20,527 INFO kernel:acpiphp: Slot [59] registered -05:50:20,527 INFO kernel:acpiphp: Slot [60] registered -05:50:20,527 INFO kernel:acpiphp: Slot [61] registered -05:50:20,527 INFO kernel:acpiphp: Slot [62] registered -05:50:20,527 INFO kernel:acpiphp: Slot [63] registered -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:50:20,527 INFO kernel:ipmi message handler version 39.2 -05:50:20,527 INFO kernel:IPMI System Interface driver. -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:50:20,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:50:20,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:50:20,527 INFO kernel:ACPI: Power Button [PWRF] -05:50:20,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:50:20,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:50:20,527 INFO kernel:GHES: HEST is not enabled! -05:50:20,527 INFO kernel:Non-volatile memory driver v1.3 -05:50:20,527 INFO kernel:Linux agpgart interface v0.103 -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:50:20,527 INFO kernel:crash memory driver: version 1.1 -05:50:20,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:50:20,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:brd: module loaded -05:50:20,527 INFO kernel:loop: module loaded -05:50:20,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:50:20,527 INFO kernel:Fixed MDIO Bus: probed -05:50:20,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:50:20,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:50:20,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:50:20,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:50:20,527 INFO kernel:Refined TSC clocksource calibration: 2400.081 MHz. -05:50:20,527 INFO kernel:Switching to clocksource tsc -05:50:20,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:50:20,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:50:20,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:50:20,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:50:20,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:50:20,527 INFO kernel:cpuidle: using governor ladder -05:50:20,527 INFO kernel:cpuidle: using governor menu -05:50:20,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:50:20,527 INFO kernel:usbcore: registered new interface driver hiddev -05:50:20,527 INFO kernel:usbcore: registered new interface driver usbhid -05:50:20,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:50:20,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:50:20,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:50:20,527 INFO kernel:TCP cubic registered -05:50:20,527 INFO kernel:Initializing XFRM netlink socket -05:50:20,527 INFO kernel:NET: Registered protocol family 17 -05:50:20,527 WARNING kernel:registered taskstats version 1 -05:50:20,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:50:20,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:50:20 UTC (1021096220) -05:50:20,527 INFO kernel:Initalizing network drop monitor service -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:50:20,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:50:20,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:50:22,553 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:50:22,564 INFO kernel:Loading iSCSI transport class v2.0-870. -05:50:22,583 NOTICE kernel:iscsi: registered transport (tcp) -05:50:22,589 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:50:22,600 INFO kernel:FDC 0 is a post-1991 82077 -05:50:22,604 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:50:22,608 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:50:22,615 INFO kernel:No iBFT detected. -05:50:22,648 INFO kernel:NET: Registered protocol family 10 -05:50:22,648 INFO kernel:lo: Disabled Privacy Extensions -05:50:22,720 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:50:22,720 INFO kernel:scsi0 : ata_piix -05:50:22,721 INFO kernel:scsi1 : ata_piix -05:50:22,721 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:50:22,721 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:50:22,731 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:22,907 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:50:22,913 INFO kernel:ata2.00: configured for UDMA/33 -05:50:22,913 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:50:22,936 INFO kernel:Fusion MPT base driver 3.04.20 -05:50:22,936 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:50:22,947 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:50:22,947 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:50:22,947 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:22,947 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:22,947 INFO kernel:mptbase: ioc0: Initiating bringup -05:50:22,966 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:50:23,007 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:50:23,035 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,035 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:50:23,035 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,036 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,036 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:50:23,037 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,061 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:50:23,061 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:50:23,061 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:50:23,072 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:50:23,072 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:50:23,072 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:50:23,072 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,072 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:50:23,072 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:b8 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:50:23,422 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:50:23,422 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,422 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:50:23,422 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:c2 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:50:23,766 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:50:23,766 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,766 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:50:23,766 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:cc -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:50:24,116 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:24,116 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:d6 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 INFO kernel: sda: -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 INFO kernel: sdb: -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,502 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:50:24,505 WARNING kernel: sda1 sda2 -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,531 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:50:24,537 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:50:24,538 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:50:24,538 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:50:28,728 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:31,010 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:50:31,010 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:50:31,012 INFO NetworkManager: trying to start the modem manager... -05:50:31,016 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:50:31,016 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:50:31,017 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:50:31,018 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:50:31,023 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:50:31,025 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: Networking is enabled by state file -05:50:31,044 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:50:31,044 INFO kernel:All bugs added by David S. Miller -05:50:31,045 INFO NetworkManager: (eth0): carrier is OFF -05:50:31,045 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:50:31,045 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:50:31,045 INFO NetworkManager: (eth0): now managed -05:50:31,045 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:50:31,045 INFO NetworkManager: (eth0): bringing up device. -05:50:31,051 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,055 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:50:31,056 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,056 INFO NetworkManager: (eth0): preparing device. -05:50:31,056 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:50:31,057 INFO NetworkManager: (eth1): carrier is OFF -05:50:31,058 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:50:31,058 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:50:31,058 INFO NetworkManager: (eth1): now managed -05:50:31,058 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:50:31,058 INFO NetworkManager: (eth1): bringing up device. -05:50:31,063 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,068 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:50:31,068 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,068 INFO NetworkManager: (eth1): preparing device. -05:50:31,068 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:50:31,069 INFO NetworkManager: (eth2): carrier is OFF -05:50:31,070 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:50:31,070 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:50:31,070 INFO NetworkManager: (eth2): now managed -05:50:31,070 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:50:31,070 INFO NetworkManager: (eth2): bringing up device. -05:50:31,076 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,080 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:50:31,080 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,080 INFO NetworkManager: (eth2): preparing device. -05:50:31,080 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:50:31,081 INFO NetworkManager: (eth3): carrier is OFF -05:50:31,082 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:50:31,082 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:50:31,082 INFO NetworkManager: (eth3): now managed -05:50:31,082 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:50:31,082 INFO NetworkManager: (eth3): bringing up device. -05:50:31,086 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,091 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:50:31,091 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,091 INFO NetworkManager: (eth3): preparing device. -05:50:31,091 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:50:31,093 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,095 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,096 INFO NetworkManager: Trying to start the supplicant... -05:50:31,097 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:50:31,098 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:50:31,104 INFO NetworkManager: wpa_supplicant started -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:33,054 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:50:33,057 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:50:33,057 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:50:33,058 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:50:33,060 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:50:33,062 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:50:33,062 INFO NetworkManager: dhclient started with pid 654 -05:50:33,063 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:50:33,063 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:50:33,063 INFO dhclient: All rights reserved. -05:50:33,063 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:50:33,063 INFO dhclient: -05:50:33,063 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:50:33,066 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:50:33,068 INFO dhclient: Listening on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on Socket/fallback -05:50:37,004 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x3433ec2c) -05:50:37,048 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:50:37,048 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x3433ec2c) -05:50:38,084 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x3433ec2c) -05:50:38,087 INFO dhclient: bound to 10.145.88.104 -- renewal in 10764 seconds. -05:50:38,087 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:50:38,087 INFO NetworkManager: address 10.145.88.104 -05:50:38,087 INFO NetworkManager: prefix 23 (255.255.254.0) -05:50:38,087 INFO NetworkManager: gateway 10.145.88.1 -05:50:38,087 INFO NetworkManager: hostname 'server2' -05:50:38,087 INFO NetworkManager: nameserver '10.145.88.211' -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:50:39,089 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:50:39,090 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:50:39,090 INFO NetworkManager: Setting system hostname to 'server2' (from DHCPv4) -05:50:39,091 INFO NetworkManager: Activation (eth0) successful, device activated. -05:50:39,092 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:46,967 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/nm-dhcp-client.conf, line 1, column 0: no element found -05:51:46,969 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/org.freedesktop.PolicyKit1.conf, line 1, column 0: no element found -05:51:46,976 NOTICE dbus-daemon: [system] Reloaded configuration -05:51:47,135 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,214 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,702 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:51:47,702 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:51:47,706 DEBUG kernel:SELinux: Completing initialization. -05:51:47,706 DEBUG kernel:SELinux: Setting up existing superblocks. -05:51:47,706 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:51:47,709 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:51:47,751 NOTICE kernel:type=1403 audit(1021096307.739:2): policy loaded auid=4294967295 ses=4294967295 -05:51:47,786 INFO kernel:md: raid0 personality registered for level 0 -05:51:47,793 INFO kernel:md: raid1 personality registered for level 1 -05:51:47,797 INFO kernel:async_tx: api initialized (async) -05:51:47,802 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:51:47,810 INFO kernel: generic_sse: 9176.000 MB/sec -05:51:47,810 INFO kernel:xor: using function: generic_sse (9176.000 MB/sec) -05:51:47,834 WARNING kernel:raid6: sse2x1 4742 MB/s -05:51:47,851 WARNING kernel:raid6: sse2x2 7117 MB/s -05:51:47,868 WARNING kernel:raid6: sse2x4 7660 MB/s -05:51:47,868 WARNING kernel:raid6: using algorithm sse2x4 (7660 MB/s) -05:51:47,868 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:51:47,882 INFO kernel:md: raid6 personality registered for level 6 -05:51:47,882 INFO kernel:md: raid5 personality registered for level 5 -05:51:47,882 INFO kernel:md: raid4 personality registered for level 4 -05:51:47,893 INFO kernel:md: raid10 personality registered for level 10 -05:51:47,896 INFO kernel:md: linear personality registered for level -1 -05:51:47,909 INFO kernel:device-mapper: uevent: version 1.0.3 -05:51:47,909 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:51:47,940 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:51:47,944 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:52:05,224 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:05,224 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:05,225 INFO kernel: sda: sda1 -05:52:06,013 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,013 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,023 INFO kernel: sda: -05:52:06,365 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,365 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,415 INFO kernel: sda: sda1 -05:52:09,171 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:09,171 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:09,171 INFO kernel: sda: sda1 sda2 -05:52:11,280 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:11,280 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:11,280 INFO kernel: sda: sda1 sda2 sda3 -05:52:44,551 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:52:45,044 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,053 INFO kernel:EXT3-fs (dm-0): using internal journal -05:52:45,053 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:52:45,053 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:52:45,103 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,170 INFO kernel:EXT3-fs (sda1): using internal journal -05:52:45,170 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:52:45,170 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:52:45,250 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:45,384 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,439 INFO kernel:EXT3-fs (dm-1): using internal journal -05:52:45,439 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:52:45,439 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:52:45,604 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,648 INFO kernel:EXT3-fs (dm-2): using internal journal -05:52:45,648 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:52:45,648 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:52:45,851 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,875 INFO kernel:EXT3-fs (dm-3): using internal journal -05:52:45,875 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:52:45,875 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:52:54,110 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:54,124 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,143 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:55,145 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -06:11:24,179 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,305 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,821 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:24,821 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/anaconda.log.template deleted file mode 100644 index f04da66a..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/anaconda.log.template +++ /dev/null @@ -1,286 +0,0 @@ -05:51:20,534 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af - -05:51:20,534 INFO : text mode forced from cmdline -05:51:20,534 DEBUG : readNetInfo /tmp/s390net not found, early return -05:51:20,534 INFO : anaconda version 13.21.215 on x86_64 starting -05:51:20,656 DEBUG : Saving module ipv6 -05:51:20,656 DEBUG : Saving module iscsi_ibft -05:51:20,656 DEBUG : Saving module iscsi_boot_sysfs -05:51:20,656 DEBUG : Saving module pcspkr -05:51:20,656 DEBUG : Saving module edd -05:51:20,656 DEBUG : Saving module floppy -05:51:20,656 DEBUG : Saving module iscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi -05:51:20,656 DEBUG : Saving module scsi_transport_iscsi -05:51:20,656 DEBUG : Saving module squashfs -05:51:20,656 DEBUG : Saving module cramfs -05:51:20,656 DEBUG : probing buses -05:51:20,693 DEBUG : waiting for hardware to initialize -05:51:27,902 DEBUG : probing buses -05:51:27,925 DEBUG : waiting for hardware to initialize -05:51:47,187 INFO : getting kickstart file -05:51:47,196 INFO : eth0 has link, using it -05:51:47,208 INFO : doing kickstart... setting it up -05:51:47,208 DEBUG : activating device eth0 -05:51:52,221 INFO : wait_for_iface_activation (2502): device eth0 activated -05:51:52,222 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,223 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,611 INFO : setting up kickstart -05:51:52,611 INFO : kickstart forcing text mode -05:51:52,611 INFO : kickstartFromUrl -05:51:52,612 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:51:52,612 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:51:52,616 INFO : drive status is CDS_TRAY_OPEN -05:51:52,616 ERROR : Drive tray reports open when it should be closed -05:52:07,635 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,636 DEBUG : going to set language to en_US.UTF-8 -05:52:07,636 INFO : setting language to en_US.UTF-8 -05:52:07,654 INFO : starting STEP_METHOD -05:52:07,654 DEBUG : loaderData->method is set, adding skipMethodDialog -05:52:07,654 DEBUG : skipMethodDialog is set -05:52:07,663 INFO : starting STEP_STAGE2 -05:52:07,663 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,663 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:52:07,780 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:52:07,780 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:52:07,780 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:52:07,814 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:52:07,815 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,354 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:52:47,354 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,403 INFO : Loading SELinux policy -05:52:48,130 INFO : getting ready to spawn shell now -05:52:48,359 INFO : Running anaconda script /usr/bin/anaconda -05:52:54,804 INFO : CentOS Linux is the highest priority installclass, using it -05:52:54,867 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:52:54,868 INFO : Running kickstart %%pre script(s) -05:52:54,868 WARNING : '/bin/sh' specified as full path -05:52:56,966 INFO : All kickstart %%pre script(s) have been run -05:52:57,017 INFO : ISCSID is /usr/sbin/iscsid -05:52:57,017 INFO : no initiator set -05:52:57,128 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:52:57,137 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:52:57,138 INFO : no /etc/zfcp.conf; not configuring zfcp -05:53:00,902 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -05:53:00,903 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:53:00,903 INFO : Display mode = t -05:53:00,903 INFO : Default encoding = utf-8 -05:53:01,064 INFO : Detected 2016M of memory -05:53:01,064 INFO : Swap attempt of 4032M -05:53:01,398 INFO : ISCSID is /usr/sbin/iscsid -05:53:01,399 INFO : no initiator set -05:53:05,059 INFO : setting installation environment hostname to server1 -05:53:05,104 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:53:05,276 INFO : Detected 2016M of memory -05:53:05,277 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:53:05,277 INFO : Swap attempt of 3276M -05:53:05,453 WARNING : step installtype does not exist -05:53:05,454 WARNING : step confirminstall does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,457 WARNING : step complete does not exist -05:53:05,457 INFO : moving (1) to step setuptime -05:53:05,458 DEBUG : setuptime is a direct step -22:53:05,458 WARNING : '/usr/sbin/hwclock' specified as full path -22:53:06,002 INFO : leaving (1) step setuptime -22:53:06,003 INFO : moving (1) to step autopartitionexecute -22:53:06,003 DEBUG : autopartitionexecute is a direct step -22:53:06,138 INFO : leaving (1) step autopartitionexecute -22:53:06,138 INFO : moving (1) to step storagedone -22:53:06,138 DEBUG : storagedone is a direct step -22:53:06,138 INFO : leaving (1) step storagedone -22:53:06,139 INFO : moving (1) to step enablefilesystems -22:53:06,139 DEBUG : enablefilesystems is a direct step -22:53:10,959 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:53:41,215 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:53:57,388 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:54:14,838 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:54:21,717 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:54:27,576 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:54:40,058 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:54:41,949 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:54:41,950 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-rootvol on /mnt/sysimage as ext3 with options defaults -22:54:42,826 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:54:43,148 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:54:43,158 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:54:43,164 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:54:43,207 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-homevol on /mnt/sysimage/home as ext3 with options defaults -22:54:43,434 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,435 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:54:43,439 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,496 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:54:43,609 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:54:43,874 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-varvol on /mnt/sysimage/var as ext3 with options defaults -22:54:44,056 INFO : leaving (1) step enablefilesystems -22:54:44,057 INFO : moving (1) to step bootloadersetup -22:54:44,057 DEBUG : bootloadersetup is a direct step -22:54:44,061 INFO : leaving (1) step bootloadersetup -22:54:44,061 INFO : moving (1) to step reposetup -22:54:44,061 DEBUG : reposetup is a direct step -22:54:56,952 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:54:56,953 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:54:57,133 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:54:57,454 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:54:58,637 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:54:58,971 INFO : leaving (1) step reposetup -22:54:58,971 INFO : moving (1) to step basepkgsel -22:54:58,972 DEBUG : basepkgsel is a direct step -22:54:58,986 WARNING : not adding Base group -22:54:59,388 INFO : leaving (1) step basepkgsel -22:54:59,388 INFO : moving (1) to step postselection -22:54:59,388 DEBUG : postselection is a direct step -22:54:59,390 INFO : selected kernel package for kernel -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:55:07,745 INFO : leaving (1) step postselection -22:55:07,745 INFO : moving (1) to step install -22:55:07,748 INFO : leaving (1) step install -22:55:07,748 INFO : moving (1) to step preinstallconfig -22:55:07,748 DEBUG : preinstallconfig is a direct step -22:55:08,087 DEBUG : isys.py:mount()- going to mount /selinux on /mnt/sysimage/selinux as selinuxfs with options defaults -22:55:08,091 DEBUG : isys.py:mount()- going to mount /proc/bus/usb on /mnt/sysimage/proc/bus/usb as usbfs with options defaults -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,122 INFO : leaving (1) step preinstallconfig -22:55:08,122 INFO : moving (1) to step installpackages -22:55:08,122 DEBUG : installpackages is a direct step -22:55:08,122 INFO : Preparing to install packages -23:17:06,152 INFO : leaving (1) step installpackages -23:17:06,153 INFO : moving (1) to step postinstallconfig -23:17:06,153 DEBUG : postinstallconfig is a direct step -23:17:06,162 DEBUG : Removing cachedir: /mnt/sysimage/var/cache/yum/anaconda-CentOS-201311291202.x86_64 -23:17:06,181 DEBUG : Removing headers and packages from /mnt/sysimage/var/cache/yum/ppa_repo -23:17:06,183 INFO : leaving (1) step postinstallconfig -23:17:06,184 INFO : moving (1) to step writeconfig -23:17:06,184 DEBUG : writeconfig is a direct step -23:17:06,184 INFO : Writing main configuration -23:17:06,219 WARNING : '/usr/sbin/authconfig' specified as full path -23:17:11,643 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,703 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,885 INFO : removing libuser.conf at /tmp/libuser.WMDW9M -23:17:11,885 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -23:17:12,722 INFO : leaving (1) step writeconfig -23:17:12,722 INFO : moving (1) to step firstboot -23:17:12,723 DEBUG : firstboot is a direct step -23:17:12,723 INFO : leaving (1) step firstboot -23:17:12,723 INFO : moving (1) to step instbootloader -23:17:12,724 DEBUG : instbootloader is a direct step -23:17:14,664 WARNING : '/sbin/grub-install' specified as full path -23:17:15,006 WARNING : '/sbin/grub' specified as full path -23:17:16,039 INFO : leaving (1) step instbootloader -23:17:16,040 INFO : moving (1) to step reipl -23:17:16,040 DEBUG : reipl is a direct step -23:17:16,040 INFO : leaving (1) step reipl -23:17:16,040 INFO : moving (1) to step writeksconfig -23:17:16,040 DEBUG : writeksconfig is a direct step -23:17:16,041 INFO : Writing autokickstart file -23:17:16,070 INFO : leaving (1) step writeksconfig -23:17:16,071 INFO : moving (1) to step setfilecon -23:17:16,071 DEBUG : setfilecon is a direct step -23:17:16,071 INFO : setting SELinux contexts for anaconda created files -23:17:17,822 INFO : leaving (1) step setfilecon -23:17:17,822 INFO : moving (1) to step copylogs -23:17:17,822 DEBUG : copylogs is a direct step -23:17:17,822 INFO : Copying anaconda logs -23:17:17,825 INFO : leaving (1) step copylogs -23:17:17,825 INFO : moving (1) to step methodcomplete -23:17:17,825 DEBUG : methodcomplete is a direct step -23:17:17,825 INFO : leaving (1) step methodcomplete -23:17:17,826 INFO : moving (1) to step postscripts -23:17:17,826 DEBUG : postscripts is a direct step -23:17:17,826 INFO : Running kickstart %%post script(s) -23:17:17,858 WARNING : '/bin/sh' specified as full path -23:17:21,002 INFO : All kickstart %%post script(s) have been run -23:17:21,002 INFO : leaving (1) step postscripts -23:17:21,002 INFO : moving (1) to step dopostaction -23:17:21,002 DEBUG : dopostaction is a direct step -23:17:21,003 INFO : leaving (1) step dopostaction diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/chef-client.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/chef-client.log.template deleted file mode 100644 index 19a3b844..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/chef-client.log.template +++ /dev/null @@ -1,168 +0,0 @@ -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: execute[Keystone: sleep] ran successfully -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing directory[/etc/keystone] action create (openstack-identity::server line 73) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: directory[/etc/keystone] owner changed to 163 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: directory[/etc/keystone] mode changed to 700 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing directory[/etc/keystone/ssl] action create (openstack-identity::server line 79) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing file[/var/lib/keystone/keystone.db] action delete (openstack-identity::server line 87) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing execute[keystone-manage pki_setup] action run (openstack-identity::server line 91) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing template[/etc/keystone/keystone.conf] action create (openstack-identity::server line 140) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] backed up to /var/chef/backup/etc/keystone/keystone.conf.chef-20140221203911.069202 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] updated file contents /etc/keystone/keystone.conf -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] owner changed to 163 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] mode changed to 644 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] sending restart action to service[keystone] (immediate) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing service[keystone] action restart (openstack-identity::server line 64) -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: service[keystone] restarted -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: service[keystone] sending run action to execute[Keystone: sleep] (immediate) -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing execute[Keystone: sleep] action run (openstack-identity::server line 58) -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: execute[Keystone: sleep] ran successfully -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: Processing template[/etc/keystone/default_catalog.templates] action create (openstack-identity::server line 158) -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: Processing execute[keystone-manage db_sync] action run (openstack-identity::server line 172) -Feb 21 20:39:43 server1.1 [2014-02-21T20:39:42-08:00] INFO: execute[keystone-manage db_sync] ran successfully -Feb 21 20:39:43 server1.1 [2014-02-21T20:39:42-08:00] INFO: Processing bash[bootstrap-keystone-admin] action run (openstack-identity::registration line 40) -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: bash[bootstrap-keystone-admin] ran successfully -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Processing openstack-identity_register[Register 'admin' Tenant] action create_tenant (openstack-identity::registration line 80) -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Tenant 'admin' already exists.. Not creating. -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Tenant UUID: 87cf46951cc14159bd16b68e3eb96321 -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Processing openstack-identity_register[Register 'service' Tenant] action create_tenant (openstack-identity::registration line 80) -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Created tenant 'service' -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Processing openstack-identity_register[Register 'admin' Role] action create_role (openstack-identity::registration line 92) -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Role 'admin' already exists.. Not creating. -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Role UUID: 8070c199fc2647c9a50176d11256bebc -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Processing openstack-identity_register[Register 'Member' Role] action create_role (openstack-identity::registration line 92) -Feb 21 20:39:47 server1.1 [2014-02-21T20:39:46-08:00] INFO: Created Role 'Member' -Feb 21 20:39:47 server1.1 [2014-02-21T20:39:46-08:00] INFO: Processing openstack-identity_register[Register 'compute' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:48 server1.1 [2014-02-21T20:39:47-08:00] INFO: Created user 'service' for tenant 'service' -Feb 21 20:39:48 server1.1 [2014-02-21T20:39:47-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:39:49 server1.1 [2014-02-21T20:39:48-08:00] INFO: Granted Role 'admin' to User 'service' in Tenant 'service' -Feb 21 20:39:49 server1.1 [2014-02-21T20:39:48-08:00] INFO: Processing openstack-identity_register[Register compute Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:49-08:00] INFO: Created service 'nova' -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:49-08:00] INFO: Processing openstack-identity_register[Register compute Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:50-08:00] INFO: Created endpoint for service type 'compute' -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:50-08:00] INFO: Processing openstack-identity_register[Register 'network' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:51 server1.1 [2014-02-21T20:39:50-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:39:51 server1.1 [2014-02-21T20:39:50-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:39:52 server1.1 [2014-02-21T20:39:51-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:39:52 server1.1 [2014-02-21T20:39:51-08:00] INFO: Processing openstack-identity_register[Register network Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:53 server1.1 [2014-02-21T20:39:52-08:00] INFO: Created service 'quantum' -Feb 21 20:39:53 server1.1 [2014-02-21T20:39:52-08:00] INFO: Processing openstack-identity_register[Register network Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: Created endpoint for service type 'network' -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: Processing openstack-identity_register[Register 'volume' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:39:55 server1.1 [2014-02-21T20:39:54-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:39:55 server1.1 [2014-02-21T20:39:54-08:00] INFO: Processing openstack-identity_register[Register volume Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:56 server1.1 [2014-02-21T20:39:55-08:00] INFO: Created service 'cinder' -Feb 21 20:39:56 server1.1 [2014-02-21T20:39:55-08:00] INFO: Processing openstack-identity_register[Register volume Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Created endpoint for service type 'volume' -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Processing openstack-identity_register[Register identity Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Created service 'keystone' -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Processing openstack-identity_register[Register identity Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:58 server1.1 [2014-02-21T20:39:57-08:00] INFO: Created endpoint for service type 'identity' -Feb 21 20:39:58 server1.1 [2014-02-21T20:39:57-08:00] INFO: Processing openstack-identity_register[Register 'image' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:59 server1.1 [2014-02-21T20:39:58-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:39:59 server1.1 [2014-02-21T20:39:58-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:40:00 server1.1 [2014-02-21T20:39:59-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:40:00 server1.1 [2014-02-21T20:39:59-08:00] INFO: Processing openstack-identity_register[Register image Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:40:00 server1.1 [2014-02-21T20:40:00-08:00] INFO: Created service 'glance' -Feb 21 20:40:00 server1.1 [2014-02-21T20:40:00-08:00] INFO: Processing openstack-identity_register[Register image Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:40:01 server1.1 [2014-02-21T20:40:00-08:00] INFO: Created endpoint for service type 'image' -Feb 21 20:40:01 server1.1 [2014-02-21T20:40:00-08:00] INFO: Processing openstack-identity_register[Register 'object-store' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:40:02 server1.1 [2014-02-21T20:40:01-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:40:02 server1.1 [2014-02-21T20:40:01-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:40:03 server1.1 [2014-02-21T20:40:02-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:40:03 server1.1 [2014-02-21T20:40:02-08:00] INFO: Processing openstack-identity_register[Register object-store Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:40:04 server1.1 [2014-02-21T20:40:03-08:00] INFO: Created service 'swift' -Feb 21 20:40:04 server1.1 [2014-02-21T20:40:03-08:00] INFO: Processing openstack-identity_register[Create EC2 credentials for 'admin' user] action create_ec2_credentials (openstack-identity::registration line 166) -Feb 21 20:40:05 server1.1 [2014-02-21T20:40:04-08:00] INFO: Created EC2 Credentials for User 'admin' in Tenant 'admin' -Feb 21 20:40:05 server1.1 [2014-02-21T20:40:04-08:00] INFO: Processing openstack-identity_register[Create EC2 credentials for 'monitoring' user] action create_ec2_credentials (openstack-identity::registration line 166) -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] ERROR: Unable to create EC2 Credentials for User 'monitoring' in Tenant 'service' -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] ERROR: Error was: Could not lookup uuid for ec2-credentials:tenant=>service. Error was 'Client' object has no attribute 'auth_user_id' -Feb 21 20:40:07 server1.1 (1) -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] INFO: Processing package[openstack-cinder] action upgrade (openstack-block-storage::cinder-common line 26) -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] INFO: package[openstack-cinder] installing openstack-cinder-2013.1.4-1.el6 from openstack repository -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: package[openstack-cinder] upgraded from uninstalled to 2013.1.4-1.el6 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing directory[/etc/cinder] action create (openstack-block-storage::cinder-common line 44) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/etc/cinder] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/etc/cinder] group changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/etc/cinder] mode changed to 750 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing template[/etc/cinder/cinder.conf] action create (openstack-block-storage::cinder-common line 51) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] backed up to /var/chef/backup/etc/cinder/cinder.conf.chef-20140221204110.415861 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] updated file contents /etc/cinder/cinder.conf -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] mode changed to 644 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing package[python-cinderclient] action upgrade (openstack-block-storage::api line 32) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing package[MySQL-python] action upgrade (openstack-block-storage::api line 41) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing directory[/var/cache/cinder] action create (openstack-block-storage::api line 46) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] created directory /var/cache/cinder -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] group changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] mode changed to 700 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing directory[/var/lock/cinder] action create (openstack-block-storage::api line 52) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] created directory /var/lock/cinder -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] group changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] mode changed to 700 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing service[cinder-api] action enable (openstack-block-storage::api line 58) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: service[cinder-api] enabled -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing execute[cinder-manage db sync] action run (openstack-block-storage::api line 71) -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: execute[cinder-manage db sync] ran successfully -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing template[/etc/cinder/api-paste.ini] action create (openstack-block-storage::api line 73) -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] backed up to /var/chef/backup/etc/cinder/api-paste.ini.chef-20140221204130.194587 -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] updated file contents /etc/cinder/api-paste.ini -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] owner changed to 165 -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] mode changed to 644 -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] sending restart action to service[cinder-api] (immediate) -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing service[cinder-api] action restart (openstack-block-storage::api line 58) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: service[cinder-api] restarted -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing template[/etc/cinder/policy.json] action create (openstack-block-storage::api line 88) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] backed up to /var/chef/backup/etc/cinder/policy.json.chef-20140221204130.442890 -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] updated file contents /etc/cinder/policy.json -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] owner changed to 165 -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] mode changed to 644 -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] not queuing delayed action restart on service[cinder-api] (delayed), as it's already been queued -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing package[MySQL-python] action upgrade (openstack-block-storage::scheduler line 45) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing service[cinder-scheduler] action enable (openstack-block-storage::scheduler line 50) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: service[cinder-scheduler] enabled -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing service[cinder-scheduler] action start (openstack-block-storage::scheduler line 50) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: service[cinder-scheduler] started -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing package[openstack-nova-common] action upgrade (openstack-compute::nova-common line 37) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: package[openstack-nova-common] installing openstack-nova-common-2013.1.4-7.el6 from openstack repository -Feb 21 20:41:52 server1.1 [2014-02-21T20:41:52-08:00] INFO: package[openstack-nova-common] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:41:52 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing package[python-memcached] action install (openstack-compute::nova-common line 46) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing directory[/etc/nova] action create (openstack-compute::nova-common line 51) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova] owner changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova] group changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova] mode changed to 700 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing directory[/etc/nova/rootwrap.d] action create (openstack-compute::nova-common line 59) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] created directory /etc/nova/rootwrap.d -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] mode changed to 700 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/nova.conf] action create (openstack-compute::nova-common line 134) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] backed up to /var/chef/backup/etc/nova/nova.conf.chef-20140221204152.340272 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] updated file contents /etc/nova/nova.conf -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] owner changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.conf] action create (openstack-compute::nova-common line 164) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] backed up to /var/chef/backup/etc/nova/rootwrap.conf.chef-20140221204152.347747 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] updated file contents /etc/nova/rootwrap.conf -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.d/api-metadata.filters] action create (openstack-compute::nova-common line 172) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] created file /etc/nova/rootwrap.d/api-metadata.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] updated file contents /etc/nova/rootwrap.d/api-metadata.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.d/compute.filters] action create (openstack-compute::nova-common line 180) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] created file /etc/nova/rootwrap.d/compute.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] updated file contents /etc/nova/rootwrap.d/compute.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.d/network.filters] action create (openstack-compute::nova-common line 188) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] created file /etc/nova/rootwrap.d/network.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] updated file contents /etc/nova/rootwrap.d/network.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] group changed to 0 diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/install.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/install.log.template deleted file mode 100644 index 861b3a53..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/install.log.template +++ /dev/null @@ -1,212 +0,0 @@ -Installing libgcc-4.4.7-4.el6.x86_64 -warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY -Installing setup-2.8.14-20.el6_4.1.noarch -Installing filesystem-2.4.30-3.el6.x86_64 -Installing basesystem-10.0-4.el6.noarch -Installing ncurses-base-5.7-3.20090208.el6.x86_64 -Installing kernel-firmware-2.6.32-431.el6.noarch -Installing tzdata-2013g-1.el6.noarch -Installing nss-softokn-freebl-3.14.3-9.el6.x86_64 -Installing glibc-common-2.12-1.132.el6.x86_64 -Installing glibc-2.12-1.132.el6.x86_64 -Installing ncurses-libs-5.7-3.20090208.el6.x86_64 -Installing bash-4.1.2-15.el6_4.x86_64 -Installing libattr-2.4.44-7.el6.x86_64 -Installing libcap-2.16-5.5.el6.x86_64 -Installing zlib-1.2.3-29.el6.x86_64 -Installing info-4.13a-8.el6.x86_64 -Installing popt-1.13-7.el6.x86_64 -Installing chkconfig-1.3.49.3-2.el6_4.1.x86_64 -Installing audit-libs-2.2-2.el6.x86_64 -Installing libcom_err-1.41.12-18.el6.x86_64 -Installing libacl-2.2.49-6.el6.x86_64 -Installing db4-4.7.25-18.el6_4.x86_64 -Installing nspr-4.10.0-1.el6.x86_64 -Installing nss-util-3.15.1-3.el6.x86_64 -Installing readline-6.0-4.el6.x86_64 -Installing libsepol-2.0.41-4.el6.x86_64 -Installing libselinux-2.0.94-5.3.el6_4.1.x86_64 -Installing shadow-utils-4.1.4.2-13.el6.x86_64 -Installing sed-4.2.1-10.el6.x86_64 -Installing bzip2-libs-1.0.5-7.el6_0.x86_64 -Installing libuuid-2.17.2-12.14.el6.x86_64 -Installing libstdc++-4.4.7-4.el6.x86_64 -Installing libblkid-2.17.2-12.14.el6.x86_64 -Installing gawk-3.1.7-10.el6.x86_64 -Installing file-libs-5.04-15.el6.x86_64 -Installing libgpg-error-1.7-4.el6.x86_64 -Installing dbus-libs-1.2.24-7.el6_3.x86_64 -Installing libudev-147-2.51.el6.x86_64 -Installing pcre-7.8-6.el6.x86_64 -Installing grep-2.6.3-4.el6.x86_64 -Installing lua-5.1.4-4.1.el6.x86_64 -Installing sqlite-3.6.20-1.el6.x86_64 -Installing cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 -Installing libidn-1.18-2.el6.x86_64 -Installing expat-2.0.1-11.el6_2.x86_64 -Installing xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64 -Installing elfutils-libelf-0.152-1.el6.x86_64 -Installing libgcrypt-1.4.5-11.el6_4.x86_64 -Installing bzip2-1.0.5-7.el6_0.x86_64 -Installing findutils-4.4.2-6.el6.x86_64 -Installing libselinux-utils-2.0.94-5.3.el6_4.1.x86_64 -Installing checkpolicy-2.0.22-1.el6.x86_64 -Installing cpio-2.10-11.el6_3.x86_64 -Installing which-2.19-6.el6.x86_64 -Installing libxml2-2.7.6-14.el6.x86_64 -Installing libedit-2.11-4.20080712cvs.1.el6.x86_64 -Installing pth-2.0.7-9.3.el6.x86_64 -Installing tcp_wrappers-libs-7.6-57.el6.x86_64 -Installing sysvinit-tools-2.87-5.dsf.el6.x86_64 -Installing libtasn1-2.3-3.el6_2.1.x86_64 -Installing p11-kit-0.18.5-2.el6.x86_64 -Installing p11-kit-trust-0.18.5-2.el6.x86_64 -Installing ca-certificates-2013.1.94-65.0.el6.noarch -Installing device-mapper-persistent-data-0.2.8-2.el6.x86_64 -Installing nss-softokn-3.14.3-9.el6.x86_64 -Installing libnih-1.0.1-7.el6.x86_64 -Installing upstart-0.6.5-12.el6_4.1.x86_64 -Installing file-5.04-15.el6.x86_64 -Installing gmp-4.3.1-7.el6_2.2.x86_64 -Installing libusb-0.1.12-23.el6.x86_64 -Installing MAKEDEV-3.24-6.el6.x86_64 -Installing libutempter-1.1.5-4.1.el6.x86_64 -Installing psmisc-22.6-15.el6_0.1.x86_64 -Installing net-tools-1.60-110.el6_2.x86_64 -Installing vim-minimal-7.2.411-1.8.el6.x86_64 -Installing tar-1.23-11.el6.x86_64 -Installing procps-3.2.8-25.el6.x86_64 -Installing db4-utils-4.7.25-18.el6_4.x86_64 -Installing e2fsprogs-libs-1.41.12-18.el6.x86_64 -Installing libss-1.41.12-18.el6.x86_64 -Installing pinentry-0.7.6-6.el6.x86_64 -Installing binutils-2.20.51.0.2-5.36.el6.x86_64 -Installing m4-1.4.13-5.el6.x86_64 -Installing diffutils-2.8.1-28.el6.x86_64 -Installing make-3.81-20.el6.x86_64 -Installing dash-0.5.5.1-4.el6.x86_64 -Installing ncurses-5.7-3.20090208.el6.x86_64 -Installing groff-1.18.1.4-21.el6.x86_64 -Installing less-436-10.el6.x86_64 -Installing coreutils-libs-8.4-31.el6.x86_64 -Installing gzip-1.3.12-19.el6_4.x86_64 -Installing cracklib-2.8.16-4.el6.x86_64 -Installing cracklib-dicts-2.8.16-4.el6.x86_64 -Installing coreutils-8.4-31.el6.x86_64 -Installing pam-1.1.1-17.el6.x86_64 -Installing module-init-tools-3.9-21.el6_4.x86_64 -Installing hwdata-0.233-9.1.el6.noarch -Installing redhat-logos-60.0.14-12.el6.centos.noarch -Installing plymouth-scripts-0.8.3-27.el6.centos.x86_64 -Installing libpciaccess-0.13.1-2.el6.x86_64 -Installing nss-3.15.1-15.el6.x86_64 -Installing nss-sysinit-3.15.1-15.el6.x86_64 -Installing nss-tools-3.15.1-15.el6.x86_64 -Installing openldap-2.4.23-32.el6_4.1.x86_64 -Installing logrotate-3.7.8-17.el6.x86_64 -Installing gdbm-1.8.0-36.el6.x86_64 -Installing mingetty-1.08-5.el6.x86_64 -Installing keyutils-libs-1.4-4.el6.x86_64 -Installing krb5-libs-1.10.3-10.el6_4.6.x86_64 -Installing openssl-1.0.1e-15.el6.x86_64 -Installing libssh2-1.4.2-1.el6.x86_64 -Installing libcurl-7.19.7-37.el6_4.x86_64 -Installing gnupg2-2.0.14-6.el6_4.x86_64 -Installing gpgme-1.1.8-3.el6.x86_64 -Installing curl-7.19.7-37.el6_4.x86_64 -Installing rpm-libs-4.8.0-37.el6.x86_64 -Installing rpm-4.8.0-37.el6.x86_64 -Installing fipscheck-lib-1.2.0-7.el6.x86_64 -Installing fipscheck-1.2.0-7.el6.x86_64 -Installing mysql-libs-5.1.71-1.el6.x86_64 -Installing ethtool-3.5-1.el6.x86_64 -Installing pciutils-libs-3.1.10-2.el6.x86_64 -Installing plymouth-core-libs-0.8.3-27.el6.centos.x86_64 -Installing libcap-ng-0.6.4-3.el6_0.1.x86_64 -Installing libffi-3.0.5-3.2.el6.x86_64 -Installing python-2.6.6-51.el6.x86_64 -Installing python-libs-2.6.6-51.el6.x86_64 -Installing python-pycurl-7.19.0-8.el6.x86_64 -Installing python-urlgrabber-3.9.1-9.el6.noarch -Installing pygpgme-0.1-18.20090824bzr68.el6.x86_64 -Installing rpm-python-4.8.0-37.el6.x86_64 -Installing python-iniparse-0.3.1-2.1.el6.noarch -Installing slang-2.2.1-1.el6.x86_64 -Installing newt-0.52.11-3.el6.x86_64 -Installing newt-python-0.52.11-3.el6.x86_64 -Installing ustr-1.0.4-9.1.el6.x86_64 -Installing libsemanage-2.0.43-4.2.el6.x86_64 -Installing libaio-0.3.107-10.el6.x86_64 -Installing pkgconfig-0.23-9.1.el6.x86_64 -Installing gamin-0.1.10-9.el6.x86_64 -Installing glib2-2.26.1-3.el6.x86_64 -Installing shared-mime-info-0.70-4.el6.x86_64 -Installing libuser-0.56.13-5.el6.x86_64 -Installing grubby-7.0.15-5.el6.x86_64 -Installing yum-metadata-parser-1.1.2-16.el6.x86_64 -Installing yum-plugin-fastestmirror-1.1.30-14.el6.noarch -Installing yum-3.2.29-40.el6.centos.noarch -Installing dbus-glib-0.86-6.el6.x86_64 -Installing dhcp-common-4.1.1-38.P1.el6.centos.x86_64 -Installing centos-release-6-5.el6.centos.11.1.x86_64 -Installing policycoreutils-2.0.83-19.39.el6.x86_64 -Installing iptables-1.4.7-11.el6.x86_64 -Installing iproute-2.6.32-31.el6.x86_64 -Installing iputils-20071127-17.el6_4.2.x86_64 -Installing util-linux-ng-2.17.2-12.14.el6.x86_64 -Installing initscripts-9.03.40-2.el6.centos.x86_64 -Installing udev-147-2.51.el6.x86_64 -Installing device-mapper-libs-1.02.79-8.el6.x86_64 -Installing device-mapper-1.02.79-8.el6.x86_64 -Installing device-mapper-event-libs-1.02.79-8.el6.x86_64 -Installing openssh-5.3p1-94.el6.x86_64 -Installing device-mapper-event-1.02.79-8.el6.x86_64 -Installing lvm2-libs-2.02.100-8.el6.x86_64 -Installing cryptsetup-luks-libs-1.2.0-7.el6.x86_64 -Installing device-mapper-multipath-libs-0.4.9-72.el6.x86_64 -Installing kpartx-0.4.9-72.el6.x86_64 -Installing libdrm-2.4.45-2.el6.x86_64 -Installing plymouth-0.8.3-27.el6.centos.x86_64 -Installing rsyslog-5.8.10-8.el6.x86_64 -Installing cyrus-sasl-2.1.23-13.el6_3.1.x86_64 -Installing postfix-2.6.6-2.2.el6_1.x86_64 -Installing cronie-anacron-1.4.4-12.el6.x86_64 -Installing cronie-1.4.4-12.el6.x86_64 -Installing crontabs-1.10-33.el6.noarch -Installing ntpdate-4.2.6p5-1.el6.centos.x86_64 -Installing iptables-ipv6-1.4.7-11.el6.x86_64 -Installing selinux-policy-3.7.19-231.el6.noarch -Installing kbd-misc-1.15-11.el6.noarch -Installing kbd-1.15-11.el6.x86_64 -Installing dracut-004-335.el6.noarch -Installing dracut-kernel-004-335.el6.noarch -Installing kernel-2.6.32-431.el6.x86_64 -Installing fuse-2.8.3-4.el6.x86_64 -Installing selinux-policy-targeted-3.7.19-231.el6.noarch -Installing system-config-firewall-base-1.2.27-5.el6.noarch -Installing ntp-4.2.6p5-1.el6.centos.x86_64 -Installing device-mapper-multipath-0.4.9-72.el6.x86_64 -Installing cryptsetup-luks-1.2.0-7.el6.x86_64 -Installing lvm2-2.02.100-8.el6.x86_64 -Installing openssh-clients-5.3p1-94.el6.x86_64 -Installing openssh-server-5.3p1-94.el6.x86_64 -Installing mdadm-3.2.6-7.el6.x86_64 -Installing b43-openfwwf-5.2-4.el6.noarch -Installing dhclient-4.1.1-38.P1.el6.centos.x86_64 -Installing iscsi-initiator-utils-6.2.0.873-10.el6.x86_64 -Installing passwd-0.77-4.el6_2.2.x86_64 -Installing authconfig-6.1.12-13.el6.x86_64 -Installing grub-0.97-83.el6.x86_64 -Installing efibootmgr-0.5.4-11.el6.x86_64 -Installing wget-1.12-1.8.el6.x86_64 -Installing sudo-1.8.6p3-12.el6.x86_64 -Installing audit-2.2-2.el6.x86_64 -Installing e2fsprogs-1.41.12-18.el6.x86_64 -Installing xfsprogs-3.1.1-14.el6.x86_64 -Installing acl-2.2.49-6.el6.x86_64 -Installing attr-2.4.44-7.el6.x86_64 -Installing chef-11.8.0-1.el6.x86_64 -warning: chef-11.8.0-1.el6.x86_64: Header V4 DSA/SHA1 Signature, key ID 83ef826a: NOKEY -Installing bridge-utils-1.2-10.el6.x86_64 -Installing rootfiles-8.1-6.1.el6.noarch -*** FINISHED INSTALLING PACKAGES *** \ No newline at end of file diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/anaconda.log.template deleted file mode 100644 index 0e91936e..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/anaconda.log.template +++ /dev/null @@ -1,280 +0,0 @@ -05:50:22,531 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 - -05:50:22,531 INFO : text mode forced from cmdline -05:50:22,531 DEBUG : readNetInfo /tmp/s390net not found, early return -05:50:22,531 INFO : anaconda version 13.21.215 on x86_64 starting -05:50:22,649 DEBUG : Saving module ipv6 -05:50:22,649 DEBUG : Saving module iscsi_ibft -05:50:22,649 DEBUG : Saving module iscsi_boot_sysfs -05:50:22,649 DEBUG : Saving module pcspkr -05:50:22,649 DEBUG : Saving module edd -05:50:22,649 DEBUG : Saving module floppy -05:50:22,649 DEBUG : Saving module iscsi_tcp -05:50:22,649 DEBUG : Saving module libiscsi_tcp -05:50:22,649 DEBUG : Saving module libiscsi -05:50:22,649 DEBUG : Saving module scsi_transport_iscsi -05:50:22,649 DEBUG : Saving module squashfs -05:50:22,649 DEBUG : Saving module cramfs -05:50:22,649 DEBUG : probing buses -05:50:22,673 DEBUG : waiting for hardware to initialize -05:50:28,619 DEBUG : probing buses -05:50:28,644 DEBUG : waiting for hardware to initialize -05:50:32,015 INFO : getting kickstart file -05:50:32,022 INFO : eth0 has link, using it -05:50:32,033 INFO : doing kickstart... setting it up -05:50:32,034 DEBUG : activating device eth0 -05:50:40,048 INFO : wait_for_iface_activation (2502): device eth0 activated -05:50:40,048 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server2.1 -05:50:40,049 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server2.1 -05:50:40,134 INFO : setting up kickstart -05:50:40,134 INFO : kickstart forcing text mode -05:50:40,134 INFO : kickstartFromUrl -05:50:40,134 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:50:40,135 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:50:40,137 INFO : drive status is CDS_TRAY_OPEN -05:50:40,137 ERROR : Drive tray reports open when it should be closed -05:50:55,155 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:50:55,156 DEBUG : going to set language to en_US.UTF-8 -05:50:55,156 INFO : setting language to en_US.UTF-8 -05:50:55,169 INFO : starting STEP_METHOD -05:50:55,169 DEBUG : loaderData->method is set, adding skipMethodDialog -05:50:55,169 DEBUG : skipMethodDialog is set -05:50:55,176 INFO : starting STEP_STAGE2 -05:50:55,176 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:50:55,176 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:50:56,174 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:50:56,175 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:50:56,175 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:50:57,459 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:50:57,459 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:51:46,964 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:51:46,964 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:51:47,009 INFO : Loading SELinux policy -05:51:47,753 INFO : getting ready to spawn shell now -05:51:47,973 INFO : Running anaconda script /usr/bin/anaconda -05:51:52,842 INFO : CentOS Linux is the highest priority installclass, using it -05:51:52,887 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:51:52,888 INFO : Running kickstart %%pre script(s) -05:51:52,888 WARNING : '/bin/sh' specified as full path -05:51:54,265 INFO : All kickstart %%pre script(s) have been run -05:51:54,314 INFO : ISCSID is /usr/sbin/iscsid -05:51:54,314 INFO : no initiator set -05:51:54,416 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:51:54,425 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:51:54,425 INFO : no /etc/zfcp.conf; not configuring zfcp -05:51:59,033 INFO : created new libuser.conf at /tmp/libuser.KyLOeb with instPath="/mnt/sysimage" -05:51:59,033 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:51:59,033 INFO : Display mode = t -05:51:59,034 INFO : Default encoding = utf-8 -05:51:59,193 INFO : Detected 2016M of memory -05:51:59,193 INFO : Swap attempt of 4032M -05:51:59,528 INFO : ISCSID is /usr/sbin/iscsid -05:51:59,528 INFO : no initiator set -05:52:00,372 INFO : setting installation environment hostname to server2 -05:52:00,415 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:52:00,541 INFO : Detected 2016M of memory -05:52:00,541 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:52:00,541 INFO : Swap attempt of 3276M -05:52:00,698 WARNING : step installtype does not exist -05:52:00,699 WARNING : step confirminstall does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,702 INFO : moving (1) to step setuptime -05:52:00,702 DEBUG : setuptime is a direct step -22:52:00,703 WARNING : '/usr/sbin/hwclock' specified as full path -22:52:02,003 INFO : leaving (1) step setuptime -22:52:02,003 INFO : moving (1) to step autopartitionexecute -22:52:02,003 DEBUG : autopartitionexecute is a direct step -22:52:02,141 INFO : leaving (1) step autopartitionexecute -22:52:02,141 INFO : moving (1) to step storagedone -22:52:02,141 DEBUG : storagedone is a direct step -22:52:02,142 INFO : leaving (1) step storagedone -22:52:02,142 INFO : moving (1) to step enablefilesystems -22:52:02,142 DEBUG : enablefilesystems is a direct step -22:52:08,928 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:52:12,407 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:52:25,536 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:52:30,102 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:52:35,181 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:52:40,809 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:52:44,576 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:52:44,576 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-rootvol on /mnt/sysimage as ext3 with options defaults -22:52:45,082 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:52:45,230 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:52:45,240 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:52:45,247 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:52:45,333 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-homevol on /mnt/sysimage/home as ext3 with options defaults -22:52:45,482 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:52:45,483 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:52:45,487 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:52:45,534 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:52:45,571 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:52:45,795 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-varvol on /mnt/sysimage/var as ext3 with options defaults -22:52:45,955 INFO : leaving (1) step enablefilesystems -22:52:45,955 INFO : moving (1) to step bootloadersetup -22:52:45,956 DEBUG : bootloadersetup is a direct step -22:52:45,960 INFO : leaving (1) step bootloadersetup -22:52:45,960 INFO : moving (1) to step reposetup -22:52:45,960 DEBUG : reposetup is a direct step -22:52:47,076 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:52:47,077 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:52:47,296 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:52:47,358 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:52:47,499 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:52:47,629 INFO : leaving (1) step reposetup -22:52:47,629 INFO : moving (1) to step basepkgsel -22:52:47,629 DEBUG : basepkgsel is a direct step -22:52:47,645 WARNING : not adding Base group -22:52:48,052 INFO : leaving (1) step basepkgsel -22:52:48,053 INFO : moving (1) to step postselection -22:52:48,053 DEBUG : postselection is a direct step -22:52:48,056 INFO : selected kernel package for kernel -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:52:53,656 INFO : leaving (1) step postselection -22:52:53,657 INFO : moving (1) to step install -22:52:53,660 INFO : leaving (1) step install -22:52:53,660 INFO : moving (1) to step preinstallconfig -22:52:53,660 DEBUG : preinstallconfig is a direct step -22:52:54,102 DEBUG : isys.py:mount()- going to mount /selinux on /mnt/sysimage/selinux as selinuxfs with options defaults -22:52:54,107 DEBUG : isys.py:mount()- going to mount /proc/bus/usb on /mnt/sysimage/proc/bus/usb as usbfs with options defaults -22:52:54,117 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:52:54,117 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:52:54,130 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:52:54,130 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:52:54,134 INFO : leaving (1) step preinstallconfig -22:52:54,134 INFO : moving (1) to step installpackages -22:52:54,134 DEBUG : installpackages is a direct step -22:52:54,134 INFO : Preparing to install packages -23:16:26,925 INFO : leaving (1) step installpackages -23:16:26,926 INFO : moving (1) to step postinstallconfig -23:16:26,926 DEBUG : postinstallconfig is a direct step -23:16:26,934 DEBUG : Removing cachedir: /mnt/sysimage/var/cache/yum/anaconda-CentOS-201311291202.x86_64 -23:16:26,949 DEBUG : Removing headers and packages from /mnt/sysimage/var/cache/yum/ppa_repo -23:16:26,953 INFO : leaving (1) step postinstallconfig -23:16:26,953 INFO : moving (1) to step writeconfig -23:16:26,953 DEBUG : writeconfig is a direct step -23:16:26,953 INFO : Writing main configuration -23:16:26,958 WARNING : '/usr/sbin/authconfig' specified as full path -23:16:30,473 WARNING : '/usr/sbin/lokkit' specified as full path -23:16:30,530 WARNING : '/usr/sbin/lokkit' specified as full path -23:16:30,632 INFO : removing libuser.conf at /tmp/libuser.KyLOeb -23:16:30,633 INFO : created new libuser.conf at /tmp/libuser.KyLOeb with instPath="/mnt/sysimage" -23:16:31,956 INFO : leaving (1) step writeconfig -23:16:31,956 INFO : moving (1) to step firstboot -23:16:31,957 DEBUG : firstboot is a direct step -23:16:31,957 INFO : leaving (1) step firstboot -23:16:31,957 INFO : moving (1) to step instbootloader -23:16:31,957 DEBUG : instbootloader is a direct step -23:16:33,920 WARNING : '/sbin/grub-install' specified as full path -23:16:34,226 WARNING : '/sbin/grub' specified as full path -23:16:35,092 INFO : leaving (1) step instbootloader -23:16:35,092 INFO : moving (1) to step reipl -23:16:35,092 DEBUG : reipl is a direct step -23:16:35,093 INFO : leaving (1) step reipl -23:16:35,093 INFO : moving (1) to step writeksconfig -23:16:35,093 DEBUG : writeksconfig is a direct step -23:16:35,093 INFO : Writing autokickstart file -23:16:35,124 INFO : leaving (1) step writeksconfig -23:16:35,124 INFO : moving (1) to step setfilecon -23:16:35,125 DEBUG : setfilecon is a direct step -23:16:35,125 INFO : setting SELinux contexts for anaconda created files -23:16:36,828 INFO : leaving (1) step setfilecon -23:16:36,829 INFO : moving (1) to step copylogs -23:16:36,829 DEBUG : copylogs is a direct step -23:16:36,829 INFO : Copying anaconda logs -23:16:36,831 INFO : leaving (1) step copylogs -23:16:36,831 INFO : moving (1) to step methodcomplete -23:16:36,832 DEBUG : methodcomplete is a direct step -23:16:36,832 INFO : leaving (1) step methodcomplete -23:16:36,832 INFO : moving (1) to step postscripts -23:16:36,832 DEBUG : postscripts is a direct step -23:16:36,832 INFO : Running kickstart %%post script(s) -23:16:36,872 WARNING : '/bin/sh' specified as full path diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/chef-client.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/chef-client.log.template deleted file mode 100644 index b13b6791..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/chef-client.log.template +++ /dev/null @@ -1,342 +0,0 @@ -Feb 21 20:21:42 server2.1 [2014-02-21T20:21:42-08:00] INFO: Forking chef instance to converge... -Feb 21 20:21:51 server2.1 [2014-02-21T20:21:50-08:00] INFO: *** Chef 11.8.0 *** -Feb 21 20:21:51 server2.1 [2014-02-21T20:21:50-08:00] INFO: Chef-client pid: 1350 -Feb 21 20:22:14 server2.1 [2014-02-21T20:22:14-08:00] INFO: Client key /etc/chef/client.pem is not present - registering -Feb 21 20:22:18 server2.1 [2014-02-21T20:22:18-08:00] INFO: HTTP Request Returned 404 Object Not Found: error -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:18-08:00] INFO: Setting the run_list to ["role[os-ops-database]"] from JSON -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Run List is [role[os-ops-database]] -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Run List expands to [openstack-common, openstack-common::logging, openstack-ops-database::server, openstack-ops-database::openstack-db] -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Starting Chef Run for server2_openstack_1 -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Running start handlers -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Start handlers complete. -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: HTTP Request Returned 404 Object Not Found: -Feb 21 20:22:20 server2.1 [2014-02-21T20:22:20-08:00] INFO: Loading cookbooks [apt, aws, build-essential, database, mysql, openssl, openstack-common, openstack-ops-database, postgresql, xfs, yum] -Feb 21 20:22:20 server2.1 [2014-02-21T20:22:20-08:00] INFO: Storing updated cookbooks/mysql/recipes/percona_repo.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:20-08:00] INFO: Storing updated cookbooks/mysql/recipes/server.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:21-08:00] INFO: Storing updated cookbooks/mysql/recipes/default.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:21-08:00] INFO: Storing updated cookbooks/mysql/recipes/ruby.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:21-08:00] INFO: Storing updated cookbooks/mysql/recipes/server_ec2.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:21-08:00] INFO: Storing updated cookbooks/mysql/recipes/client.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/libraries/helpers.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/attributes/percona_repo.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/attributes/server.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/attributes/client.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/templates/default/my.cnf.erb in the cache. -Feb 21 20:22:23 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/templates/default/mysql-server.seed.erb in the cache. -Feb 21 20:22:23 server2.1 [2014-02-21T20:22:23-08:00] INFO: Storing updated cookbooks/mysql/templates/default/port_mysql.erb in the cache. -Feb 21 20:22:24 server2.1 [2014-02-21T20:22:24-08:00] INFO: Storing updated cookbooks/mysql/templates/default/debian.cnf.erb in the cache. -Feb 21 20:22:24 server2.1 [2014-02-21T20:22:24-08:00] INFO: Storing updated cookbooks/mysql/templates/default/grants.sql.erb in the cache. -Feb 21 20:22:25 server2.1 [2014-02-21T20:22:24-08:00] INFO: Storing updated cookbooks/mysql/templates/windows/my.cnf.erb in the cache. -Feb 21 20:22:25 server2.1 [2014-02-21T20:22:25-08:00] INFO: Storing updated cookbooks/mysql/LICENSE in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/CHANGELOG.md in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/metadata.rb in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/TESTING.md in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/Berksfile in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/README.md in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/CONTRIBUTING in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/mysql/.kitchen.yml in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/mysql.rb in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/ebs_backup.rb in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/default.rb in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/ebs_volume.rb in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/postgresql.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/master.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/snapshot.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_mysql_user.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_postgresql.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/resource_database_user.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_postgresql_user.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/resource_mysql_database_user.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/resource_sql_server_database_user.rb in the cache. -Feb 21 20:22:29 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_mysql.rb in the cache. -Feb 21 20:22:29 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/resource_mysql_database.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_sql_server.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/resource_database.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/resource_postgresql_database_user.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_sql_server_user.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/libraries/resource_sql_server_database.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/libraries/resource_postgresql_database.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/ebs-db-restore.sh.erb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/aws_config.erb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/chef-solo-database-snapshot.rb.erb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/ebs-backup-cron.erb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/app_grants.sql.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/s3cfg.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/chef-solo-database-snapshot.cron.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/chef-solo-database-snapshot.json.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:31-08:00] INFO: Storing updated cookbooks/database/templates/default/ebs-db-backup.sh.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:31-08:00] INFO: Storing updated cookbooks/database/LICENSE in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:31-08:00] INFO: Storing updated cookbooks/database/CHANGELOG.md in the cache. -Feb 21 20:22:32 server2.1 [2014-02-21T20:22:31-08:00] INFO: Storing updated cookbooks/database/metadata.rb in the cache. -Feb 21 20:22:32 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/database/README.md in the cache. -Feb 21 20:22:32 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/database/CONTRIBUTING in the cache. -Feb 21 20:22:32 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/mysql-server.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/server.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/openstack-db.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/postgresql-server.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:33-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/postgresql-client.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:33-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/mysql-client.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:33-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/client.rb in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:33-08:00] INFO: Storing updated cookbooks/openstack-ops-database/attributes/default.rb in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/openstack-ops-database/LICENSE in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/openstack-ops-database/CHANGELOG.md in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/openstack-ops-database/metadata.rb in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/openstack-ops-database/README.md in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/xfs/recipes/default.rb in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/xfs/LICENSE in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/CHANGELOG.md in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/metadata.rb in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/TESTING.md in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/Berksfile in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/README.md in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/CONTRIBUTING in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/.kitchen.yml in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/aws/resources/s3_file.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/aws/resources/elastic_lb.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/resources/resource_tag.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/resources/ebs_volume.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/resources/ebs_raid.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/resources/elastic_ip.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/s3_file.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/elastic_lb.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/resource_tag.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/ebs_volume.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/ebs_raid.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/elastic_ip.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/recipes/default.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/libraries/ec2.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/attributes/default.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/LICENSE in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/CHANGELOG.md in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/metadata.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/README.md in the cache. -Feb 21 20:22:38 server2.1 [2014-02-21T20:22:38-08:00] INFO: Storing updated cookbooks/aws/CONTRIBUTING in the cache. -Feb 21 20:22:38 server2.1 [2014-02-21T20:22:38-08:00] INFO: Storing updated cookbooks/openssl/recipes/default.rb in the cache. -Feb 21 20:22:39 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/libraries/secure_password.rb in the cache. -Feb 21 20:22:39 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/LICENSE in the cache. -Feb 21 20:22:39 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/CHANGELOG.md in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/metadata.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/README.md in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/CONTRIBUTING in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/build-essential/recipes/smartos.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/fedora.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/debian.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/rhel.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/default.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/omnios.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/mac_os_x.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/suse.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/solaris2.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/attributes/default.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/LICENSE in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/CHANGELOG.md in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/metadata.rb in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/TESTING.md in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/Berksfile in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/README.md in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/CONTRIBUTING in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/.kitchen.yml in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/resources/repository.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/resources/preference.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/providers/repository.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/providers/preference.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/recipes/default.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/recipes/cacher-ng.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/recipes/cacher-client.rb in the cache. -Feb 21 20:22:43 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/attributes/default.rb in the cache. -Feb 21 20:22:43 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/files/default/apt-proxy-v2.conf in the cache. -Feb 21 20:22:43 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/templates/debian-6.0/acng.conf.erb in the cache. -Feb 21 20:22:43 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/templates/ubuntu-10.04/acng.conf.erb in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/templates/default/acng.conf.erb in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/templates/default/01proxy.erb in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/LICENSE in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/CHANGELOG.md in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/metadata.rb in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/TESTING.md in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/Berksfile in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/README.md in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/CONTRIBUTING in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/.kitchen.yml in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/yum_pgdg_postgresql.rb in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/server.rb in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/server_redhat.rb in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/config_pgtune.rb in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/server_debian.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/contrib.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/default.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/apt_pgdg_postgresql.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/recipes/config_initdb.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/recipes/ruby.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/recipes/client.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/libraries/default.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/attributes/default.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/server_test.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/apt_pgdg_postgresql_test.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/default_test.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/ruby_test.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/support/helpers.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/templates/default/postgresql.conf.erb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/templates/default/pgsql.sysconfig.erb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/templates/default/pg_hba.conf.erb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/LICENSE in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/CHANGELOG.md in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/metadata.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/TESTING.md in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/CONTRIBUTING.md in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/Berksfile in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/README.md in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/.kitchen.yml in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/resources/key.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/resources/repository.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/providers/key.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/providers/repository.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/recipes/test.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/recipes/epel.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/yum.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/default.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/ius.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/repoforge.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/elrepo.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/remi.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/attributes/epel.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/attributes/default.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/attributes/elrepo.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/attributes/remi.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/files/default/tests/minitest/test_test.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/files/default/tests/minitest/default_test.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/files/default/tests/minitest/support/helpers.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/files/default/RPM-GPG-KEY-EPEL-6 in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/templates/default/repo.erb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/templates/default/yum-rhel6.conf.erb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/templates/default/yum-rhel5.conf.erb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/LICENSE in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/CHANGELOG.md in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/metadata.rb in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/yum/CONTRIBUTING.md in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/yum/Berksfile in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/yum/README.md in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/yum/.kitchen.yml in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/openstack-common/recipes/default.rb in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/openstack-common/recipes/logging.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/recipes/databag.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/parse.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/endpoints.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/search.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/database.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/network.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/passwords.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/uri.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/attributes/default.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/templates/default/logging.conf.erb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/LICENSE in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/Strainerfile in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/.tailor in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/CHANGELOG.md in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/metadata.rb in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/Berksfile in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/README.md in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/Gemfile.lock in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/Gemfile in the cache. -Feb 21 20:23:05 server2.1 [2014-02-21T20:23:04-08:00] INFO: Processing package[autoconf] action install (build-essential::rhel line 38) -Feb 21 20:23:47 server2.1 [2014-02-21T20:23:46-08:00] INFO: package[autoconf] installing autoconf-2.63-5.1.el6 from base repository -Feb 21 20:25:48 server2.1 [2014-02-21T20:25:48-08:00] INFO: Processing package[bison] action install (build-essential::rhel line 38) -Feb 21 20:25:49 server2.1 [2014-02-21T20:25:49-08:00] INFO: package[bison] installing bison-2.4.1-5.el6 from base repository -Feb 21 20:26:04 server2.1 [2014-02-21T20:26:03-08:00] INFO: Processing package[flex] action install (build-essential::rhel line 38) -Feb 21 20:26:04 server2.1 [2014-02-21T20:26:03-08:00] INFO: package[flex] installing flex-2.5.35-8.el6 from base repository -Feb 21 20:26:11 server2.1 [2014-02-21T20:26:10-08:00] INFO: Processing package[gcc] action install (build-essential::rhel line 38) -Feb 21 20:26:14 server2.1 [2014-02-21T20:26:13-08:00] INFO: package[gcc] installing gcc-4.4.7-4.el6 from base repository -Feb 21 20:28:09 server2.1 [2014-02-21T20:28:09-08:00] INFO: Processing package[gcc-c++] action install (build-essential::rhel line 38) -Feb 21 20:28:11 server2.1 [2014-02-21T20:28:11-08:00] INFO: package[gcc-c++] installing gcc-c++-4.4.7-4.el6 from base repository -Feb 21 20:28:35 server2.1 [2014-02-21T20:28:35-08:00] INFO: Processing package[kernel-devel] action install (build-essential::rhel line 38) -Feb 21 20:28:38 server2.1 [2014-02-21T20:28:38-08:00] INFO: package[kernel-devel] installing kernel-devel-2.6.32-431.5.1.el6 from updates repository -Feb 21 20:29:49 server2.1 [2014-02-21T20:29:49-08:00] INFO: Processing package[make] action install (build-essential::rhel line 38) -Feb 21 20:29:49 server2.1 [2014-02-21T20:29:49-08:00] INFO: Processing package[m4] action install (build-essential::rhel line 38) -Feb 21 20:29:49 server2.1 [2014-02-21T20:29:49-08:00] INFO: Processing package[mysql] action install (mysql::client line 46) -Feb 21 20:29:49 server2.1 [2014-02-21T20:29:49-08:00] INFO: package[mysql] installing mysql-5.1.73-3.el6_5 from updates repository -Feb 21 20:30:18 server2.1 [2014-02-21T20:30:18-08:00] INFO: Processing package[mysql-devel] action install (mysql::client line 46) -Feb 21 20:30:19 server2.1 [2014-02-21T20:30:19-08:00] INFO: package[mysql-devel] installing mysql-devel-5.1.73-3.el6_5 from updates repository -Feb 21 20:31:06 server2.1 [2014-02-21T20:31:05-08:00] INFO: Processing chef_gem[mysql] action install (mysql::ruby line 31) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for directory[/var/lib/mysql] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous directory[/var/lib/mysql]: /var/chef/cache/cookbooks/mysql/recipes/server.rb:115:in `block in from_file' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current directory[/var/lib/mysql]: /var/chef/cache/cookbooks/mysql/recipes/server.rb:115:in `block in from_file' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] INFO: Could not find previously defined grants.sql resource -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for service[mysql] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous service[mysql]: /var/chef/cache/cookbooks/mysql/recipes/server.rb:161:in `from_file' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current service[mysql]: /var/chef/cache/cookbooks/mysql/recipes/server.rb:225:in `from_file' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[horizon] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[horizon]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[horizon]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[ceilometer] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[ceilometer]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[ceilometer]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] INFO: Processing yum_key[RPM-GPG-KEY-EPEL-6] action add (yum::epel line 22) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] INFO: Adding RPM-GPG-KEY-EPEL-6 GPG key to /etc/pki/rpm-gpg/ -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] INFO: Processing package[gnupg2] action install (/var/chef/cache/cookbooks/yum/providers/key.rb line 32) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing execute[import-rpm-gpg-key-RPM-GPG-KEY-EPEL-6] action nothing (/var/chef/cache/cookbooks/yum/providers/key.rb line 35) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing cookbook_file[/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6] action create (/var/chef/cache/cookbooks/yum/providers/key.rb line 66) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: cookbook_file[/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6] created file /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: cookbook_file[/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6] updated file contents /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: cookbook_file[/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6] mode changed to 644 -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing yum_repository[epel] action add (yum::epel line 27) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Adding epel repository to /etc/yum.repos.d/epel.repo -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] WARN: Cloning resource attributes for yum_key[RPM-GPG-KEY-EPEL-6] from prior resource (CHEF-3694) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] WARN: Previous yum_key[RPM-GPG-KEY-EPEL-6]: /var/chef/cache/cookbooks/yum/recipes/epel.rb:22:in `from_file' -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] WARN: Current yum_key[RPM-GPG-KEY-EPEL-6]: /var/chef/cache/cookbooks/yum/providers/repository.rb:85:in `repo_config' -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing yum_key[RPM-GPG-KEY-EPEL-6] action add (/var/chef/cache/cookbooks/yum/providers/repository.rb line 85) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing execute[yum-makecache] action nothing (/var/chef/cache/cookbooks/yum/providers/repository.rb line 88) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing ruby_block[reload-internal-yum-cache] action nothing (/var/chef/cache/cookbooks/yum/providers/repository.rb line 93) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing template[/etc/yum.repos.d/epel.repo] action create (/var/chef/cache/cookbooks/yum/providers/repository.rb line 100) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: template[/etc/yum.repos.d/epel.repo] created file /etc/yum.repos.d/epel.repo -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: template[/etc/yum.repos.d/epel.repo] updated file contents /etc/yum.repos.d/epel.repo -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: template[/etc/yum.repos.d/epel.repo] mode changed to 644 -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: template[/etc/yum.repos.d/epel.repo] sending run action to execute[yum-makecache] (immediate) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing execute[yum-makecache] action run (/var/chef/cache/cookbooks/yum/providers/repository.rb line 88) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: execute[yum-makecache] ran successfully -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/epel.repo] sending create action to ruby_block[reload-internal-yum-cache] (immediate) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing ruby_block[reload-internal-yum-cache] action create (/var/chef/cache/cookbooks/yum/providers/repository.rb line 93) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: ruby_block[reload-internal-yum-cache] called -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing yum_repository[openstack] action create (openstack-common::default line 103) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Adding and updating openstack repository in /etc/yum.repos.d/openstack.repo -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Cloning resource attributes for execute[yum-makecache] from prior resource (CHEF-3694) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Previous execute[yum-makecache]: /var/chef/cache/cookbooks/yum/providers/repository.rb:88:in `repo_config' -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Current execute[yum-makecache]: /var/chef/cache/cookbooks/yum/providers/repository.rb:88:in `repo_config' -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Cloning resource attributes for ruby_block[reload-internal-yum-cache] from prior resource (CHEF-3694) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Previous ruby_block[reload-internal-yum-cache]: /var/chef/cache/cookbooks/yum/providers/repository.rb:93:in `repo_config' -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Current ruby_block[reload-internal-yum-cache]: /var/chef/cache/cookbooks/yum/providers/repository.rb:93:in `repo_config' -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing execute[yum-makecache] action nothing (/var/chef/cache/cookbooks/yum/providers/repository.rb line 88) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing ruby_block[reload-internal-yum-cache] action nothing (/var/chef/cache/cookbooks/yum/providers/repository.rb line 93) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing template[/etc/yum.repos.d/openstack.repo] action create (/var/chef/cache/cookbooks/yum/providers/repository.rb line 100) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] created file /etc/yum.repos.d/openstack.repo -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] updated file contents /etc/yum.repos.d/openstack.repo -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] mode changed to 644 -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] sending run action to execute[yum-makecache] (immediate) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing execute[yum-makecache] action run (/var/chef/cache/cookbooks/yum/providers/repository.rb line 88) -Feb 21 20:32:51 server2.1 [2014-02-21T20:32:51-08:00] INFO: execute[yum-makecache] ran successfully -Feb 21 20:32:51 server2.1 [2014-02-21T20:32:51-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] sending create action to ruby_block[reload-internal-yum-cache] (immediate) diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/install.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/install.log.template deleted file mode 100644 index 861b3a53..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/install.log.template +++ /dev/null @@ -1,212 +0,0 @@ -Installing libgcc-4.4.7-4.el6.x86_64 -warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY -Installing setup-2.8.14-20.el6_4.1.noarch -Installing filesystem-2.4.30-3.el6.x86_64 -Installing basesystem-10.0-4.el6.noarch -Installing ncurses-base-5.7-3.20090208.el6.x86_64 -Installing kernel-firmware-2.6.32-431.el6.noarch -Installing tzdata-2013g-1.el6.noarch -Installing nss-softokn-freebl-3.14.3-9.el6.x86_64 -Installing glibc-common-2.12-1.132.el6.x86_64 -Installing glibc-2.12-1.132.el6.x86_64 -Installing ncurses-libs-5.7-3.20090208.el6.x86_64 -Installing bash-4.1.2-15.el6_4.x86_64 -Installing libattr-2.4.44-7.el6.x86_64 -Installing libcap-2.16-5.5.el6.x86_64 -Installing zlib-1.2.3-29.el6.x86_64 -Installing info-4.13a-8.el6.x86_64 -Installing popt-1.13-7.el6.x86_64 -Installing chkconfig-1.3.49.3-2.el6_4.1.x86_64 -Installing audit-libs-2.2-2.el6.x86_64 -Installing libcom_err-1.41.12-18.el6.x86_64 -Installing libacl-2.2.49-6.el6.x86_64 -Installing db4-4.7.25-18.el6_4.x86_64 -Installing nspr-4.10.0-1.el6.x86_64 -Installing nss-util-3.15.1-3.el6.x86_64 -Installing readline-6.0-4.el6.x86_64 -Installing libsepol-2.0.41-4.el6.x86_64 -Installing libselinux-2.0.94-5.3.el6_4.1.x86_64 -Installing shadow-utils-4.1.4.2-13.el6.x86_64 -Installing sed-4.2.1-10.el6.x86_64 -Installing bzip2-libs-1.0.5-7.el6_0.x86_64 -Installing libuuid-2.17.2-12.14.el6.x86_64 -Installing libstdc++-4.4.7-4.el6.x86_64 -Installing libblkid-2.17.2-12.14.el6.x86_64 -Installing gawk-3.1.7-10.el6.x86_64 -Installing file-libs-5.04-15.el6.x86_64 -Installing libgpg-error-1.7-4.el6.x86_64 -Installing dbus-libs-1.2.24-7.el6_3.x86_64 -Installing libudev-147-2.51.el6.x86_64 -Installing pcre-7.8-6.el6.x86_64 -Installing grep-2.6.3-4.el6.x86_64 -Installing lua-5.1.4-4.1.el6.x86_64 -Installing sqlite-3.6.20-1.el6.x86_64 -Installing cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 -Installing libidn-1.18-2.el6.x86_64 -Installing expat-2.0.1-11.el6_2.x86_64 -Installing xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64 -Installing elfutils-libelf-0.152-1.el6.x86_64 -Installing libgcrypt-1.4.5-11.el6_4.x86_64 -Installing bzip2-1.0.5-7.el6_0.x86_64 -Installing findutils-4.4.2-6.el6.x86_64 -Installing libselinux-utils-2.0.94-5.3.el6_4.1.x86_64 -Installing checkpolicy-2.0.22-1.el6.x86_64 -Installing cpio-2.10-11.el6_3.x86_64 -Installing which-2.19-6.el6.x86_64 -Installing libxml2-2.7.6-14.el6.x86_64 -Installing libedit-2.11-4.20080712cvs.1.el6.x86_64 -Installing pth-2.0.7-9.3.el6.x86_64 -Installing tcp_wrappers-libs-7.6-57.el6.x86_64 -Installing sysvinit-tools-2.87-5.dsf.el6.x86_64 -Installing libtasn1-2.3-3.el6_2.1.x86_64 -Installing p11-kit-0.18.5-2.el6.x86_64 -Installing p11-kit-trust-0.18.5-2.el6.x86_64 -Installing ca-certificates-2013.1.94-65.0.el6.noarch -Installing device-mapper-persistent-data-0.2.8-2.el6.x86_64 -Installing nss-softokn-3.14.3-9.el6.x86_64 -Installing libnih-1.0.1-7.el6.x86_64 -Installing upstart-0.6.5-12.el6_4.1.x86_64 -Installing file-5.04-15.el6.x86_64 -Installing gmp-4.3.1-7.el6_2.2.x86_64 -Installing libusb-0.1.12-23.el6.x86_64 -Installing MAKEDEV-3.24-6.el6.x86_64 -Installing libutempter-1.1.5-4.1.el6.x86_64 -Installing psmisc-22.6-15.el6_0.1.x86_64 -Installing net-tools-1.60-110.el6_2.x86_64 -Installing vim-minimal-7.2.411-1.8.el6.x86_64 -Installing tar-1.23-11.el6.x86_64 -Installing procps-3.2.8-25.el6.x86_64 -Installing db4-utils-4.7.25-18.el6_4.x86_64 -Installing e2fsprogs-libs-1.41.12-18.el6.x86_64 -Installing libss-1.41.12-18.el6.x86_64 -Installing pinentry-0.7.6-6.el6.x86_64 -Installing binutils-2.20.51.0.2-5.36.el6.x86_64 -Installing m4-1.4.13-5.el6.x86_64 -Installing diffutils-2.8.1-28.el6.x86_64 -Installing make-3.81-20.el6.x86_64 -Installing dash-0.5.5.1-4.el6.x86_64 -Installing ncurses-5.7-3.20090208.el6.x86_64 -Installing groff-1.18.1.4-21.el6.x86_64 -Installing less-436-10.el6.x86_64 -Installing coreutils-libs-8.4-31.el6.x86_64 -Installing gzip-1.3.12-19.el6_4.x86_64 -Installing cracklib-2.8.16-4.el6.x86_64 -Installing cracklib-dicts-2.8.16-4.el6.x86_64 -Installing coreutils-8.4-31.el6.x86_64 -Installing pam-1.1.1-17.el6.x86_64 -Installing module-init-tools-3.9-21.el6_4.x86_64 -Installing hwdata-0.233-9.1.el6.noarch -Installing redhat-logos-60.0.14-12.el6.centos.noarch -Installing plymouth-scripts-0.8.3-27.el6.centos.x86_64 -Installing libpciaccess-0.13.1-2.el6.x86_64 -Installing nss-3.15.1-15.el6.x86_64 -Installing nss-sysinit-3.15.1-15.el6.x86_64 -Installing nss-tools-3.15.1-15.el6.x86_64 -Installing openldap-2.4.23-32.el6_4.1.x86_64 -Installing logrotate-3.7.8-17.el6.x86_64 -Installing gdbm-1.8.0-36.el6.x86_64 -Installing mingetty-1.08-5.el6.x86_64 -Installing keyutils-libs-1.4-4.el6.x86_64 -Installing krb5-libs-1.10.3-10.el6_4.6.x86_64 -Installing openssl-1.0.1e-15.el6.x86_64 -Installing libssh2-1.4.2-1.el6.x86_64 -Installing libcurl-7.19.7-37.el6_4.x86_64 -Installing gnupg2-2.0.14-6.el6_4.x86_64 -Installing gpgme-1.1.8-3.el6.x86_64 -Installing curl-7.19.7-37.el6_4.x86_64 -Installing rpm-libs-4.8.0-37.el6.x86_64 -Installing rpm-4.8.0-37.el6.x86_64 -Installing fipscheck-lib-1.2.0-7.el6.x86_64 -Installing fipscheck-1.2.0-7.el6.x86_64 -Installing mysql-libs-5.1.71-1.el6.x86_64 -Installing ethtool-3.5-1.el6.x86_64 -Installing pciutils-libs-3.1.10-2.el6.x86_64 -Installing plymouth-core-libs-0.8.3-27.el6.centos.x86_64 -Installing libcap-ng-0.6.4-3.el6_0.1.x86_64 -Installing libffi-3.0.5-3.2.el6.x86_64 -Installing python-2.6.6-51.el6.x86_64 -Installing python-libs-2.6.6-51.el6.x86_64 -Installing python-pycurl-7.19.0-8.el6.x86_64 -Installing python-urlgrabber-3.9.1-9.el6.noarch -Installing pygpgme-0.1-18.20090824bzr68.el6.x86_64 -Installing rpm-python-4.8.0-37.el6.x86_64 -Installing python-iniparse-0.3.1-2.1.el6.noarch -Installing slang-2.2.1-1.el6.x86_64 -Installing newt-0.52.11-3.el6.x86_64 -Installing newt-python-0.52.11-3.el6.x86_64 -Installing ustr-1.0.4-9.1.el6.x86_64 -Installing libsemanage-2.0.43-4.2.el6.x86_64 -Installing libaio-0.3.107-10.el6.x86_64 -Installing pkgconfig-0.23-9.1.el6.x86_64 -Installing gamin-0.1.10-9.el6.x86_64 -Installing glib2-2.26.1-3.el6.x86_64 -Installing shared-mime-info-0.70-4.el6.x86_64 -Installing libuser-0.56.13-5.el6.x86_64 -Installing grubby-7.0.15-5.el6.x86_64 -Installing yum-metadata-parser-1.1.2-16.el6.x86_64 -Installing yum-plugin-fastestmirror-1.1.30-14.el6.noarch -Installing yum-3.2.29-40.el6.centos.noarch -Installing dbus-glib-0.86-6.el6.x86_64 -Installing dhcp-common-4.1.1-38.P1.el6.centos.x86_64 -Installing centos-release-6-5.el6.centos.11.1.x86_64 -Installing policycoreutils-2.0.83-19.39.el6.x86_64 -Installing iptables-1.4.7-11.el6.x86_64 -Installing iproute-2.6.32-31.el6.x86_64 -Installing iputils-20071127-17.el6_4.2.x86_64 -Installing util-linux-ng-2.17.2-12.14.el6.x86_64 -Installing initscripts-9.03.40-2.el6.centos.x86_64 -Installing udev-147-2.51.el6.x86_64 -Installing device-mapper-libs-1.02.79-8.el6.x86_64 -Installing device-mapper-1.02.79-8.el6.x86_64 -Installing device-mapper-event-libs-1.02.79-8.el6.x86_64 -Installing openssh-5.3p1-94.el6.x86_64 -Installing device-mapper-event-1.02.79-8.el6.x86_64 -Installing lvm2-libs-2.02.100-8.el6.x86_64 -Installing cryptsetup-luks-libs-1.2.0-7.el6.x86_64 -Installing device-mapper-multipath-libs-0.4.9-72.el6.x86_64 -Installing kpartx-0.4.9-72.el6.x86_64 -Installing libdrm-2.4.45-2.el6.x86_64 -Installing plymouth-0.8.3-27.el6.centos.x86_64 -Installing rsyslog-5.8.10-8.el6.x86_64 -Installing cyrus-sasl-2.1.23-13.el6_3.1.x86_64 -Installing postfix-2.6.6-2.2.el6_1.x86_64 -Installing cronie-anacron-1.4.4-12.el6.x86_64 -Installing cronie-1.4.4-12.el6.x86_64 -Installing crontabs-1.10-33.el6.noarch -Installing ntpdate-4.2.6p5-1.el6.centos.x86_64 -Installing iptables-ipv6-1.4.7-11.el6.x86_64 -Installing selinux-policy-3.7.19-231.el6.noarch -Installing kbd-misc-1.15-11.el6.noarch -Installing kbd-1.15-11.el6.x86_64 -Installing dracut-004-335.el6.noarch -Installing dracut-kernel-004-335.el6.noarch -Installing kernel-2.6.32-431.el6.x86_64 -Installing fuse-2.8.3-4.el6.x86_64 -Installing selinux-policy-targeted-3.7.19-231.el6.noarch -Installing system-config-firewall-base-1.2.27-5.el6.noarch -Installing ntp-4.2.6p5-1.el6.centos.x86_64 -Installing device-mapper-multipath-0.4.9-72.el6.x86_64 -Installing cryptsetup-luks-1.2.0-7.el6.x86_64 -Installing lvm2-2.02.100-8.el6.x86_64 -Installing openssh-clients-5.3p1-94.el6.x86_64 -Installing openssh-server-5.3p1-94.el6.x86_64 -Installing mdadm-3.2.6-7.el6.x86_64 -Installing b43-openfwwf-5.2-4.el6.noarch -Installing dhclient-4.1.1-38.P1.el6.centos.x86_64 -Installing iscsi-initiator-utils-6.2.0.873-10.el6.x86_64 -Installing passwd-0.77-4.el6_2.2.x86_64 -Installing authconfig-6.1.12-13.el6.x86_64 -Installing grub-0.97-83.el6.x86_64 -Installing efibootmgr-0.5.4-11.el6.x86_64 -Installing wget-1.12-1.8.el6.x86_64 -Installing sudo-1.8.6p3-12.el6.x86_64 -Installing audit-2.2-2.el6.x86_64 -Installing e2fsprogs-1.41.12-18.el6.x86_64 -Installing xfsprogs-3.1.1-14.el6.x86_64 -Installing acl-2.2.49-6.el6.x86_64 -Installing attr-2.4.44-7.el6.x86_64 -Installing chef-11.8.0-1.el6.x86_64 -warning: chef-11.8.0-1.el6.x86_64: Header V4 DSA/SHA1 Signature, key ID 83ef826a: NOKEY -Installing bridge-utils-1.2-10.el6.x86_64 -Installing rootfiles-8.1-6.1.el6.noarch -*** FINISHED INSTALLING PACKAGES *** \ No newline at end of file diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/sys.log.template deleted file mode 100644 index 1fbb5602..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_4/server2.1/sys.log.template +++ /dev/null @@ -1,1628 +0,0 @@ -05:50:20,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:50:20,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:50:20,517 INFO kernel:Initializing cgroup subsys cpuset -05:50:20,517 INFO kernel:Initializing cgroup subsys cpu -05:50:20,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:50:20,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,517 INFO kernel:KERNEL supported cpus: -05:50:20,517 INFO kernel: Intel GenuineIntel -05:50:20,517 INFO kernel: AMD AuthenticAMD -05:50:20,517 INFO kernel: Centaur CentaurHauls -05:50:20,517 INFO kernel:Disabled fast string operations -05:50:20,517 INFO kernel:BIOS-provided physical RAM map: -05:50:20,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:50:20,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:50:20,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:50:20,517 INFO kernel:DMI present. -05:50:20,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:50:20,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:50:20,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:50:20,517 INFO kernel:Hypervisor detected: VMware -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:50:20,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:50:20,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:50:20,517 DEBUG kernel:MTRR default type: uncachable -05:50:20,517 DEBUG kernel:MTRR fixed ranges enabled: -05:50:20,517 DEBUG kernel: 00000-9FFFF write-back -05:50:20,517 DEBUG kernel: A0000-BFFFF uncachable -05:50:20,517 DEBUG kernel: C0000-CFFFF write-protect -05:50:20,517 DEBUG kernel: D0000-EFFFF uncachable -05:50:20,517 DEBUG kernel: F0000-FFFFF write-protect -05:50:20,517 DEBUG kernel:MTRR variable ranges enabled: -05:50:20,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:50:20,517 DEBUG kernel: 1 disabled -05:50:20,517 DEBUG kernel: 2 disabled -05:50:20,517 DEBUG kernel: 3 disabled -05:50:20,517 DEBUG kernel: 4 disabled -05:50:20,517 DEBUG kernel: 5 disabled -05:50:20,517 DEBUG kernel: 6 disabled -05:50:20,517 DEBUG kernel: 7 disabled -05:50:20,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:50:20,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:50:20,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:50:20,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:50:20,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:50:20,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:50:20,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:50:20,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:50:20,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:50:20,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:50:20,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:50:20,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:50:20,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:50:20,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,517 INFO kernel:Setting APIC routing to flat. -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:50:20,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:50:20,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:50:20,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:50:20,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:50:20,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:50:20,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:50:20,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:50:20,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:50:20,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:50:20,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:50:20,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:50:20,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:50:20,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:50:20,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:50:20,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:50:20,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:50:20,517 WARNING kernel:Zone PFN ranges: -05:50:20,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:50:20,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:50:20,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:50:20,517 WARNING kernel:Movable zone start PFN for each node -05:50:20,517 WARNING kernel:early_node_map[3] active PFN ranges -05:50:20,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:50:20,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:50:20,520 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:50:20,520 DEBUG kernel:On node 0 totalpages: 524159 -05:50:20,520 DEBUG kernel: DMA zone: 56 pages used for memmap -05:50:20,520 DEBUG kernel: DMA zone: 101 pages reserved -05:50:20,520 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:50:20,520 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:50:20,520 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:50:20,520 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:50:20,520 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,520 INFO kernel:Setting APIC routing to flat. -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:50:20,521 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:50:20,521 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:50:20,521 DEBUG kernel:ACPI: IRQ0 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ2 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ9 used by override. -05:50:20,521 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:50:20,521 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:50:20,521 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:50:20,521 DEBUG kernel:nr_irqs_gsi: 24 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:50:20,521 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:50:20,521 INFO kernel:Booting paravirtualized kernel on bare hardware -05:50:20,521 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:50:20,521 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:50:20,521 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:50:20,521 INFO kernel:pcpu-alloc: [0] 0 1 -05:50:20,521 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:50:20,521 WARNING kernel:Policy zone: DMA32 -05:50:20,521 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,521 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:50:20,521 INFO kernel:Checking aperture... -05:50:20,521 INFO kernel:No AGP bridge found -05:50:20,521 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:50:20,521 INFO kernel:Hierarchical RCU implementation. -05:50:20,521 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:50:20,521 INFO kernel:Extended CMOS year: 2000 -05:50:20,521 WARNING kernel:Console: colour VGA+ 80x25 -05:50:20,521 INFO kernel:console [tty0] enabled -05:50:20,521 INFO kernel:allocated 8388608 bytes of page_cgroup -05:50:20,521 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:50:20,521 DEBUG kernel:hpet clockevent registered -05:50:20,521 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:50:20,521 WARNING kernel:Detected 2400.085 MHz processor. -05:50:20,521 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:50:20,521 INFO kernel:pid_max: default: 32768 minimum: 301 -05:50:20,521 INFO kernel:Security Framework initialized -05:50:20,521 INFO kernel:SELinux: Initializing. -05:50:20,521 DEBUG kernel:SELinux: Starting in permissive mode -05:50:20,521 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:50:20,521 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:50:20,521 WARNING kernel:Mount-cache hash table entries: 256 -05:50:20,521 INFO kernel:Initializing cgroup subsys ns -05:50:20,521 INFO kernel:Initializing cgroup subsys cpuacct -05:50:20,521 INFO kernel:Initializing cgroup subsys memory -05:50:20,521 INFO kernel:Initializing cgroup subsys devices -05:50:20,521 INFO kernel:Initializing cgroup subsys freezer -05:50:20,521 INFO kernel:Initializing cgroup subsys net_cls -05:50:20,521 INFO kernel:Initializing cgroup subsys blkio -05:50:20,521 INFO kernel:Initializing cgroup subsys perf_event -05:50:20,521 INFO kernel:Initializing cgroup subsys net_prio -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:CPU: Physical Processor ID: 0 -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:alternatives: switching to unfair spinlock -05:50:20,521 INFO kernel:ACPI: Core revision 20090903 -05:50:20,521 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:50:20,521 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:50:20,521 INFO kernel:APIC routing finalized to flat. -05:50:20,521 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:50:20,521 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:50:20,521 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:50:20,521 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:50:20,521 INFO kernel:... version: 3 -05:50:20,521 INFO kernel:... bit width: 48 -05:50:20,521 INFO kernel:... generic registers: 4 -05:50:20,521 INFO kernel:... value mask: 0000ffffffffffff -05:50:20,521 INFO kernel:... max period: 000000007fffffff -05:50:20,521 INFO kernel:... fixed-purpose events: 3 -05:50:20,521 INFO kernel:... event mask: 000000070000000f -05:50:20,521 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:50:20,521 INFO kernel:Booting Node 0, Processors #1 Ok. -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:50:20,521 INFO kernel:Brought up 2 CPUs -05:50:20,521 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:50:20,521 DEBUG kernel:sizeof(vma)=200 bytes -05:50:20,521 DEBUG kernel:sizeof(page)=56 bytes -05:50:20,521 DEBUG kernel:sizeof(inode)=592 bytes -05:50:20,521 DEBUG kernel:sizeof(dentry)=192 bytes -05:50:20,521 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:50:20,521 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:50:20,521 DEBUG kernel:sizeof(skbuff)=232 bytes -05:50:20,521 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:50:20,521 INFO kernel:devtmpfs: initialized -05:50:20,521 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:50:20,521 INFO kernel:regulator: core version 0.5 -05:50:20,521 INFO kernel:NET: Registered protocol family 16 -05:50:20,521 INFO kernel:ACPI: bus type pci registered -05:50:20,521 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:50:20,521 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:50:20,521 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:50:20,521 INFO kernel:PCI: Using configuration type 1 for base access -05:50:20,521 WARNING kernel:bio: create slab at 0 -05:50:20,521 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:50:20,521 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:50:20,521 INFO kernel:ACPI: Interpreter enabled -05:50:20,521 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:50:20,521 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:50:20,521 INFO kernel:ACPI: No dock devices found. -05:50:20,521 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:50:20,521 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:50:20,521 INFO kernel:PCI host bridge to bus 0000:00 -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:50:20,521 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:50:20,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,522 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:50:20,522 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:50:20,522 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:50:20,522 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:50:20,522 INFO kernel:vgaarb: loaded -05:50:20,522 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:50:20,522 NOTICE kernel:SCSI subsystem initialized -05:50:20,522 DEBUG kernel:libata version 3.00 loaded. -05:50:20,522 INFO kernel:usbcore: registered new interface driver usbfs -05:50:20,522 INFO kernel:usbcore: registered new interface driver hub -05:50:20,522 INFO kernel:usbcore: registered new device driver usb -05:50:20,522 INFO kernel:PCI: Using ACPI for IRQ routing -05:50:20,522 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:50:20,522 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:50:20,522 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:50:20,522 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:50:20,522 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:50:20,522 INFO kernel:NetLabel: Initializing -05:50:20,522 INFO kernel:NetLabel: domain hash size = 128 -05:50:20,522 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:50:20,522 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:50:20,522 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:50:20,522 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:50:20,522 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:50:20,522 INFO kernel:Switching to clocksource hpet -05:50:20,522 INFO kernel:pnp: PnP ACPI init -05:50:20,522 INFO kernel:ACPI: bus type pnp registered -05:50:20,522 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:50:20,522 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0080] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:50:20,522 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:50:20,522 DEBUG kernel:pnp 00:02: [dma 4] -05:50:20,522 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:50:20,522 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:50:20,522 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:50:20,522 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:50:20,522 DEBUG kernel:pnp 00:04: [irq 8] -05:50:20,522 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:50:20,522 DEBUG kernel:pnp 00:05: [io 0x0061] -05:50:20,522 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0060] -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0064] -05:50:20,522 DEBUG kernel:pnp 00:06: [irq 1] -05:50:20,522 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:50:20,522 DEBUG kernel:pnp 00:07: [irq 12] -05:50:20,522 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:50:20,522 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:50:20,522 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:50:20,522 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:50:20,522 DEBUG kernel:pnp 00:09: [irq 7] -05:50:20,522 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:50:20,522 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:50:20,522 DEBUG kernel:pnp 00:0a: [irq 4] -05:50:20,522 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:50:20,522 DEBUG kernel:pnp 00:0b: [irq 3] -05:50:20,522 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:50:20,522 DEBUG kernel:pnp 00:0c: [irq 6] -05:50:20,522 DEBUG kernel:pnp 00:0c: [dma 2] -05:50:20,522 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 INFO kernel:pnp: PnP ACPI: found 14 devices -05:50:20,522 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:50:20,522 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:50:20,522 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:50:20,522 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:50:20,522 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:50:20,522 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:50:20,523 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,524 INFO kernel:NET: Registered protocol family 2 -05:50:20,524 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:50:20,524 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:50:20,524 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:50:20,524 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:50:20,524 INFO kernel:TCP reno registered -05:50:20,524 INFO kernel:NET: Registered protocol family 1 -05:50:20,524 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:50:20,524 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:50:20,524 INFO kernel:Trying to unpack rootfs image as initramfs... -05:50:20,524 INFO kernel:Freeing initrd memory: 32601k freed -05:50:20,524 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:50:20,524 INFO kernel:audit: initializing netlink socket (disabled) -05:50:20,524 NOTICE kernel:type=2000 audit(1021096218.805:1): initialized -05:50:20,524 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:50:20,524 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:50:20,524 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:50:20,524 INFO kernel:msgmni has been set to 4005 -05:50:20,526 DEBUG kernel:SELinux: Registering netfilter hooks -05:50:20,526 INFO kernel:alg: No test for stdrng (krng) -05:50:20,526 WARNING kernel:ksign: Installing public key data -05:50:20,526 WARNING kernel:Loading keyring -05:50:20,526 WARNING kernel:- Added public key 8A44323FB303E068 -05:50:20,526 WARNING kernel: - key was been created 363988241 seconds in future -05:50:20,526 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:50:20,526 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:50:20,526 INFO kernel:io scheduler noop registered -05:50:20,526 INFO kernel:io scheduler anticipatory registered -05:50:20,526 INFO kernel:io scheduler deadline registered -05:50:20,526 INFO kernel:io scheduler cfq registered (default) -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:50:20,526 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:50:20,526 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:50:20,526 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:50:20,526 INFO kernel:acpiphp: Slot [32] registered -05:50:20,526 INFO kernel:acpiphp: Slot [33] registered -05:50:20,526 INFO kernel:acpiphp: Slot [34] registered -05:50:20,526 INFO kernel:acpiphp: Slot [35] registered -05:50:20,526 INFO kernel:acpiphp: Slot [36] registered -05:50:20,526 INFO kernel:acpiphp: Slot [37] registered -05:50:20,526 INFO kernel:acpiphp: Slot [38] registered -05:50:20,527 INFO kernel:acpiphp: Slot [39] registered -05:50:20,527 INFO kernel:acpiphp: Slot [40] registered -05:50:20,527 INFO kernel:acpiphp: Slot [41] registered -05:50:20,527 INFO kernel:acpiphp: Slot [42] registered -05:50:20,527 INFO kernel:acpiphp: Slot [43] registered -05:50:20,527 INFO kernel:acpiphp: Slot [44] registered -05:50:20,527 INFO kernel:acpiphp: Slot [45] registered -05:50:20,527 INFO kernel:acpiphp: Slot [46] registered -05:50:20,527 INFO kernel:acpiphp: Slot [47] registered -05:50:20,527 INFO kernel:acpiphp: Slot [48] registered -05:50:20,527 INFO kernel:acpiphp: Slot [49] registered -05:50:20,527 INFO kernel:acpiphp: Slot [50] registered -05:50:20,527 INFO kernel:acpiphp: Slot [51] registered -05:50:20,527 INFO kernel:acpiphp: Slot [52] registered -05:50:20,527 INFO kernel:acpiphp: Slot [53] registered -05:50:20,527 INFO kernel:acpiphp: Slot [54] registered -05:50:20,527 INFO kernel:acpiphp: Slot [55] registered -05:50:20,527 INFO kernel:acpiphp: Slot [56] registered -05:50:20,527 INFO kernel:acpiphp: Slot [57] registered -05:50:20,527 INFO kernel:acpiphp: Slot [58] registered -05:50:20,527 INFO kernel:acpiphp: Slot [59] registered -05:50:20,527 INFO kernel:acpiphp: Slot [60] registered -05:50:20,527 INFO kernel:acpiphp: Slot [61] registered -05:50:20,527 INFO kernel:acpiphp: Slot [62] registered -05:50:20,527 INFO kernel:acpiphp: Slot [63] registered -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:50:20,527 INFO kernel:ipmi message handler version 39.2 -05:50:20,527 INFO kernel:IPMI System Interface driver. -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:50:20,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:50:20,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:50:20,527 INFO kernel:ACPI: Power Button [PWRF] -05:50:20,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:50:20,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:50:20,527 INFO kernel:GHES: HEST is not enabled! -05:50:20,527 INFO kernel:Non-volatile memory driver v1.3 -05:50:20,527 INFO kernel:Linux agpgart interface v0.103 -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:50:20,527 INFO kernel:crash memory driver: version 1.1 -05:50:20,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:50:20,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:brd: module loaded -05:50:20,527 INFO kernel:loop: module loaded -05:50:20,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:50:20,527 INFO kernel:Fixed MDIO Bus: probed -05:50:20,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:50:20,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:50:20,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:50:20,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:50:20,527 INFO kernel:Refined TSC clocksource calibration: 2400.081 MHz. -05:50:20,527 INFO kernel:Switching to clocksource tsc -05:50:20,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:50:20,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:50:20,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:50:20,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:50:20,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:50:20,527 INFO kernel:cpuidle: using governor ladder -05:50:20,527 INFO kernel:cpuidle: using governor menu -05:50:20,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:50:20,527 INFO kernel:usbcore: registered new interface driver hiddev -05:50:20,527 INFO kernel:usbcore: registered new interface driver usbhid -05:50:20,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:50:20,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:50:20,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:50:20,527 INFO kernel:TCP cubic registered -05:50:20,527 INFO kernel:Initializing XFRM netlink socket -05:50:20,527 INFO kernel:NET: Registered protocol family 17 -05:50:20,527 WARNING kernel:registered taskstats version 1 -05:50:20,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:50:20,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:50:20 UTC (1021096220) -05:50:20,527 INFO kernel:Initalizing network drop monitor service -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:50:20,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:50:20,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:50:22,553 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:50:22,564 INFO kernel:Loading iSCSI transport class v2.0-870. -05:50:22,583 NOTICE kernel:iscsi: registered transport (tcp) -05:50:22,589 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:50:22,600 INFO kernel:FDC 0 is a post-1991 82077 -05:50:22,604 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:50:22,608 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:50:22,615 INFO kernel:No iBFT detected. -05:50:22,648 INFO kernel:NET: Registered protocol family 10 -05:50:22,648 INFO kernel:lo: Disabled Privacy Extensions -05:50:22,720 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:50:22,720 INFO kernel:scsi0 : ata_piix -05:50:22,721 INFO kernel:scsi1 : ata_piix -05:50:22,721 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:50:22,721 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:50:22,731 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:22,907 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:50:22,913 INFO kernel:ata2.00: configured for UDMA/33 -05:50:22,913 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:50:22,936 INFO kernel:Fusion MPT base driver 3.04.20 -05:50:22,936 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:50:22,947 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:50:22,947 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:50:22,947 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:22,947 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:22,947 INFO kernel:mptbase: ioc0: Initiating bringup -05:50:22,966 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:50:23,007 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:50:23,035 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,035 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:50:23,035 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,036 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,036 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:50:23,037 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,061 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:50:23,061 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:50:23,061 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:50:23,072 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:50:23,072 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:50:23,072 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:50:23,072 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,072 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:50:23,072 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:b8 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:50:23,422 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:50:23,422 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,422 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:50:23,422 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:c2 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:50:23,766 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:50:23,766 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,766 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:50:23,766 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:cc -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:50:24,116 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:24,116 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:d6 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 INFO kernel: sda: -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 INFO kernel: sdb: -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,502 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:50:24,505 WARNING kernel: sda1 sda2 -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,531 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:50:24,537 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:50:24,538 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:50:24,538 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:50:28,728 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:31,010 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:50:31,010 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:50:31,012 INFO NetworkManager: trying to start the modem manager... -05:50:31,016 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:50:31,016 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:50:31,017 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:50:31,018 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:50:31,023 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:50:31,025 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: Networking is enabled by state file -05:50:31,044 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:50:31,044 INFO kernel:All bugs added by David S. Miller -05:50:31,045 INFO NetworkManager: (eth0): carrier is OFF -05:50:31,045 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:50:31,045 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:50:31,045 INFO NetworkManager: (eth0): now managed -05:50:31,045 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:50:31,045 INFO NetworkManager: (eth0): bringing up device. -05:50:31,051 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,055 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:50:31,056 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,056 INFO NetworkManager: (eth0): preparing device. -05:50:31,056 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:50:31,057 INFO NetworkManager: (eth1): carrier is OFF -05:50:31,058 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:50:31,058 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:50:31,058 INFO NetworkManager: (eth1): now managed -05:50:31,058 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:50:31,058 INFO NetworkManager: (eth1): bringing up device. -05:50:31,063 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,068 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:50:31,068 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,068 INFO NetworkManager: (eth1): preparing device. -05:50:31,068 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:50:31,069 INFO NetworkManager: (eth2): carrier is OFF -05:50:31,070 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:50:31,070 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:50:31,070 INFO NetworkManager: (eth2): now managed -05:50:31,070 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:50:31,070 INFO NetworkManager: (eth2): bringing up device. -05:50:31,076 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,080 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:50:31,080 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,080 INFO NetworkManager: (eth2): preparing device. -05:50:31,080 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:50:31,081 INFO NetworkManager: (eth3): carrier is OFF -05:50:31,082 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:50:31,082 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:50:31,082 INFO NetworkManager: (eth3): now managed -05:50:31,082 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:50:31,082 INFO NetworkManager: (eth3): bringing up device. -05:50:31,086 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,091 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:50:31,091 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,091 INFO NetworkManager: (eth3): preparing device. -05:50:31,091 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:50:31,093 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,095 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,096 INFO NetworkManager: Trying to start the supplicant... -05:50:31,097 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:50:31,098 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:50:31,104 INFO NetworkManager: wpa_supplicant started -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:33,054 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:50:33,057 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:50:33,057 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:50:33,058 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:50:33,060 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:50:33,062 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:50:33,062 INFO NetworkManager: dhclient started with pid 654 -05:50:33,063 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:50:33,063 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:50:33,063 INFO dhclient: All rights reserved. -05:50:33,063 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:50:33,063 INFO dhclient: -05:50:33,063 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:50:33,066 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:50:33,068 INFO dhclient: Listening on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on Socket/fallback -05:50:37,004 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x3433ec2c) -05:50:37,048 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:50:37,048 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x3433ec2c) -05:50:38,084 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x3433ec2c) -05:50:38,087 INFO dhclient: bound to 10.145.88.104 -- renewal in 10764 seconds. -05:50:38,087 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:50:38,087 INFO NetworkManager: address 10.145.88.104 -05:50:38,087 INFO NetworkManager: prefix 23 (255.255.254.0) -05:50:38,087 INFO NetworkManager: gateway 10.145.88.1 -05:50:38,087 INFO NetworkManager: hostname 'server2' -05:50:38,087 INFO NetworkManager: nameserver '10.145.88.211' -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:50:39,089 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:50:39,090 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:50:39,090 INFO NetworkManager: Setting system hostname to 'server2' (from DHCPv4) -05:50:39,091 INFO NetworkManager: Activation (eth0) successful, device activated. -05:50:39,092 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:46,967 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/nm-dhcp-client.conf, line 1, column 0: no element found -05:51:46,969 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/org.freedesktop.PolicyKit1.conf, line 1, column 0: no element found -05:51:46,976 NOTICE dbus-daemon: [system] Reloaded configuration -05:51:47,135 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,214 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,702 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:51:47,702 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:51:47,706 DEBUG kernel:SELinux: Completing initialization. -05:51:47,706 DEBUG kernel:SELinux: Setting up existing superblocks. -05:51:47,706 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:51:47,709 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:51:47,751 NOTICE kernel:type=1403 audit(1021096307.739:2): policy loaded auid=4294967295 ses=4294967295 -05:51:47,786 INFO kernel:md: raid0 personality registered for level 0 -05:51:47,793 INFO kernel:md: raid1 personality registered for level 1 -05:51:47,797 INFO kernel:async_tx: api initialized (async) -05:51:47,802 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:51:47,810 INFO kernel: generic_sse: 9176.000 MB/sec -05:51:47,810 INFO kernel:xor: using function: generic_sse (9176.000 MB/sec) -05:51:47,834 WARNING kernel:raid6: sse2x1 4742 MB/s -05:51:47,851 WARNING kernel:raid6: sse2x2 7117 MB/s -05:51:47,868 WARNING kernel:raid6: sse2x4 7660 MB/s -05:51:47,868 WARNING kernel:raid6: using algorithm sse2x4 (7660 MB/s) -05:51:47,868 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:51:47,882 INFO kernel:md: raid6 personality registered for level 6 -05:51:47,882 INFO kernel:md: raid5 personality registered for level 5 -05:51:47,882 INFO kernel:md: raid4 personality registered for level 4 -05:51:47,893 INFO kernel:md: raid10 personality registered for level 10 -05:51:47,896 INFO kernel:md: linear personality registered for level -1 -05:51:47,909 INFO kernel:device-mapper: uevent: version 1.0.3 -05:51:47,909 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:51:47,940 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:51:47,944 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:52:05,224 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:05,224 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:05,225 INFO kernel: sda: sda1 -05:52:06,013 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,013 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,023 INFO kernel: sda: -05:52:06,365 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,365 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,415 INFO kernel: sda: sda1 -05:52:09,171 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:09,171 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:09,171 INFO kernel: sda: sda1 sda2 -05:52:11,280 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:11,280 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:11,280 INFO kernel: sda: sda1 sda2 sda3 -05:52:44,551 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:52:45,044 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,053 INFO kernel:EXT3-fs (dm-0): using internal journal -05:52:45,053 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:52:45,053 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:52:45,103 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,170 INFO kernel:EXT3-fs (sda1): using internal journal -05:52:45,170 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:52:45,170 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:52:45,250 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:45,384 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,439 INFO kernel:EXT3-fs (dm-1): using internal journal -05:52:45,439 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:52:45,439 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:52:45,604 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,648 INFO kernel:EXT3-fs (dm-2): using internal journal -05:52:45,648 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:52:45,648 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:52:45,851 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,875 INFO kernel:EXT3-fs (dm-3): using internal journal -05:52:45,875 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:52:45,875 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:52:54,110 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:54,124 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,143 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:55,145 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -06:11:24,179 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,305 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,821 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:24,821 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/anaconda.log.template deleted file mode 100644 index f04da66a..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/anaconda.log.template +++ /dev/null @@ -1,286 +0,0 @@ -05:51:20,534 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af - -05:51:20,534 INFO : text mode forced from cmdline -05:51:20,534 DEBUG : readNetInfo /tmp/s390net not found, early return -05:51:20,534 INFO : anaconda version 13.21.215 on x86_64 starting -05:51:20,656 DEBUG : Saving module ipv6 -05:51:20,656 DEBUG : Saving module iscsi_ibft -05:51:20,656 DEBUG : Saving module iscsi_boot_sysfs -05:51:20,656 DEBUG : Saving module pcspkr -05:51:20,656 DEBUG : Saving module edd -05:51:20,656 DEBUG : Saving module floppy -05:51:20,656 DEBUG : Saving module iscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi_tcp -05:51:20,656 DEBUG : Saving module libiscsi -05:51:20,656 DEBUG : Saving module scsi_transport_iscsi -05:51:20,656 DEBUG : Saving module squashfs -05:51:20,656 DEBUG : Saving module cramfs -05:51:20,656 DEBUG : probing buses -05:51:20,693 DEBUG : waiting for hardware to initialize -05:51:27,902 DEBUG : probing buses -05:51:27,925 DEBUG : waiting for hardware to initialize -05:51:47,187 INFO : getting kickstart file -05:51:47,196 INFO : eth0 has link, using it -05:51:47,208 INFO : doing kickstart... setting it up -05:51:47,208 DEBUG : activating device eth0 -05:51:52,221 INFO : wait_for_iface_activation (2502): device eth0 activated -05:51:52,222 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,223 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server1.1 -05:51:52,611 INFO : setting up kickstart -05:51:52,611 INFO : kickstart forcing text mode -05:51:52,611 INFO : kickstartFromUrl -05:51:52,612 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:51:52,612 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:51:52,616 INFO : drive status is CDS_TRAY_OPEN -05:51:52,616 ERROR : Drive tray reports open when it should be closed -05:52:07,635 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,636 DEBUG : going to set language to en_US.UTF-8 -05:52:07,636 INFO : setting language to en_US.UTF-8 -05:52:07,654 INFO : starting STEP_METHOD -05:52:07,654 DEBUG : loaderData->method is set, adding skipMethodDialog -05:52:07,654 DEBUG : skipMethodDialog is set -05:52:07,663 INFO : starting STEP_STAGE2 -05:52:07,663 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:07,663 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:52:07,780 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:52:07,780 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:52:07,780 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:52:07,814 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:52:07,815 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,354 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:52:47,354 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:52:47,403 INFO : Loading SELinux policy -05:52:48,130 INFO : getting ready to spawn shell now -05:52:48,359 INFO : Running anaconda script /usr/bin/anaconda -05:52:54,804 INFO : CentOS Linux is the highest priority installclass, using it -05:52:54,867 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:52:54,868 INFO : Running kickstart %%pre script(s) -05:52:54,868 WARNING : '/bin/sh' specified as full path -05:52:56,966 INFO : All kickstart %%pre script(s) have been run -05:52:57,017 INFO : ISCSID is /usr/sbin/iscsid -05:52:57,017 INFO : no initiator set -05:52:57,128 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:52:57,137 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:52:57,138 INFO : no /etc/zfcp.conf; not configuring zfcp -05:53:00,902 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -05:53:00,903 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:53:00,903 INFO : Display mode = t -05:53:00,903 INFO : Default encoding = utf-8 -05:53:01,064 INFO : Detected 2016M of memory -05:53:01,064 INFO : Swap attempt of 4032M -05:53:01,398 INFO : ISCSID is /usr/sbin/iscsid -05:53:01,399 INFO : no initiator set -05:53:05,059 INFO : setting installation environment hostname to server1 -05:53:05,104 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:53:05,276 INFO : Detected 2016M of memory -05:53:05,277 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:53:05,277 INFO : Swap attempt of 3276M -05:53:05,453 WARNING : step installtype does not exist -05:53:05,454 WARNING : step confirminstall does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,454 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,455 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,456 WARNING : step complete does not exist -05:53:05,457 WARNING : step complete does not exist -05:53:05,457 INFO : moving (1) to step setuptime -05:53:05,458 DEBUG : setuptime is a direct step -22:53:05,458 WARNING : '/usr/sbin/hwclock' specified as full path -22:53:06,002 INFO : leaving (1) step setuptime -22:53:06,003 INFO : moving (1) to step autopartitionexecute -22:53:06,003 DEBUG : autopartitionexecute is a direct step -22:53:06,138 INFO : leaving (1) step autopartitionexecute -22:53:06,138 INFO : moving (1) to step storagedone -22:53:06,138 DEBUG : storagedone is a direct step -22:53:06,138 INFO : leaving (1) step storagedone -22:53:06,139 INFO : moving (1) to step enablefilesystems -22:53:06,139 DEBUG : enablefilesystems is a direct step -22:53:10,959 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:53:41,215 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:53:57,388 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:54:14,838 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:54:21,717 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:54:27,576 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:54:40,058 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:54:41,949 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:54:41,950 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-rootvol on /mnt/sysimage as ext3 with options defaults -22:54:42,826 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:54:43,148 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:54:43,158 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:54:43,164 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:54:43,207 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-homevol on /mnt/sysimage/home as ext3 with options defaults -22:54:43,434 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,435 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:54:43,439 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:54:43,496 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:54:43,609 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:54:43,874 DEBUG : isys.py:mount()- going to mount /dev/mapper/server1-varvol on /mnt/sysimage/var as ext3 with options defaults -22:54:44,056 INFO : leaving (1) step enablefilesystems -22:54:44,057 INFO : moving (1) to step bootloadersetup -22:54:44,057 DEBUG : bootloadersetup is a direct step -22:54:44,061 INFO : leaving (1) step bootloadersetup -22:54:44,061 INFO : moving (1) to step reposetup -22:54:44,061 DEBUG : reposetup is a direct step -22:54:56,952 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:54:56,953 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:54:57,133 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:54:57,454 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:54:58,637 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:54:58,971 INFO : leaving (1) step reposetup -22:54:58,971 INFO : moving (1) to step basepkgsel -22:54:58,972 DEBUG : basepkgsel is a direct step -22:54:58,986 WARNING : not adding Base group -22:54:59,388 INFO : leaving (1) step basepkgsel -22:54:59,388 INFO : moving (1) to step postselection -22:54:59,388 DEBUG : postselection is a direct step -22:54:59,390 INFO : selected kernel package for kernel -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:54:59,848 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:54:59,849 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:54:59,850 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:54:59,851 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:54:59,852 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:54:59,853 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:54:59,854 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:54:59,855 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:55:07,745 INFO : leaving (1) step postselection -22:55:07,745 INFO : moving (1) to step install -22:55:07,748 INFO : leaving (1) step install -22:55:07,748 INFO : moving (1) to step preinstallconfig -22:55:07,748 DEBUG : preinstallconfig is a direct step -22:55:08,087 DEBUG : isys.py:mount()- going to mount /selinux on /mnt/sysimage/selinux as selinuxfs with options defaults -22:55:08,091 DEBUG : isys.py:mount()- going to mount /proc/bus/usb on /mnt/sysimage/proc/bus/usb as usbfs with options defaults -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,102 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:55:08,118 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:55:08,122 INFO : leaving (1) step preinstallconfig -22:55:08,122 INFO : moving (1) to step installpackages -22:55:08,122 DEBUG : installpackages is a direct step -22:55:08,122 INFO : Preparing to install packages -23:17:06,152 INFO : leaving (1) step installpackages -23:17:06,153 INFO : moving (1) to step postinstallconfig -23:17:06,153 DEBUG : postinstallconfig is a direct step -23:17:06,162 DEBUG : Removing cachedir: /mnt/sysimage/var/cache/yum/anaconda-CentOS-201311291202.x86_64 -23:17:06,181 DEBUG : Removing headers and packages from /mnt/sysimage/var/cache/yum/ppa_repo -23:17:06,183 INFO : leaving (1) step postinstallconfig -23:17:06,184 INFO : moving (1) to step writeconfig -23:17:06,184 DEBUG : writeconfig is a direct step -23:17:06,184 INFO : Writing main configuration -23:17:06,219 WARNING : '/usr/sbin/authconfig' specified as full path -23:17:11,643 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,703 WARNING : '/usr/sbin/lokkit' specified as full path -23:17:11,885 INFO : removing libuser.conf at /tmp/libuser.WMDW9M -23:17:11,885 INFO : created new libuser.conf at /tmp/libuser.WMDW9M with instPath="/mnt/sysimage" -23:17:12,722 INFO : leaving (1) step writeconfig -23:17:12,722 INFO : moving (1) to step firstboot -23:17:12,723 DEBUG : firstboot is a direct step -23:17:12,723 INFO : leaving (1) step firstboot -23:17:12,723 INFO : moving (1) to step instbootloader -23:17:12,724 DEBUG : instbootloader is a direct step -23:17:14,664 WARNING : '/sbin/grub-install' specified as full path -23:17:15,006 WARNING : '/sbin/grub' specified as full path -23:17:16,039 INFO : leaving (1) step instbootloader -23:17:16,040 INFO : moving (1) to step reipl -23:17:16,040 DEBUG : reipl is a direct step -23:17:16,040 INFO : leaving (1) step reipl -23:17:16,040 INFO : moving (1) to step writeksconfig -23:17:16,040 DEBUG : writeksconfig is a direct step -23:17:16,041 INFO : Writing autokickstart file -23:17:16,070 INFO : leaving (1) step writeksconfig -23:17:16,071 INFO : moving (1) to step setfilecon -23:17:16,071 DEBUG : setfilecon is a direct step -23:17:16,071 INFO : setting SELinux contexts for anaconda created files -23:17:17,822 INFO : leaving (1) step setfilecon -23:17:17,822 INFO : moving (1) to step copylogs -23:17:17,822 DEBUG : copylogs is a direct step -23:17:17,822 INFO : Copying anaconda logs -23:17:17,825 INFO : leaving (1) step copylogs -23:17:17,825 INFO : moving (1) to step methodcomplete -23:17:17,825 DEBUG : methodcomplete is a direct step -23:17:17,825 INFO : leaving (1) step methodcomplete -23:17:17,826 INFO : moving (1) to step postscripts -23:17:17,826 DEBUG : postscripts is a direct step -23:17:17,826 INFO : Running kickstart %%post script(s) -23:17:17,858 WARNING : '/bin/sh' specified as full path -23:17:21,002 INFO : All kickstart %%post script(s) have been run -23:17:21,002 INFO : leaving (1) step postscripts -23:17:21,002 INFO : moving (1) to step dopostaction -23:17:21,002 DEBUG : dopostaction is a direct step -23:17:21,003 INFO : leaving (1) step dopostaction diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/chef-client.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/chef-client.log.template deleted file mode 100644 index 58640d9d..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/chef-client.log.template +++ /dev/null @@ -1,422 +0,0 @@ -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: execute[Keystone: sleep] ran successfully -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing directory[/etc/keystone] action create (openstack-identity::server line 73) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: directory[/etc/keystone] owner changed to 163 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: directory[/etc/keystone] mode changed to 700 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing directory[/etc/keystone/ssl] action create (openstack-identity::server line 79) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing file[/var/lib/keystone/keystone.db] action delete (openstack-identity::server line 87) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing execute[keystone-manage pki_setup] action run (openstack-identity::server line 91) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing template[/etc/keystone/keystone.conf] action create (openstack-identity::server line 140) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] backed up to /var/chef/backup/etc/keystone/keystone.conf.chef-20140221203911.069202 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] updated file contents /etc/keystone/keystone.conf -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] owner changed to 163 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] mode changed to 644 -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: template[/etc/keystone/keystone.conf] sending restart action to service[keystone] (immediate) -Feb 21 20:39:11 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing service[keystone] action restart (openstack-identity::server line 64) -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: service[keystone] restarted -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: service[keystone] sending run action to execute[Keystone: sleep] (immediate) -Feb 21 20:39:12 server1.1 [2014-02-21T20:39:11-08:00] INFO: Processing execute[Keystone: sleep] action run (openstack-identity::server line 58) -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: execute[Keystone: sleep] ran successfully -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: Processing template[/etc/keystone/default_catalog.templates] action create (openstack-identity::server line 158) -Feb 21 20:39:22 server1.1 [2014-02-21T20:39:21-08:00] INFO: Processing execute[keystone-manage db_sync] action run (openstack-identity::server line 172) -Feb 21 20:39:43 server1.1 [2014-02-21T20:39:42-08:00] INFO: execute[keystone-manage db_sync] ran successfully -Feb 21 20:39:43 server1.1 [2014-02-21T20:39:42-08:00] INFO: Processing bash[bootstrap-keystone-admin] action run (openstack-identity::registration line 40) -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: bash[bootstrap-keystone-admin] ran successfully -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Processing openstack-identity_register[Register 'admin' Tenant] action create_tenant (openstack-identity::registration line 80) -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Tenant 'admin' already exists.. Not creating. -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Tenant UUID: 87cf46951cc14159bd16b68e3eb96321 -Feb 21 20:39:45 server1.1 [2014-02-21T20:39:44-08:00] INFO: Processing openstack-identity_register[Register 'service' Tenant] action create_tenant (openstack-identity::registration line 80) -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Created tenant 'service' -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Processing openstack-identity_register[Register 'admin' Role] action create_role (openstack-identity::registration line 92) -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Role 'admin' already exists.. Not creating. -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Role UUID: 8070c199fc2647c9a50176d11256bebc -Feb 21 20:39:46 server1.1 [2014-02-21T20:39:45-08:00] INFO: Processing openstack-identity_register[Register 'Member' Role] action create_role (openstack-identity::registration line 92) -Feb 21 20:39:47 server1.1 [2014-02-21T20:39:46-08:00] INFO: Created Role 'Member' -Feb 21 20:39:47 server1.1 [2014-02-21T20:39:46-08:00] INFO: Processing openstack-identity_register[Register 'compute' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:48 server1.1 [2014-02-21T20:39:47-08:00] INFO: Created user 'service' for tenant 'service' -Feb 21 20:39:48 server1.1 [2014-02-21T20:39:47-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:39:49 server1.1 [2014-02-21T20:39:48-08:00] INFO: Granted Role 'admin' to User 'service' in Tenant 'service' -Feb 21 20:39:49 server1.1 [2014-02-21T20:39:48-08:00] INFO: Processing openstack-identity_register[Register compute Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:49-08:00] INFO: Created service 'nova' -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:49-08:00] INFO: Processing openstack-identity_register[Register compute Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:50-08:00] INFO: Created endpoint for service type 'compute' -Feb 21 20:39:50 server1.1 [2014-02-21T20:39:50-08:00] INFO: Processing openstack-identity_register[Register 'network' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:51 server1.1 [2014-02-21T20:39:50-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:39:51 server1.1 [2014-02-21T20:39:50-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:39:52 server1.1 [2014-02-21T20:39:51-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:39:52 server1.1 [2014-02-21T20:39:51-08:00] INFO: Processing openstack-identity_register[Register network Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:53 server1.1 [2014-02-21T20:39:52-08:00] INFO: Created service 'quantum' -Feb 21 20:39:53 server1.1 [2014-02-21T20:39:52-08:00] INFO: Processing openstack-identity_register[Register network Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: Created endpoint for service type 'network' -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: Processing openstack-identity_register[Register 'volume' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:39:54 server1.1 [2014-02-21T20:39:53-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:39:55 server1.1 [2014-02-21T20:39:54-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:39:55 server1.1 [2014-02-21T20:39:54-08:00] INFO: Processing openstack-identity_register[Register volume Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:56 server1.1 [2014-02-21T20:39:55-08:00] INFO: Created service 'cinder' -Feb 21 20:39:56 server1.1 [2014-02-21T20:39:55-08:00] INFO: Processing openstack-identity_register[Register volume Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Created endpoint for service type 'volume' -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Processing openstack-identity_register[Register identity Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Created service 'keystone' -Feb 21 20:39:57 server1.1 [2014-02-21T20:39:56-08:00] INFO: Processing openstack-identity_register[Register identity Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:39:58 server1.1 [2014-02-21T20:39:57-08:00] INFO: Created endpoint for service type 'identity' -Feb 21 20:39:58 server1.1 [2014-02-21T20:39:57-08:00] INFO: Processing openstack-identity_register[Register 'image' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:39:59 server1.1 [2014-02-21T20:39:58-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:39:59 server1.1 [2014-02-21T20:39:58-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:40:00 server1.1 [2014-02-21T20:39:59-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:40:00 server1.1 [2014-02-21T20:39:59-08:00] INFO: Processing openstack-identity_register[Register image Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:40:00 server1.1 [2014-02-21T20:40:00-08:00] INFO: Created service 'glance' -Feb 21 20:40:00 server1.1 [2014-02-21T20:40:00-08:00] INFO: Processing openstack-identity_register[Register image Endpoint] action create_endpoint (openstack-identity::registration line 151) -Feb 21 20:40:01 server1.1 [2014-02-21T20:40:00-08:00] INFO: Created endpoint for service type 'image' -Feb 21 20:40:01 server1.1 [2014-02-21T20:40:00-08:00] INFO: Processing openstack-identity_register[Register 'object-store' User] action create_user (openstack-identity::registration line 109) -Feb 21 20:40:02 server1.1 [2014-02-21T20:40:01-08:00] INFO: User 'service' already exists for tenant 'service' -Feb 21 20:40:02 server1.1 [2014-02-21T20:40:01-08:00] INFO: Processing openstack-identity_register[Grant admin Role to service User in service Tenant] action grant_role (openstack-identity::registration line 119) -Feb 21 20:40:03 server1.1 [2014-02-21T20:40:02-08:00] INFO: Role 'admin' already granted to User 'service' in Tenant 'service' -Feb 21 20:40:03 server1.1 [2014-02-21T20:40:02-08:00] INFO: Processing openstack-identity_register[Register object-store Service] action create_service (openstack-identity::registration line 131) -Feb 21 20:40:04 server1.1 [2014-02-21T20:40:03-08:00] INFO: Created service 'swift' -Feb 21 20:40:04 server1.1 [2014-02-21T20:40:03-08:00] INFO: Processing openstack-identity_register[Create EC2 credentials for 'admin' user] action create_ec2_credentials (openstack-identity::registration line 166) -Feb 21 20:40:05 server1.1 [2014-02-21T20:40:04-08:00] INFO: Created EC2 Credentials for User 'admin' in Tenant 'admin' -Feb 21 20:40:05 server1.1 [2014-02-21T20:40:04-08:00] INFO: Processing openstack-identity_register[Create EC2 credentials for 'monitoring' user] action create_ec2_credentials (openstack-identity::registration line 166) -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] ERROR: Unable to create EC2 Credentials for User 'monitoring' in Tenant 'service' -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] ERROR: Error was: Could not lookup uuid for ec2-credentials:tenant=>service. Error was 'Client' object has no attribute 'auth_user_id' -Feb 21 20:40:07 server1.1 (1) -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] INFO: Processing package[openstack-cinder] action upgrade (openstack-block-storage::cinder-common line 26) -Feb 21 20:40:07 server1.1 [2014-02-21T20:40:06-08:00] INFO: package[openstack-cinder] installing openstack-cinder-2013.1.4-1.el6 from openstack repository -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: package[openstack-cinder] upgraded from uninstalled to 2013.1.4-1.el6 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing directory[/etc/cinder] action create (openstack-block-storage::cinder-common line 44) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/etc/cinder] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/etc/cinder] group changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/etc/cinder] mode changed to 750 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing template[/etc/cinder/cinder.conf] action create (openstack-block-storage::cinder-common line 51) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] backed up to /var/chef/backup/etc/cinder/cinder.conf.chef-20140221204110.415861 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] updated file contents /etc/cinder/cinder.conf -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: template[/etc/cinder/cinder.conf] mode changed to 644 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing package[python-cinderclient] action upgrade (openstack-block-storage::api line 32) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing package[MySQL-python] action upgrade (openstack-block-storage::api line 41) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing directory[/var/cache/cinder] action create (openstack-block-storage::api line 46) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] created directory /var/cache/cinder -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] group changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/cache/cinder] mode changed to 700 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing directory[/var/lock/cinder] action create (openstack-block-storage::api line 52) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] created directory /var/lock/cinder -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] owner changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] group changed to 165 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: directory[/var/lock/cinder] mode changed to 700 -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing service[cinder-api] action enable (openstack-block-storage::api line 58) -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: service[cinder-api] enabled -Feb 21 20:41:11 server1.1 [2014-02-21T20:41:10-08:00] INFO: Processing execute[cinder-manage db sync] action run (openstack-block-storage::api line 71) -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: execute[cinder-manage db sync] ran successfully -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing template[/etc/cinder/api-paste.ini] action create (openstack-block-storage::api line 73) -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] backed up to /var/chef/backup/etc/cinder/api-paste.ini.chef-20140221204130.194587 -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] updated file contents /etc/cinder/api-paste.ini -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] owner changed to 165 -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] mode changed to 644 -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/api-paste.ini] sending restart action to service[cinder-api] (immediate) -Feb 21 20:41:30 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing service[cinder-api] action restart (openstack-block-storage::api line 58) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: service[cinder-api] restarted -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing template[/etc/cinder/policy.json] action create (openstack-block-storage::api line 88) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] backed up to /var/chef/backup/etc/cinder/policy.json.chef-20140221204130.442890 -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] updated file contents /etc/cinder/policy.json -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] owner changed to 165 -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] mode changed to 644 -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: template[/etc/cinder/policy.json] not queuing delayed action restart on service[cinder-api] (delayed), as it's already been queued -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing package[MySQL-python] action upgrade (openstack-block-storage::scheduler line 45) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing service[cinder-scheduler] action enable (openstack-block-storage::scheduler line 50) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: service[cinder-scheduler] enabled -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing service[cinder-scheduler] action start (openstack-block-storage::scheduler line 50) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: service[cinder-scheduler] started -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: Processing package[openstack-nova-common] action upgrade (openstack-compute::nova-common line 37) -Feb 21 20:41:31 server1.1 [2014-02-21T20:41:30-08:00] INFO: package[openstack-nova-common] installing openstack-nova-common-2013.1.4-7.el6 from openstack repository -Feb 21 20:41:52 server1.1 [2014-02-21T20:41:52-08:00] INFO: package[openstack-nova-common] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:41:52 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing package[python-memcached] action install (openstack-compute::nova-common line 46) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing directory[/etc/nova] action create (openstack-compute::nova-common line 51) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova] owner changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova] group changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova] mode changed to 700 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing directory[/etc/nova/rootwrap.d] action create (openstack-compute::nova-common line 59) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] created directory /etc/nova/rootwrap.d -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/etc/nova/rootwrap.d] mode changed to 700 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/nova.conf] action create (openstack-compute::nova-common line 134) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] backed up to /var/chef/backup/etc/nova/nova.conf.chef-20140221204152.340272 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] updated file contents /etc/nova/nova.conf -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] owner changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/nova.conf] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.conf] action create (openstack-compute::nova-common line 164) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] backed up to /var/chef/backup/etc/nova/rootwrap.conf.chef-20140221204152.347747 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] updated file contents /etc/nova/rootwrap.conf -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.conf] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.d/api-metadata.filters] action create (openstack-compute::nova-common line 172) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] created file /etc/nova/rootwrap.d/api-metadata.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] updated file contents /etc/nova/rootwrap.d/api-metadata.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/api-metadata.filters] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.d/compute.filters] action create (openstack-compute::nova-common line 180) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] created file /etc/nova/rootwrap.d/compute.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] updated file contents /etc/nova/rootwrap.d/compute.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/compute.filters] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/etc/nova/rootwrap.d/network.filters] action create (openstack-compute::nova-common line 188) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] created file /etc/nova/rootwrap.d/network.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] updated file contents /etc/nova/rootwrap.d/network.filters -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/etc/nova/rootwrap.d/network.filters] mode changed to 644 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing template[/root/openrc] action create (openstack-compute::nova-common line 199) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] created file /root/openrc -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] updated file contents /root/openrc -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] owner changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] group changed to 0 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: template[/root/openrc] mode changed to 600 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing execute[enable nova login] action run (openstack-compute::nova-common line 215) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: execute[enable nova login] ran successfully -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing directory[/var/lock/nova] action create (openstack-compute::api-ec2 line 28) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/var/lock/nova] created directory /var/lock/nova -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/var/lock/nova] owner changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/var/lock/nova] group changed to 162 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: directory[/var/lock/nova] mode changed to 700 -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing package[python-keystone] action upgrade (openstack-compute::api-ec2 line 36) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: Processing package[openstack-nova-api] action upgrade (openstack-compute::api-ec2 line 41) -Feb 21 20:41:53 server1.1 [2014-02-21T20:41:52-08:00] INFO: package[openstack-nova-api] installing openstack-nova-api-2013.1.4-7.el6 from openstack repository -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: package[openstack-nova-api] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing service[nova-api-ec2] action enable (openstack-compute::api-ec2 line 48) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: service[nova-api-ec2] enabled -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing template[/etc/nova/api-paste.ini] action create (openstack-compute::api-ec2 line 74) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] backed up to /var/chef/backup/etc/nova/api-paste.ini.chef-20140221204156.594842 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] updated file contents /etc/nova/api-paste.ini -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] owner changed to 162 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] mode changed to 644 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] not queuing delayed action restart on service[nova-api-ec2] (delayed), as it's already been queued -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: template[/etc/nova/api-paste.ini] not queuing delayed action restart on service[nova-api-os-compute] (delayed), as it's already been queued -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing directory[/var/lock/nova] action create (openstack-compute::api-os-compute line 28) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing directory[/var/cache/nova] action create (openstack-compute::api-os-compute line 34) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: directory[/var/cache/nova] created directory /var/cache/nova -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: directory[/var/cache/nova] owner changed to 162 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: directory[/var/cache/nova] group changed to 162 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: directory[/var/cache/nova] mode changed to 700 -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing package[python-keystone] action upgrade (openstack-compute::api-os-compute line 40) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing package[openstack-nova-api] action upgrade (openstack-compute::api-os-compute line 45) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing service[nova-api-os-compute] action enable (openstack-compute::api-os-compute line 52) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:56-08:00] INFO: Processing service[nova-api-os-compute] action start (openstack-compute::api-os-compute line 52) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:57-08:00] INFO: service[nova-api-os-compute] started -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:57-08:00] INFO: Processing template[/etc/nova/api-paste.ini] action create (openstack-compute::api-os-compute line 78) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:57-08:00] INFO: Processing package[openstack-nova-cert] action upgrade (openstack-compute::nova-cert line 25) -Feb 21 20:41:57 server1.1 [2014-02-21T20:41:57-08:00] INFO: package[openstack-nova-cert] installing openstack-nova-cert-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: package[openstack-nova-cert] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: Processing service[nova-cert] action enable (openstack-compute::nova-cert line 32) -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: service[nova-cert] enabled -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: Processing service[nova-cert] action restart (openstack-compute::nova-cert line 32) -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: service[nova-cert] restarted -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: Processing directory[/var/lock/nova] action create (openstack-compute::scheduler line 25) -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: Processing package[openstack-nova-scheduler] action upgrade (openstack-compute::scheduler line 34) -Feb 21 20:42:05 server1.1 [2014-02-21T20:42:04-08:00] INFO: package[openstack-nova-scheduler] installing openstack-nova-scheduler-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:11 server1.1 [2014-02-21T20:42:11-08:00] INFO: package[openstack-nova-scheduler] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:11 server1.1 [2014-02-21T20:42:11-08:00] INFO: Processing service[nova-scheduler] action enable (openstack-compute::scheduler line 41) -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: service[nova-scheduler] enabled -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: Processing service[nova-scheduler] action restart (openstack-compute::scheduler line 41) -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: service[nova-scheduler] restarted -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: Processing package[openstack-nova-novncproxy] action upgrade (openstack-compute::vncproxy line 26) -Feb 21 20:42:12 server1.1 [2014-02-21T20:42:11-08:00] INFO: package[openstack-nova-novncproxy] installing openstack-nova-novncproxy-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:21 server1.1 [2014-02-21T20:42:20-08:00] INFO: package[openstack-nova-novncproxy] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:21 server1.1 [2014-02-21T20:42:20-08:00] INFO: Processing package[openstack-nova-console] action upgrade (openstack-compute::vncproxy line 35) -Feb 21 20:42:21 server1.1 [2014-02-21T20:42:21-08:00] INFO: package[openstack-nova-console] installing openstack-nova-console-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:24-08:00] INFO: package[openstack-nova-console] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:24-08:00] INFO: Processing package[openstack-nova-console] action upgrade (openstack-compute::vncproxy line 42) -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[openstack-nova-novncproxy] action enable (openstack-compute::vncproxy line 49) -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[openstack-nova-novncproxy] enabled -Feb 21 20:42:25 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[openstack-nova-novncproxy] action start (openstack-compute::vncproxy line 49) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[openstack-nova-novncproxy] started -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[nova-console] action enable (openstack-compute::vncproxy line 57) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[nova-console] enabled -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[nova-console] action start (openstack-compute::vncproxy line 57) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[nova-console] started -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[nova-consoleauth] action enable (openstack-compute::vncproxy line 64) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: service[nova-consoleauth] enabled -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:25-08:00] INFO: Processing service[nova-consoleauth] action start (openstack-compute::vncproxy line 64) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:26-08:00] INFO: service[nova-consoleauth] started -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:26-08:00] INFO: Processing package[openstack-nova-conductor] action upgrade (openstack-compute::conductor line 26) -Feb 21 20:42:26 server1.1 [2014-02-21T20:42:26-08:00] INFO: package[openstack-nova-conductor] installing openstack-nova-conductor-2013.1.4-7.el6 from openstack repository -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: package[openstack-nova-conductor] upgraded from uninstalled to 2013.1.4-7.el6 -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: Processing service[nova-conductor] action enable (openstack-compute::conductor line 32) -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: service[nova-conductor] enabled -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: Processing service[nova-conductor] action restart (openstack-compute::conductor line 32) -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: service[nova-conductor] restarted -Feb 21 20:42:33 server1.1 [2014-02-21T20:42:32-08:00] INFO: Processing execute[nova-manage db sync] action run (openstack-compute::nova-setup line 26) -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: execute[nova-manage db sync] ran successfully -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: Processing package[python-quantumclient] action upgrade (openstack-compute::nova-setup line 109) -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: Processing package[pyparsing] action upgrade (openstack-compute::nova-setup line 109) -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: Processing cookbook_file[/usr/local/bin/add_floaters.py] action create (openstack-compute::nova-setup line 115) -Feb 21 20:46:00 server1.1 [2014-02-21T20:45:59-08:00] INFO: cookbook_file[/usr/local/bin/add_floaters.py] created file /usr/local/bin/add_floaters.py -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: cookbook_file[/usr/local/bin/add_floaters.py] updated file contents /usr/local/bin/add_floaters.py -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: cookbook_file[/usr/local/bin/add_floaters.py] mode changed to 755 -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: Processing package[openstack-nova-network] action purge (openstack-network::common line 38) -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: Processing package[openstack-quantum] action install (openstack-network::common line 44) -Feb 21 20:46:00 server1.1 [2014-02-21T20:46:00-08:00] INFO: package[openstack-quantum] installing openstack-quantum-2013.1.4-4.el6 from openstack repository -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing directory[/etc/quantum/plugins] action create (openstack-network::common line 49) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/etc/quantum/plugins] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/etc/quantum/plugins] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/etc/quantum/plugins] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing directory[/var/cache/quantum] action create (openstack-network::common line 57) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/var/cache/quantum] created directory /var/cache/quantum -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/var/cache/quantum] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/var/cache/quantum] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: directory[/var/cache/quantum] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing directory[/var/cache/quantum] action create (openstack-network::common line 64) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing remote_directory[/etc/quantum/rootwrap.d] action create (openstack-network::common line 74) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: remote_directory[/etc/quantum/rootwrap.d] created directory /etc/quantum/rootwrap.d -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] created file /etc/quantum/rootwrap.d/ryu-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] updated file contents /etc/quantum/rootwrap.d/ryu-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/ryu-plugin.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] created file /etc/quantum/rootwrap.d/openvswitch-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] updated file contents /etc/quantum/rootwrap.d/openvswitch-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/openvswitch-plugin.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] created file /etc/quantum/rootwrap.d/nec-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] updated file contents /etc/quantum/rootwrap.d/nec-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/nec-plugin.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] created file /etc/quantum/rootwrap.d/linuxbridge-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] updated file contents /etc/quantum/rootwrap.d/linuxbridge-plugin.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/linuxbridge-plugin.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] created file /etc/quantum/rootwrap.d/lbaas-haproxy.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] updated file contents /etc/quantum/rootwrap.d/lbaas-haproxy.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/lbaas-haproxy.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/l3.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] created file /etc/quantum/rootwrap.d/l3.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] updated file contents /etc/quantum/rootwrap.d/l3.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/l3.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] created file /etc/quantum/rootwrap.d/iptables-firewall.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] updated file contents /etc/quantum/rootwrap.d/iptables-firewall.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/iptables-firewall.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] created file /etc/quantum/rootwrap.d/dhcp.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] updated file contents /etc/quantum/rootwrap.d/dhcp.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/dhcp.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing cookbook_file[/etc/quantum/rootwrap.d/debug.filters] action create (dynamically defined) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] created file /etc/quantum/rootwrap.d/debug.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] updated file contents /etc/quantum/rootwrap.d/debug.filters -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: cookbook_file[/etc/quantum/rootwrap.d/debug.filters] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing template[/etc/quantum/rootwrap.conf] action create (openstack-network::common line 81) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/rootwrap.conf] backed up to /var/chef/backup/etc/quantum/rootwrap.conf.chef-20140221204614.967634 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/rootwrap.conf] updated file contents /etc/quantum/rootwrap.conf -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/rootwrap.conf] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/rootwrap.conf] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing template[/etc/quantum/policy.json] action create (openstack-network::common line 88) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/policy.json] backed up to /var/chef/backup/etc/quantum/policy.json.chef-20140221204614.975067 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/policy.json] updated file contents /etc/quantum/policy.json -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/policy.json] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/policy.json] mode changed to 644 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing execute[delete_auto_qpid] action nothing (openstack-network::common line 103) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing service[quantum-server] action nothing (openstack-network::common line 157) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing template[/etc/quantum/quantum.conf] action create (openstack-network::common line 165) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] backed up to /var/chef/backup/etc/quantum/quantum.conf.chef-20140221204614.991537 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] updated file contents /etc/quantum/quantum.conf -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] mode changed to 644 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/quantum.conf] not queuing delayed action restart on service[quantum-server] (delayed), as it's already been queued -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: Processing template[/etc/quantum/api-paste.ini] action create (openstack-network::common line 186) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/api-paste.ini] backed up to /var/chef/backup/etc/quantum/api-paste.ini.chef-20140221204614.998443 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:14-08:00] INFO: template[/etc/quantum/api-paste.ini] updated file contents /etc/quantum/api-paste.ini -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/api-paste.ini] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/api-paste.ini] mode changed to 644 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/api-paste.ini] not queuing delayed action restart on service[quantum-server] (delayed), as it's already been queued -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing directory[/etc/quantum/plugins/openvswitch] action create (openstack-network::common line 201) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: directory[/etc/quantum/plugins/openvswitch] created directory /etc/quantum/plugins/openvswitch -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: directory[/etc/quantum/plugins/openvswitch] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: directory[/etc/quantum/plugins/openvswitch] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: directory[/etc/quantum/plugins/openvswitch] mode changed to 700 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing service[quantum-plugin-openvswitch-agent] action nothing (openstack-network::common line 341) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] action create (openstack-network::common line 346) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] created file /etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] updated file contents /etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] owner changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] group changed to 164 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] mode changed to 644 -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: template[/etc/quantum/plugins/openvswitch/ovs_quantum_plugin.ini] not queuing delayed action restart on service[quantum-server] (delayed), as it's already been queued -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing template[/etc/default/quantum-server] action create (openstack-network::common line 395) -Feb 21 20:46:15 server1.1 [2014-02-21T20:46:15-08:00] INFO: Processing package[openstack-quantum-openvswitch] action install (openstack-network::server line 42) -Feb 21 20:46:16 server1.1 [2014-02-21T20:46:15-08:00] INFO: package[openstack-quantum-openvswitch] installing openstack-quantum-openvswitch-2013.1.4-4.el6 from openstack repository -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing directory[/var/cache/quantum/api] action create (openstack-network::server line 49) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: directory[/var/cache/quantum/api] created directory /var/cache/quantum/api -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: directory[/var/cache/quantum/api] owner changed to 164 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: directory[/var/cache/quantum/api] group changed to 164 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing template[/etc/init.d/quantum-server] action create (openstack-network::server line 55) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: template[/etc/init.d/quantum-server] backed up to /var/chef/backup/etc/init.d/quantum-server.chef-20140221204621.125222 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: template[/etc/init.d/quantum-server] updated file contents /etc/init.d/quantum-server -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing service[quantum-server] action enable (openstack-network::server line 63) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: service[quantum-server] enabled -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing service[quantum-server] action restart (openstack-network::server line 63) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: service[quantum-server] restarted -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing cookbook_file[quantum-ha-tool] action create (openstack-network::server line 69) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] created file /usr/local/bin/quantum-ha-tool.py -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] updated file contents /usr/local/bin/quantum-ha-tool.py -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] owner changed to 0 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] group changed to 0 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: cookbook_file[quantum-ha-tool] mode changed to 755 -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing template[/etc/sysconfig/quantum] action create (openstack-network::server line 98) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: template[/etc/httpd/mods-available/deflate.conf] sending restart action to service[apache2] (delayed) -Feb 21 20:46:21 server1.1 [2014-02-21T20:46:21-08:00] INFO: Processing service[apache2] action restart (apache2::default line 221) -Feb 21 20:46:23 server1.1 [2014-02-21T20:46:22-08:00] INFO: service[apache2] restarted -Feb 21 20:46:23 server1.1 [2014-02-21T20:46:22-08:00] INFO: [template[/etc/cinder/cinder.conf]] sending restart action to service[cinder-api] (delayed) -Feb 21 20:46:23 server1.1 [2014-02-21T20:46:22-08:00] INFO: Processing service[cinder-api] action restart (openstack-block-storage::api line 58) -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: service[cinder-api] restarted -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: [template[/etc/cinder/cinder.conf]] sending restart action to service[cinder-scheduler] (delayed) -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: Processing service[cinder-scheduler] action restart (openstack-block-storage::scheduler line 50) -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: service[cinder-scheduler] restarted -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-api-ec2] (delayed) -Feb 21 20:46:24 server1.1 [2014-02-21T20:46:24-08:00] INFO: Processing service[nova-api-ec2] action restart (openstack-compute::api-ec2 line 48) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: service[nova-api-ec2] restarted -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-api-os-compute] (delayed) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: Processing service[nova-api-os-compute] action restart (openstack-compute::api-os-compute line 52) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: service[nova-api-os-compute] restarted -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-cert] (delayed) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:25-08:00] INFO: Processing service[nova-cert] action restart (openstack-compute::nova-cert line 32) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: service[nova-cert] restarted -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-scheduler] (delayed) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: Processing service[nova-scheduler] action restart (openstack-compute::scheduler line 41) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: service[nova-scheduler] restarted -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[openstack-nova-novncproxy] (delayed) -Feb 21 20:46:26 server1.1 [2014-02-21T20:46:26-08:00] INFO: Processing service[openstack-nova-novncproxy] action restart (openstack-compute::vncproxy line 49) -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:26-08:00] INFO: service[openstack-nova-novncproxy] restarted -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:26-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-console] (delayed) -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:26-08:00] INFO: Processing service[nova-console] action restart (openstack-compute::vncproxy line 57) -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:27-08:00] INFO: service[nova-console] restarted -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:27-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-consoleauth] (delayed) -Feb 21 20:46:27 server1.1 [2014-02-21T20:46:27-08:00] INFO: Processing service[nova-consoleauth] action restart (openstack-compute::vncproxy line 64) -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:27-08:00] INFO: service[nova-consoleauth] restarted -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:27-08:00] INFO: template[/etc/nova/nova.conf] sending restart action to service[nova-conductor] (delayed) -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:27-08:00] INFO: Processing service[nova-conductor] action restart (openstack-compute::conductor line 32) -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:28-08:00] INFO: service[nova-conductor] restarted -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:28-08:00] INFO: template[/etc/quantum/policy.json] sending restart action to service[quantum-server] (delayed) -Feb 21 20:46:28 server1.1 [2014-02-21T20:46:28-08:00] INFO: Processing service[quantum-server] action restart (openstack-network::server line 63) -Feb 21 20:46:29 server1.1 [2014-02-21T20:46:29-08:00] INFO: service[quantum-server] restarted -Feb 21 20:46:29 server1.1 [2014-02-21T20:46:29-08:00] INFO: Chef Run complete in 1449.433415826 seconds -Feb 21 20:46:30 server1.1 [2014-02-21T20:46:30-08:00] INFO: Running report handlers -Feb 21 20:46:30 server1.1 [2014-02-21T20:46:30-08:00] INFO: Report handlers complete diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/install.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/install.log.template deleted file mode 100644 index 861b3a53..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/install.log.template +++ /dev/null @@ -1,212 +0,0 @@ -Installing libgcc-4.4.7-4.el6.x86_64 -warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY -Installing setup-2.8.14-20.el6_4.1.noarch -Installing filesystem-2.4.30-3.el6.x86_64 -Installing basesystem-10.0-4.el6.noarch -Installing ncurses-base-5.7-3.20090208.el6.x86_64 -Installing kernel-firmware-2.6.32-431.el6.noarch -Installing tzdata-2013g-1.el6.noarch -Installing nss-softokn-freebl-3.14.3-9.el6.x86_64 -Installing glibc-common-2.12-1.132.el6.x86_64 -Installing glibc-2.12-1.132.el6.x86_64 -Installing ncurses-libs-5.7-3.20090208.el6.x86_64 -Installing bash-4.1.2-15.el6_4.x86_64 -Installing libattr-2.4.44-7.el6.x86_64 -Installing libcap-2.16-5.5.el6.x86_64 -Installing zlib-1.2.3-29.el6.x86_64 -Installing info-4.13a-8.el6.x86_64 -Installing popt-1.13-7.el6.x86_64 -Installing chkconfig-1.3.49.3-2.el6_4.1.x86_64 -Installing audit-libs-2.2-2.el6.x86_64 -Installing libcom_err-1.41.12-18.el6.x86_64 -Installing libacl-2.2.49-6.el6.x86_64 -Installing db4-4.7.25-18.el6_4.x86_64 -Installing nspr-4.10.0-1.el6.x86_64 -Installing nss-util-3.15.1-3.el6.x86_64 -Installing readline-6.0-4.el6.x86_64 -Installing libsepol-2.0.41-4.el6.x86_64 -Installing libselinux-2.0.94-5.3.el6_4.1.x86_64 -Installing shadow-utils-4.1.4.2-13.el6.x86_64 -Installing sed-4.2.1-10.el6.x86_64 -Installing bzip2-libs-1.0.5-7.el6_0.x86_64 -Installing libuuid-2.17.2-12.14.el6.x86_64 -Installing libstdc++-4.4.7-4.el6.x86_64 -Installing libblkid-2.17.2-12.14.el6.x86_64 -Installing gawk-3.1.7-10.el6.x86_64 -Installing file-libs-5.04-15.el6.x86_64 -Installing libgpg-error-1.7-4.el6.x86_64 -Installing dbus-libs-1.2.24-7.el6_3.x86_64 -Installing libudev-147-2.51.el6.x86_64 -Installing pcre-7.8-6.el6.x86_64 -Installing grep-2.6.3-4.el6.x86_64 -Installing lua-5.1.4-4.1.el6.x86_64 -Installing sqlite-3.6.20-1.el6.x86_64 -Installing cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 -Installing libidn-1.18-2.el6.x86_64 -Installing expat-2.0.1-11.el6_2.x86_64 -Installing xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64 -Installing elfutils-libelf-0.152-1.el6.x86_64 -Installing libgcrypt-1.4.5-11.el6_4.x86_64 -Installing bzip2-1.0.5-7.el6_0.x86_64 -Installing findutils-4.4.2-6.el6.x86_64 -Installing libselinux-utils-2.0.94-5.3.el6_4.1.x86_64 -Installing checkpolicy-2.0.22-1.el6.x86_64 -Installing cpio-2.10-11.el6_3.x86_64 -Installing which-2.19-6.el6.x86_64 -Installing libxml2-2.7.6-14.el6.x86_64 -Installing libedit-2.11-4.20080712cvs.1.el6.x86_64 -Installing pth-2.0.7-9.3.el6.x86_64 -Installing tcp_wrappers-libs-7.6-57.el6.x86_64 -Installing sysvinit-tools-2.87-5.dsf.el6.x86_64 -Installing libtasn1-2.3-3.el6_2.1.x86_64 -Installing p11-kit-0.18.5-2.el6.x86_64 -Installing p11-kit-trust-0.18.5-2.el6.x86_64 -Installing ca-certificates-2013.1.94-65.0.el6.noarch -Installing device-mapper-persistent-data-0.2.8-2.el6.x86_64 -Installing nss-softokn-3.14.3-9.el6.x86_64 -Installing libnih-1.0.1-7.el6.x86_64 -Installing upstart-0.6.5-12.el6_4.1.x86_64 -Installing file-5.04-15.el6.x86_64 -Installing gmp-4.3.1-7.el6_2.2.x86_64 -Installing libusb-0.1.12-23.el6.x86_64 -Installing MAKEDEV-3.24-6.el6.x86_64 -Installing libutempter-1.1.5-4.1.el6.x86_64 -Installing psmisc-22.6-15.el6_0.1.x86_64 -Installing net-tools-1.60-110.el6_2.x86_64 -Installing vim-minimal-7.2.411-1.8.el6.x86_64 -Installing tar-1.23-11.el6.x86_64 -Installing procps-3.2.8-25.el6.x86_64 -Installing db4-utils-4.7.25-18.el6_4.x86_64 -Installing e2fsprogs-libs-1.41.12-18.el6.x86_64 -Installing libss-1.41.12-18.el6.x86_64 -Installing pinentry-0.7.6-6.el6.x86_64 -Installing binutils-2.20.51.0.2-5.36.el6.x86_64 -Installing m4-1.4.13-5.el6.x86_64 -Installing diffutils-2.8.1-28.el6.x86_64 -Installing make-3.81-20.el6.x86_64 -Installing dash-0.5.5.1-4.el6.x86_64 -Installing ncurses-5.7-3.20090208.el6.x86_64 -Installing groff-1.18.1.4-21.el6.x86_64 -Installing less-436-10.el6.x86_64 -Installing coreutils-libs-8.4-31.el6.x86_64 -Installing gzip-1.3.12-19.el6_4.x86_64 -Installing cracklib-2.8.16-4.el6.x86_64 -Installing cracklib-dicts-2.8.16-4.el6.x86_64 -Installing coreutils-8.4-31.el6.x86_64 -Installing pam-1.1.1-17.el6.x86_64 -Installing module-init-tools-3.9-21.el6_4.x86_64 -Installing hwdata-0.233-9.1.el6.noarch -Installing redhat-logos-60.0.14-12.el6.centos.noarch -Installing plymouth-scripts-0.8.3-27.el6.centos.x86_64 -Installing libpciaccess-0.13.1-2.el6.x86_64 -Installing nss-3.15.1-15.el6.x86_64 -Installing nss-sysinit-3.15.1-15.el6.x86_64 -Installing nss-tools-3.15.1-15.el6.x86_64 -Installing openldap-2.4.23-32.el6_4.1.x86_64 -Installing logrotate-3.7.8-17.el6.x86_64 -Installing gdbm-1.8.0-36.el6.x86_64 -Installing mingetty-1.08-5.el6.x86_64 -Installing keyutils-libs-1.4-4.el6.x86_64 -Installing krb5-libs-1.10.3-10.el6_4.6.x86_64 -Installing openssl-1.0.1e-15.el6.x86_64 -Installing libssh2-1.4.2-1.el6.x86_64 -Installing libcurl-7.19.7-37.el6_4.x86_64 -Installing gnupg2-2.0.14-6.el6_4.x86_64 -Installing gpgme-1.1.8-3.el6.x86_64 -Installing curl-7.19.7-37.el6_4.x86_64 -Installing rpm-libs-4.8.0-37.el6.x86_64 -Installing rpm-4.8.0-37.el6.x86_64 -Installing fipscheck-lib-1.2.0-7.el6.x86_64 -Installing fipscheck-1.2.0-7.el6.x86_64 -Installing mysql-libs-5.1.71-1.el6.x86_64 -Installing ethtool-3.5-1.el6.x86_64 -Installing pciutils-libs-3.1.10-2.el6.x86_64 -Installing plymouth-core-libs-0.8.3-27.el6.centos.x86_64 -Installing libcap-ng-0.6.4-3.el6_0.1.x86_64 -Installing libffi-3.0.5-3.2.el6.x86_64 -Installing python-2.6.6-51.el6.x86_64 -Installing python-libs-2.6.6-51.el6.x86_64 -Installing python-pycurl-7.19.0-8.el6.x86_64 -Installing python-urlgrabber-3.9.1-9.el6.noarch -Installing pygpgme-0.1-18.20090824bzr68.el6.x86_64 -Installing rpm-python-4.8.0-37.el6.x86_64 -Installing python-iniparse-0.3.1-2.1.el6.noarch -Installing slang-2.2.1-1.el6.x86_64 -Installing newt-0.52.11-3.el6.x86_64 -Installing newt-python-0.52.11-3.el6.x86_64 -Installing ustr-1.0.4-9.1.el6.x86_64 -Installing libsemanage-2.0.43-4.2.el6.x86_64 -Installing libaio-0.3.107-10.el6.x86_64 -Installing pkgconfig-0.23-9.1.el6.x86_64 -Installing gamin-0.1.10-9.el6.x86_64 -Installing glib2-2.26.1-3.el6.x86_64 -Installing shared-mime-info-0.70-4.el6.x86_64 -Installing libuser-0.56.13-5.el6.x86_64 -Installing grubby-7.0.15-5.el6.x86_64 -Installing yum-metadata-parser-1.1.2-16.el6.x86_64 -Installing yum-plugin-fastestmirror-1.1.30-14.el6.noarch -Installing yum-3.2.29-40.el6.centos.noarch -Installing dbus-glib-0.86-6.el6.x86_64 -Installing dhcp-common-4.1.1-38.P1.el6.centos.x86_64 -Installing centos-release-6-5.el6.centos.11.1.x86_64 -Installing policycoreutils-2.0.83-19.39.el6.x86_64 -Installing iptables-1.4.7-11.el6.x86_64 -Installing iproute-2.6.32-31.el6.x86_64 -Installing iputils-20071127-17.el6_4.2.x86_64 -Installing util-linux-ng-2.17.2-12.14.el6.x86_64 -Installing initscripts-9.03.40-2.el6.centos.x86_64 -Installing udev-147-2.51.el6.x86_64 -Installing device-mapper-libs-1.02.79-8.el6.x86_64 -Installing device-mapper-1.02.79-8.el6.x86_64 -Installing device-mapper-event-libs-1.02.79-8.el6.x86_64 -Installing openssh-5.3p1-94.el6.x86_64 -Installing device-mapper-event-1.02.79-8.el6.x86_64 -Installing lvm2-libs-2.02.100-8.el6.x86_64 -Installing cryptsetup-luks-libs-1.2.0-7.el6.x86_64 -Installing device-mapper-multipath-libs-0.4.9-72.el6.x86_64 -Installing kpartx-0.4.9-72.el6.x86_64 -Installing libdrm-2.4.45-2.el6.x86_64 -Installing plymouth-0.8.3-27.el6.centos.x86_64 -Installing rsyslog-5.8.10-8.el6.x86_64 -Installing cyrus-sasl-2.1.23-13.el6_3.1.x86_64 -Installing postfix-2.6.6-2.2.el6_1.x86_64 -Installing cronie-anacron-1.4.4-12.el6.x86_64 -Installing cronie-1.4.4-12.el6.x86_64 -Installing crontabs-1.10-33.el6.noarch -Installing ntpdate-4.2.6p5-1.el6.centos.x86_64 -Installing iptables-ipv6-1.4.7-11.el6.x86_64 -Installing selinux-policy-3.7.19-231.el6.noarch -Installing kbd-misc-1.15-11.el6.noarch -Installing kbd-1.15-11.el6.x86_64 -Installing dracut-004-335.el6.noarch -Installing dracut-kernel-004-335.el6.noarch -Installing kernel-2.6.32-431.el6.x86_64 -Installing fuse-2.8.3-4.el6.x86_64 -Installing selinux-policy-targeted-3.7.19-231.el6.noarch -Installing system-config-firewall-base-1.2.27-5.el6.noarch -Installing ntp-4.2.6p5-1.el6.centos.x86_64 -Installing device-mapper-multipath-0.4.9-72.el6.x86_64 -Installing cryptsetup-luks-1.2.0-7.el6.x86_64 -Installing lvm2-2.02.100-8.el6.x86_64 -Installing openssh-clients-5.3p1-94.el6.x86_64 -Installing openssh-server-5.3p1-94.el6.x86_64 -Installing mdadm-3.2.6-7.el6.x86_64 -Installing b43-openfwwf-5.2-4.el6.noarch -Installing dhclient-4.1.1-38.P1.el6.centos.x86_64 -Installing iscsi-initiator-utils-6.2.0.873-10.el6.x86_64 -Installing passwd-0.77-4.el6_2.2.x86_64 -Installing authconfig-6.1.12-13.el6.x86_64 -Installing grub-0.97-83.el6.x86_64 -Installing efibootmgr-0.5.4-11.el6.x86_64 -Installing wget-1.12-1.8.el6.x86_64 -Installing sudo-1.8.6p3-12.el6.x86_64 -Installing audit-2.2-2.el6.x86_64 -Installing e2fsprogs-1.41.12-18.el6.x86_64 -Installing xfsprogs-3.1.1-14.el6.x86_64 -Installing acl-2.2.49-6.el6.x86_64 -Installing attr-2.4.44-7.el6.x86_64 -Installing chef-11.8.0-1.el6.x86_64 -warning: chef-11.8.0-1.el6.x86_64: Header V4 DSA/SHA1 Signature, key ID 83ef826a: NOKEY -Installing bridge-utils-1.2-10.el6.x86_64 -Installing rootfiles-8.1-6.1.el6.noarch -*** FINISHED INSTALLING PACKAGES *** \ No newline at end of file diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/sys.log.template deleted file mode 100644 index 7390276a..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server1.1/sys.log.template +++ /dev/null @@ -1,1726 +0,0 @@ -05:51:18,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:51:18,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:51:18,517 INFO kernel:Initializing cgroup subsys cpuset -05:51:18,517 INFO kernel:Initializing cgroup subsys cpu -05:51:18,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:51:18,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,517 INFO kernel:KERNEL supported cpus: -05:51:18,517 INFO kernel: Intel GenuineIntel -05:51:18,517 INFO kernel: AMD AuthenticAMD -05:51:18,517 INFO kernel: Centaur CentaurHauls -05:51:18,517 INFO kernel:Disabled fast string operations -05:51:18,517 INFO kernel:BIOS-provided physical RAM map: -05:51:18,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:51:18,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:51:18,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:51:18,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:51:18,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:51:18,517 INFO kernel:DMI present. -05:51:18,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:51:18,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:51:18,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:51:18,517 INFO kernel:Hypervisor detected: VMware -05:51:18,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:51:18,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:51:18,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:51:18,517 DEBUG kernel:MTRR default type: uncachable -05:51:18,517 DEBUG kernel:MTRR fixed ranges enabled: -05:51:18,517 DEBUG kernel: 00000-9FFFF write-back -05:51:18,517 DEBUG kernel: A0000-BFFFF uncachable -05:51:18,517 DEBUG kernel: C0000-CFFFF write-protect -05:51:18,517 DEBUG kernel: D0000-EFFFF uncachable -05:51:18,517 DEBUG kernel: F0000-FFFFF write-protect -05:51:18,517 DEBUG kernel:MTRR variable ranges enabled: -05:51:18,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:51:18,517 DEBUG kernel: 1 disabled -05:51:18,517 DEBUG kernel: 2 disabled -05:51:18,517 DEBUG kernel: 3 disabled -05:51:18,517 DEBUG kernel: 4 disabled -05:51:18,517 DEBUG kernel: 5 disabled -05:51:18,517 DEBUG kernel: 6 disabled -05:51:18,517 DEBUG kernel: 7 disabled -05:51:18,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:51:18,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:51:18,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:51:18,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:51:18,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:51:18,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:51:18,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:51:18,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:51:18,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:51:18,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:51:18,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:51:18,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:51:18,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:51:18,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:51:18,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:51:18,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:51:18,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:51:18,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:51:18,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:51:18,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:51:18,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:51:18,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:51:18,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:51:18,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:51:18,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:51:18,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:51:18,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:51:18,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:51:18,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:51:18,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:51:18,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:51:18,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:51:18,517 WARNING kernel:Zone PFN ranges: -05:51:18,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:51:18,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:51:18,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:51:18,517 WARNING kernel:Movable zone start PFN for each node -05:51:18,517 WARNING kernel:early_node_map[3] active PFN ranges -05:51:18,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:51:18,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:51:18,517 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:51:18,517 DEBUG kernel:On node 0 totalpages: 524159 -05:51:18,517 DEBUG kernel: DMA zone: 56 pages used for memmap -05:51:18,517 DEBUG kernel: DMA zone: 101 pages reserved -05:51:18,517 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:51:18,517 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:51:18,517 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:51:18,517 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:51:18,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:51:18,517 INFO kernel:Setting APIC routing to flat. -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:51:18,517 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:51:18,518 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:51:18,518 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:51:18,518 DEBUG kernel:ACPI: IRQ0 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ2 used by override. -05:51:18,518 DEBUG kernel:ACPI: IRQ9 used by override. -05:51:18,518 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:51:18,518 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:51:18,518 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:51:18,518 DEBUG kernel:nr_irqs_gsi: 24 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:51:18,518 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:51:18,518 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:51:18,518 INFO kernel:Booting paravirtualized kernel on bare hardware -05:51:18,518 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:51:18,518 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:51:18,518 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:51:18,518 INFO kernel:pcpu-alloc: [0] 0 1 -05:51:18,518 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:51:18,520 WARNING kernel:Policy zone: DMA32 -05:51:18,520 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server1.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-21-89-af -05:51:18,520 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:51:18,520 INFO kernel:Checking aperture... -05:51:18,520 INFO kernel:No AGP bridge found -05:51:18,520 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:51:18,520 INFO kernel:Hierarchical RCU implementation. -05:51:18,520 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:51:18,520 INFO kernel:Extended CMOS year: 2000 -05:51:18,520 WARNING kernel:Console: colour VGA+ 80x25 -05:51:18,520 INFO kernel:console [tty0] enabled -05:51:18,520 INFO kernel:allocated 8388608 bytes of page_cgroup -05:51:18,520 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:51:18,520 DEBUG kernel:hpet clockevent registered -05:51:18,520 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:51:18,520 WARNING kernel:Detected 2400.085 MHz processor. -05:51:18,520 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:51:18,520 INFO kernel:pid_max: default: 32768 minimum: 301 -05:51:18,520 INFO kernel:Security Framework initialized -05:51:18,520 INFO kernel:SELinux: Initializing. -05:51:18,520 DEBUG kernel:SELinux: Starting in permissive mode -05:51:18,520 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:51:18,520 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:51:18,520 WARNING kernel:Mount-cache hash table entries: 256 -05:51:18,520 INFO kernel:Initializing cgroup subsys ns -05:51:18,520 INFO kernel:Initializing cgroup subsys cpuacct -05:51:18,520 INFO kernel:Initializing cgroup subsys memory -05:51:18,520 INFO kernel:Initializing cgroup subsys devices -05:51:18,520 INFO kernel:Initializing cgroup subsys freezer -05:51:18,520 INFO kernel:Initializing cgroup subsys net_cls -05:51:18,520 INFO kernel:Initializing cgroup subsys blkio -05:51:18,520 INFO kernel:Initializing cgroup subsys perf_event -05:51:18,520 INFO kernel:Initializing cgroup subsys net_prio -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:CPU: Physical Processor ID: 0 -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:alternatives: switching to unfair spinlock -05:51:18,520 INFO kernel:ACPI: Core revision 20090903 -05:51:18,520 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:51:18,520 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:51:18,520 INFO kernel:APIC routing finalized to flat. -05:51:18,520 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:51:18,520 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:51:18,520 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:51:18,520 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:51:18,520 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:51:18,520 INFO kernel:... version: 3 -05:51:18,520 INFO kernel:... bit width: 48 -05:51:18,520 INFO kernel:... generic registers: 4 -05:51:18,520 INFO kernel:... value mask: 0000ffffffffffff -05:51:18,520 INFO kernel:... max period: 000000007fffffff -05:51:18,520 INFO kernel:... fixed-purpose events: 3 -05:51:18,520 INFO kernel:... event mask: 000000070000000f -05:51:18,520 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:51:18,520 INFO kernel:Booting Node 0, Processors #1 Ok. -05:51:18,520 INFO kernel:Disabled fast string operations -05:51:18,520 INFO kernel:mce: CPU supports 0 MCE banks -05:51:18,520 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:51:18,520 INFO kernel:Brought up 2 CPUs -05:51:18,520 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:51:18,520 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:51:18,520 DEBUG kernel:sizeof(vma)=200 bytes -05:51:18,520 DEBUG kernel:sizeof(page)=56 bytes -05:51:18,520 DEBUG kernel:sizeof(inode)=592 bytes -05:51:18,520 DEBUG kernel:sizeof(dentry)=192 bytes -05:51:18,520 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:51:18,520 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:51:18,520 DEBUG kernel:sizeof(skbuff)=232 bytes -05:51:18,520 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:51:18,520 INFO kernel:devtmpfs: initialized -05:51:18,520 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:51:18,520 INFO kernel:regulator: core version 0.5 -05:51:18,520 INFO kernel:NET: Registered protocol family 16 -05:51:18,520 INFO kernel:ACPI: bus type pci registered -05:51:18,520 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:51:18,520 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:51:18,520 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:51:18,520 INFO kernel:PCI: Using configuration type 1 for base access -05:51:18,520 WARNING kernel:bio: create slab at 0 -05:51:18,520 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:51:18,520 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:51:18,520 INFO kernel:ACPI: Interpreter enabled -05:51:18,520 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:51:18,520 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:51:18,520 INFO kernel:ACPI: No dock devices found. -05:51:18,520 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:51:18,520 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:51:18,520 INFO kernel:PCI host bridge to bus 0000:00 -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:51:18,520 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:51:18,520 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:51:18,520 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:51:18,520 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:51:18,520 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:15.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:16.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:17.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.1: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.2: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.3: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.4: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.5: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.6: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:00:18.7: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:51:18,520 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:00.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:51:18,520 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:01.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:51:18,520 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:02.0: PME# disabled -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:51:18,520 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:51:18,520 INFO kernel:pci 0000:02:03.0: PME# disabled -05:51:18,520 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:51:18,520 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:51:18,520 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,520 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,520 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:51:18,521 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:51:18,521 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:51:18,521 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:51:18,521 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:51:18,521 INFO kernel:vgaarb: loaded -05:51:18,521 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:51:18,521 NOTICE kernel:SCSI subsystem initialized -05:51:18,521 DEBUG kernel:libata version 3.00 loaded. -05:51:18,521 INFO kernel:usbcore: registered new interface driver usbfs -05:51:18,521 INFO kernel:usbcore: registered new interface driver hub -05:51:18,521 INFO kernel:usbcore: registered new device driver usb -05:51:18,521 INFO kernel:PCI: Using ACPI for IRQ routing -05:51:18,521 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:51:18,521 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:51:18,521 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:51:18,521 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:51:18,521 INFO kernel:NetLabel: Initializing -05:51:18,521 INFO kernel:NetLabel: domain hash size = 128 -05:51:18,521 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:51:18,521 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:51:18,521 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:51:18,521 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:51:18,521 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:51:18,521 INFO kernel:Switching to clocksource hpet -05:51:18,521 INFO kernel:pnp: PnP ACPI init -05:51:18,521 INFO kernel:ACPI: bus type pnp registered -05:51:18,521 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:51:18,521 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0080] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:51:18,521 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:51:18,521 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:51:18,521 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:51:18,521 DEBUG kernel:pnp 00:02: [dma 4] -05:51:18,521 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:51:18,521 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:51:18,521 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:51:18,521 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:51:18,521 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:51:18,521 DEBUG kernel:pnp 00:04: [irq 8] -05:51:18,521 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:51:18,521 DEBUG kernel:pnp 00:05: [io 0x0061] -05:51:18,521 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0060] -05:51:18,521 DEBUG kernel:pnp 00:06: [io 0x0064] -05:51:18,521 DEBUG kernel:pnp 00:06: [irq 1] -05:51:18,521 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:51:18,521 DEBUG kernel:pnp 00:07: [irq 12] -05:51:18,521 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:51:18,521 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:51:18,521 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:51:18,521 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:51:18,521 DEBUG kernel:pnp 00:09: [irq 7] -05:51:18,521 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:51:18,521 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:51:18,521 DEBUG kernel:pnp 00:0a: [irq 4] -05:51:18,521 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:51:18,521 DEBUG kernel:pnp 00:0b: [irq 3] -05:51:18,521 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:51:18,521 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:51:18,521 DEBUG kernel:pnp 00:0c: [irq 6] -05:51:18,521 DEBUG kernel:pnp 00:0c: [dma 2] -05:51:18,521 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:51:18,521 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:51:18,521 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:51:18,521 INFO kernel:pnp: PnP ACPI: found 14 devices -05:51:18,521 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:51:18,521 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:51:18,521 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:51:18,521 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:51:18,521 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:51:18,521 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:51:18,521 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:51:18,521 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:51:18,521 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:51:18,521 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:51:18,521 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:51:18,521 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:51:18,521 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:51:18,521 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:51:18,521 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:51:18,521 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:51:18,521 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:51:18,521 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:51:18,521 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:51:18,521 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:51:18,521 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:51:18,521 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,521 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:51:18,521 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:51:18,522 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:51:18,522 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:51:18,522 INFO kernel:NET: Registered protocol family 2 -05:51:18,522 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:51:18,522 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:51:18,527 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:51:18,527 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:51:18,527 INFO kernel:TCP reno registered -05:51:18,527 INFO kernel:NET: Registered protocol family 1 -05:51:18,527 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:51:18,527 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:51:18,527 INFO kernel:Trying to unpack rootfs image as initramfs... -05:51:18,527 INFO kernel:Freeing initrd memory: 32601k freed -05:51:18,527 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:51:18,527 INFO kernel:audit: initializing netlink socket (disabled) -05:51:18,527 NOTICE kernel:type=2000 audit(1021096275.782:1): initialized -05:51:18,527 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:51:18,527 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:51:18,527 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:51:18,527 INFO kernel:msgmni has been set to 4005 -05:51:18,527 DEBUG kernel:SELinux: Registering netfilter hooks -05:51:18,527 INFO kernel:alg: No test for stdrng (krng) -05:51:18,527 WARNING kernel:ksign: Installing public key data -05:51:18,527 WARNING kernel:Loading keyring -05:51:18,527 WARNING kernel:- Added public key 8A44323FB303E068 -05:51:18,527 WARNING kernel: - key was been created 363988184 seconds in future -05:51:18,527 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:51:18,527 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:51:18,527 INFO kernel:io scheduler noop registered -05:51:18,527 INFO kernel:io scheduler anticipatory registered -05:51:18,527 INFO kernel:io scheduler deadline registered -05:51:18,527 INFO kernel:io scheduler cfq registered (default) -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:51:18,527 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:51:18,527 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:18,527 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:51:18,527 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:51:18,527 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:51:18,527 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:51:18,527 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:51:18,527 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:51:18,527 INFO kernel:acpiphp: Slot [32] registered -05:51:18,527 INFO kernel:acpiphp: Slot [33] registered -05:51:18,527 INFO kernel:acpiphp: Slot [34] registered -05:51:18,527 INFO kernel:acpiphp: Slot [35] registered -05:51:18,527 INFO kernel:acpiphp: Slot [36] registered -05:51:18,527 INFO kernel:acpiphp: Slot [37] registered -05:51:18,527 INFO kernel:acpiphp: Slot [38] registered -05:51:18,527 INFO kernel:acpiphp: Slot [39] registered -05:51:18,527 INFO kernel:acpiphp: Slot [40] registered -05:51:18,527 INFO kernel:acpiphp: Slot [41] registered -05:51:18,527 INFO kernel:acpiphp: Slot [42] registered -05:51:18,527 INFO kernel:acpiphp: Slot [43] registered -05:51:18,527 INFO kernel:acpiphp: Slot [44] registered -05:51:18,527 INFO kernel:acpiphp: Slot [45] registered -05:51:18,527 INFO kernel:acpiphp: Slot [46] registered -05:51:18,527 INFO kernel:acpiphp: Slot [47] registered -05:51:18,527 INFO kernel:acpiphp: Slot [48] registered -05:51:18,527 INFO kernel:acpiphp: Slot [49] registered -05:51:18,527 INFO kernel:acpiphp: Slot [50] registered -05:51:18,527 INFO kernel:acpiphp: Slot [51] registered -05:51:18,527 INFO kernel:acpiphp: Slot [52] registered -05:51:18,527 INFO kernel:acpiphp: Slot [53] registered -05:51:18,527 INFO kernel:acpiphp: Slot [54] registered -05:51:18,527 INFO kernel:acpiphp: Slot [55] registered -05:51:18,527 INFO kernel:acpiphp: Slot [56] registered -05:51:18,527 INFO kernel:acpiphp: Slot [57] registered -05:51:18,527 INFO kernel:acpiphp: Slot [58] registered -05:51:18,527 INFO kernel:acpiphp: Slot [59] registered -05:51:18,527 INFO kernel:acpiphp: Slot [60] registered -05:51:18,527 INFO kernel:acpiphp: Slot [61] registered -05:51:18,527 INFO kernel:acpiphp: Slot [62] registered -05:51:18,527 INFO kernel:acpiphp: Slot [63] registered -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:51:18,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:51:18,527 INFO kernel:ipmi message handler version 39.2 -05:51:18,527 INFO kernel:IPMI System Interface driver. -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:51:18,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:51:18,527 INFO kernel:ipmi_si: Interface detection failed -05:51:18,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:51:18,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:51:18,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:51:18,527 INFO kernel:ACPI: Power Button [PWRF] -05:51:18,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:51:18,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:51:18,527 INFO kernel:GHES: HEST is not enabled! -05:51:18,527 INFO kernel:Non-volatile memory driver v1.3 -05:51:18,527 INFO kernel:Linux agpgart interface v0.103 -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:51:18,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:51:18,527 INFO kernel:crash memory driver: version 1.1 -05:51:18,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:51:18,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:51:18,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:51:18,527 INFO kernel:brd: module loaded -05:51:18,527 INFO kernel:loop: module loaded -05:51:18,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:51:18,527 INFO kernel:Fixed MDIO Bus: probed -05:51:18,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:51:18,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:51:18,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:51:18,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:51:18,527 INFO kernel:Refined TSC clocksource calibration: 2400.080 MHz. -05:51:18,527 INFO kernel:Switching to clocksource tsc -05:51:18,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:51:18,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:51:18,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:51:18,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:51:18,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:51:18,527 INFO kernel:cpuidle: using governor ladder -05:51:18,527 INFO kernel:cpuidle: using governor menu -05:51:18,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:51:18,527 INFO kernel:usbcore: registered new interface driver hiddev -05:51:18,527 INFO kernel:usbcore: registered new interface driver usbhid -05:51:18,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:51:18,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:51:18,527 INFO kernel:TCP cubic registered -05:51:18,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:51:18,527 INFO kernel:Initializing XFRM netlink socket -05:51:18,527 INFO kernel:NET: Registered protocol family 17 -05:51:18,527 WARNING kernel:registered taskstats version 1 -05:51:18,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:51:18,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:51:18 UTC (1021096278) -05:51:18,527 INFO kernel:Initalizing network drop monitor service -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:51:18,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:51:18,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:51:18,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:51:20,557 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:51:20,568 INFO kernel:Loading iSCSI transport class v2.0-870. -05:51:20,587 NOTICE kernel:iscsi: registered transport (tcp) -05:51:20,594 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:51:20,605 INFO kernel:FDC 0 is a post-1991 82077 -05:51:20,610 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:51:20,614 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:51:20,620 INFO kernel:No iBFT detected. -05:51:20,655 INFO kernel:NET: Registered protocol family 10 -05:51:20,657 INFO kernel:lo: Disabled Privacy Extensions -05:51:20,739 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:51:20,740 INFO kernel:scsi0 : ata_piix -05:51:20,740 INFO kernel:scsi1 : ata_piix -05:51:20,740 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:51:20,740 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:51:20,750 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:20,926 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:51:20,934 INFO kernel:ata2.00: configured for UDMA/33 -05:51:20,934 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:51:20,959 INFO kernel:Fusion MPT base driver 3.04.20 -05:51:20,959 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:51:20,971 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:51:20,971 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:51:20,971 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:20,971 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:20,972 INFO kernel:mptbase: ioc0: Initiating bringup -05:51:20,990 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:51:21,031 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:51:21,061 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,061 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:51:21,061 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:51:21,061 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:51:21,061 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:51:21,088 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:51:21,088 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:51:21,088 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:51:21,098 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:51:21,098 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:51:21,098 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:51:21,098 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,098 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:51:21,098 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:21:89:af -05:51:21,447 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:51:21,447 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:51:21,447 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,447 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:51:21,447 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:21:89:b9 -05:51:21,793 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:51:21,793 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:51:21,793 DEBUG kernel: alloc kstat_irqs on node -1 -05:51:21,793 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:51:21,793 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:21:89:c3 -05:51:22,142 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:51:22,142 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:51:22,142 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:21:89:cd -05:51:22,485 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:51:22,515 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,515 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,515 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,516 INFO kernel: sda: -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:51:22,516 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,516 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,516 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 INFO kernel: sdb: -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:51:22,522 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:51:22,522 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:51:22,577 WARNING kernel: sda1 sda2 sda3 -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:51:22,598 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:51:22,598 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:51:22,606 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:51:22,606 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:51:22,606 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:51:28,012 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:51:46,181 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:51:46,181 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:51:46,183 INFO NetworkManager: trying to start the modem manager... -05:51:46,186 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:51:46,186 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:51:46,188 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:51:46,188 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:51:46,190 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:51:46,191 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:51:46,192 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:51:46,192 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:51:46,194 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:51:46,194 INFO NetworkManager: Networking is enabled by state file -05:51:46,212 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:51:46,212 INFO kernel:All bugs added by David S. Miller -05:51:46,217 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,218 INFO NetworkManager: (eth0): carrier is OFF -05:51:46,218 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:51:46,218 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:51:46,218 INFO NetworkManager: (eth0): now managed -05:51:46,218 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:51:46,218 INFO NetworkManager: (eth0): bringing up device. -05:51:46,221 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:51:46,222 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,222 INFO NetworkManager: (eth0): preparing device. -05:51:46,222 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:51:46,223 INFO NetworkManager: (eth1): carrier is OFF -05:51:46,224 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:51:46,224 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:51:46,224 INFO NetworkManager: (eth1): now managed -05:51:46,224 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:51:46,224 INFO NetworkManager: (eth1): bringing up device. -05:51:46,229 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,233 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:51:46,233 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,234 INFO NetworkManager: (eth1): preparing device. -05:51:46,234 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:51:46,235 INFO NetworkManager: (eth2): carrier is OFF -05:51:46,235 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:51:46,235 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:51:46,235 INFO NetworkManager: (eth2): now managed -05:51:46,235 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:51:46,235 INFO NetworkManager: (eth2): bringing up device. -05:51:46,240 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,244 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:51:46,245 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,245 INFO NetworkManager: (eth2): preparing device. -05:51:46,245 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:51:46,246 INFO NetworkManager: (eth3): carrier is OFF -05:51:46,247 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:51:46,247 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:51:46,247 INFO NetworkManager: (eth3): now managed -05:51:46,247 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:51:46,247 INFO NetworkManager: (eth3): bringing up device. -05:51:46,251 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:51:46,255 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:51:46,256 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,256 INFO NetworkManager: (eth3): preparing device. -05:51:46,256 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:51:46,258 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:51:46,258 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:51:46,258 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,258 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,259 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:51:46,259 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:51:46,259 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:51:46,260 INFO NetworkManager: Trying to start the supplicant... -05:51:46,261 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:51:46,261 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:51:46,262 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:51:46,268 INFO NetworkManager: wpa_supplicant started -05:51:47,181 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,182 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,183 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,191 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,192 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,200 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,201 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,212 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:47,213 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:48,220 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:51:48,223 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:51:48,224 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:51:48,224 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:51:48,224 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:51:48,225 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:51:48,225 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:51:48,225 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:51:48,228 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:51:48,228 INFO NetworkManager: dhclient started with pid 670 -05:51:48,228 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:51:48,228 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:51:48,228 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:51:48,228 INFO dhclient: All rights reserved. -05:51:48,228 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:51:48,229 INFO dhclient: -05:51:48,232 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:51:48,238 INFO dhclient: Listening on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on LPF/eth0/00:0c:29:21:89:af -05:51:48,238 INFO dhclient: Sending on Socket/fallback -05:51:48,238 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x4cbfa09c) -05:51:48,266 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:51:48,267 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4cbfa09c) -05:51:50,624 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x4cbfa09c) -05:51:50,627 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:51:50,627 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:51:50,627 INFO NetworkManager: address 10.145.88.106 -05:51:50,627 INFO NetworkManager: prefix 23 (255.255.254.0) -05:51:50,627 INFO NetworkManager: gateway 10.145.88.1 -05:51:50,627 INFO NetworkManager: hostname 'server1' -05:51:50,627 INFO NetworkManager: nameserver '10.145.88.211' -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:51:50,628 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:51:50,628 INFO dhclient: bound to 10.145.88.106 -- renewal in 10408 seconds. -05:51:51,629 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:51:51,629 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:51:51,630 INFO NetworkManager: Setting system hostname to 'server1' (from DHCPv4) -05:51:51,630 INFO NetworkManager: Activation (eth0) successful, device activated. -05:51:51,631 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:07,660 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:52:47,362 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,364 NOTICE dbus-daemon: [system] Reloaded configuration -05:52:47,512 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:47,588 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:52:48,083 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:52:48,083 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:52:48,088 DEBUG kernel:SELinux: Completing initialization. -05:52:48,088 DEBUG kernel:SELinux: Setting up existing superblocks. -05:52:48,088 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,088 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:52:48,089 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:52:48,089 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:48,090 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:52:48,090 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:52:48,116 NOTICE kernel:type=1403 audit(1021096368.114:2): policy loaded auid=4294967295 ses=4294967295 -05:52:48,165 INFO kernel:md: raid0 personality registered for level 0 -05:52:48,172 INFO kernel:md: raid1 personality registered for level 1 -05:52:48,176 INFO kernel:async_tx: api initialized (async) -05:52:48,188 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:52:48,191 INFO kernel: generic_sse: 9112.000 MB/sec -05:52:48,191 INFO kernel:xor: using function: generic_sse (9112.000 MB/sec) -05:52:48,212 WARNING kernel:raid6: sse2x1 5777 MB/s -05:52:48,229 WARNING kernel:raid6: sse2x2 7031 MB/s -05:52:48,247 WARNING kernel:raid6: sse2x4 7550 MB/s -05:52:48,247 WARNING kernel:raid6: using algorithm sse2x4 (7550 MB/s) -05:52:48,247 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:52:48,261 INFO kernel:md: raid6 personality registered for level 6 -05:52:48,261 INFO kernel:md: raid5 personality registered for level 5 -05:52:48,261 INFO kernel:md: raid4 personality registered for level 4 -05:52:48,273 INFO kernel:md: raid10 personality registered for level 10 -05:52:48,277 INFO kernel:md: linear personality registered for level -1 -05:52:48,290 INFO kernel:device-mapper: uevent: version 1.0.3 -05:52:48,291 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:52:48,324 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:52:48,328 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:53:05,608 WARNING kernel:hpet1: lost 5 rtc interrupts -05:53:05,608 WARNING kernel:hpet1: lost 1 rtc interrupts -05:53:21,197 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:21,197 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:21,238 INFO kernel: sda: sda1 sda2 -05:53:25,106 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:25,106 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:25,117 INFO kernel: sda: sda1 -05:53:31,920 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:31,920 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:31,962 INFO kernel: sda: -05:53:33,120 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:33,120 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:33,120 INFO kernel: sda: sda1 -05:53:50,037 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:50,037 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:50,037 INFO kernel: sda: sda1 sda2 -05:53:55,178 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:53:55,178 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:53:55,211 INFO kernel: sda: sda1 sda2 sda3 -05:54:41,918 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:54:42,441 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,489 INFO kernel:EXT3-fs (dm-0): using internal journal -05:54:42,489 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:54:42,489 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:54:42,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:42,977 INFO kernel:EXT3-fs (sda1): using internal journal -05:54:42,977 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:54:42,977 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:54:43,167 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:54:43,255 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,268 INFO kernel:EXT3-fs (dm-1): using internal journal -05:54:43,268 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:54:43,268 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:54:43,657 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,719 INFO kernel:EXT3-fs (dm-2): using internal journal -05:54:43,719 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:54:43,719 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:54:43,913 INFO kernel:kjournald starting. Commit interval 5 seconds -05:54:43,949 INFO kernel:EXT3-fs (dm-3): using internal journal -05:54:43,949 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:54:43,949 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:55:08,095 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:55:08,106 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:08,107 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:08,109 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,125 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:55:09,126 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:55:09,127 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:55:09,128 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:59:16,883 ERR kernel:INFO: task flush-253:0:1525 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:0 D 0000000000000000 0 1525 2 0x00000080 -05:59:16,883 WARNING kernel: ffff8800592df6e0 0000000000000046 0000000000000000 ffff880079226080 -05:59:16,883 WARNING kernel: 0000000000000001 ffff880064ed8e40 ffff880079226080 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff880079226638 ffff8800592dffd8 000000000000fbc8 ffff880079226638 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -05:59:16,883 ERR kernel:INFO: task flush-253:3:1622 blocked for more than 120 seconds. -05:59:16,883 ERR kernel: Not tainted 2.6.32-431.el6.x86_64 #1 -05:59:16,883 ERR kernel:"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. -05:59:16,883 INFO kernel:flush-253:3 D 0000000000000001 0 1622 2 0x00000080 -05:59:16,883 WARNING kernel: ffff88005a5636e0 0000000000000046 0000000000000000 ffff8800790e6ae0 -05:59:16,883 WARNING kernel: 0000000000000001 ffff8800615bc080 ffff8800790e6ae0 ffff880079269dd0 -05:59:16,883 WARNING kernel: ffff8800790e7098 ffff88005a563fd8 000000000000fbc8 ffff8800790e7098 -05:59:16,883 WARNING kernel:Call Trace: -05:59:16,883 WARNING kernel: [] io_schedule+0x73/0xc0 -05:59:16,883 WARNING kernel: [] get_request_wait+0x108/0x1d0 -05:59:16,883 WARNING kernel: [] ? autoremove_wake_function+0x0/0x40 -05:59:16,883 WARNING kernel: [] ? elv_merge+0x17e/0x1c0 -05:59:16,883 WARNING kernel: [] blk_queue_bio+0x99/0x620 -05:59:16,883 WARNING kernel: [] ? read_tsc+0x9/0x20 -05:59:16,883 WARNING kernel: [] generic_make_request+0x240/0x5a0 -05:59:16,883 WARNING kernel: [] ? mempool_alloc_slab+0x15/0x20 -05:59:16,883 WARNING kernel: [] ? __dec_zone_page_state+0x2e/0x30 -05:59:16,883 WARNING kernel: [] submit_bio+0x70/0x120 -05:59:16,883 WARNING kernel: [] submit_bh+0x11d/0x1f0 -05:59:16,883 WARNING kernel: [] __block_write_full_page+0x1c8/0x330 -05:59:16,883 WARNING kernel: [] ? end_buffer_async_write+0x0/0x190 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] ? blkdev_get_block+0x0/0x20 -05:59:16,883 WARNING kernel: [] block_write_full_page_endio+0xe0/0x120 -05:59:16,883 WARNING kernel: [] ? find_get_pages_tag+0x40/0x130 -05:59:16,883 WARNING kernel: [] block_write_full_page+0x15/0x20 -05:59:16,883 WARNING kernel: [] blkdev_writepage+0x18/0x20 -05:59:16,883 WARNING kernel: [] __writepage+0x17/0x40 -05:59:16,883 WARNING kernel: [] write_cache_pages+0x1fd/0x4c0 -05:59:16,883 WARNING kernel: [] ? __writepage+0x0/0x40 -05:59:16,883 WARNING kernel: [] generic_writepages+0x24/0x30 -05:59:16,883 WARNING kernel: [] do_writepages+0x21/0x40 -05:59:16,883 WARNING kernel: [] writeback_single_inode+0xdd/0x290 -05:59:16,883 WARNING kernel: [] writeback_sb_inodes+0xbd/0x170 -05:59:16,883 WARNING kernel: [] writeback_inodes_wb+0xab/0x1b0 -05:59:16,883 WARNING kernel: [] wb_writeback+0x2f3/0x410 -05:59:16,883 WARNING kernel: [] ? thread_return+0x4e/0x76e -05:59:16,883 WARNING kernel: [] ? del_timer_sync+0x22/0x30 -05:59:16,883 WARNING kernel: [] wb_do_writeback+0x1a5/0x240 -05:59:16,883 WARNING kernel: [] bdi_writeback_task+0x63/0x1b0 -05:59:16,883 WARNING kernel: [] ? bit_waitqueue+0x17/0xd0 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] bdi_start_fn+0x86/0x100 -05:59:16,883 WARNING kernel: [] ? bdi_start_fn+0x0/0x100 -05:59:16,883 WARNING kernel: [] kthread+0x96/0xa0 -05:59:16,883 WARNING kernel: [] child_rip+0xa/0x20 -05:59:16,883 WARNING kernel: [] ? kthread+0x0/0xa0 -05:59:16,883 WARNING kernel: [] ? child_rip+0x0/0x20 -06:11:26,657 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:26,705 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:27,220 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:27,220 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/anaconda.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/anaconda.log.template deleted file mode 100644 index 0e91936e..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/anaconda.log.template +++ /dev/null @@ -1,280 +0,0 @@ -05:50:22,531 INFO : kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 - -05:50:22,531 INFO : text mode forced from cmdline -05:50:22,531 DEBUG : readNetInfo /tmp/s390net not found, early return -05:50:22,531 INFO : anaconda version 13.21.215 on x86_64 starting -05:50:22,649 DEBUG : Saving module ipv6 -05:50:22,649 DEBUG : Saving module iscsi_ibft -05:50:22,649 DEBUG : Saving module iscsi_boot_sysfs -05:50:22,649 DEBUG : Saving module pcspkr -05:50:22,649 DEBUG : Saving module edd -05:50:22,649 DEBUG : Saving module floppy -05:50:22,649 DEBUG : Saving module iscsi_tcp -05:50:22,649 DEBUG : Saving module libiscsi_tcp -05:50:22,649 DEBUG : Saving module libiscsi -05:50:22,649 DEBUG : Saving module scsi_transport_iscsi -05:50:22,649 DEBUG : Saving module squashfs -05:50:22,649 DEBUG : Saving module cramfs -05:50:22,649 DEBUG : probing buses -05:50:22,673 DEBUG : waiting for hardware to initialize -05:50:28,619 DEBUG : probing buses -05:50:28,644 DEBUG : waiting for hardware to initialize -05:50:32,015 INFO : getting kickstart file -05:50:32,022 INFO : eth0 has link, using it -05:50:32,033 INFO : doing kickstart... setting it up -05:50:32,034 DEBUG : activating device eth0 -05:50:40,048 INFO : wait_for_iface_activation (2502): device eth0 activated -05:50:40,048 INFO : file location: http://10.145.88.211/cblr/svc/op/ks/system/server2.1 -05:50:40,049 INFO : transferring http://10.145.88.211/cblr/svc/op/ks/system/server2.1 -05:50:40,134 INFO : setting up kickstart -05:50:40,134 INFO : kickstart forcing text mode -05:50:40,134 INFO : kickstartFromUrl -05:50:40,134 INFO : results of url ks, url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64 -05:50:40,135 INFO : trying to mount CD device /dev/sr0 on /mnt/stage2 -05:50:40,137 INFO : drive status is CDS_TRAY_OPEN -05:50:40,137 ERROR : Drive tray reports open when it should be closed -05:50:55,155 INFO : no stage2= given, assuming http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:50:55,156 DEBUG : going to set language to en_US.UTF-8 -05:50:55,156 INFO : setting language to en_US.UTF-8 -05:50:55,169 INFO : starting STEP_METHOD -05:50:55,169 DEBUG : loaderData->method is set, adding skipMethodDialog -05:50:55,169 DEBUG : skipMethodDialog is set -05:50:55,176 INFO : starting STEP_STAGE2 -05:50:55,176 INFO : URL_STAGE_MAIN: url is http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:50:55,176 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/updates.img -05:50:56,174 ERROR : failed to mount loopback device /dev/loop7 on /tmp/update-disk as /tmp/updates-disk.img: (null) -05:50:56,175 ERROR : Error mounting /dev/loop7 on /tmp/update-disk: No such file or directory -05:50:56,175 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img -05:50:57,459 ERROR : Error downloading http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/product.img: HTTP response code said error -05:50:57,459 INFO : transferring http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:51:46,964 INFO : mounted loopback device /mnt/runtime on /dev/loop0 as /tmp/install.img -05:51:46,964 INFO : got stage2 at url http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img -05:51:47,009 INFO : Loading SELinux policy -05:51:47,753 INFO : getting ready to spawn shell now -05:51:47,973 INFO : Running anaconda script /usr/bin/anaconda -05:51:52,842 INFO : CentOS Linux is the highest priority installclass, using it -05:51:52,887 WARNING : /usr/lib/python2.6/site-packages/pykickstart/parser.py:713: DeprecationWarning: Script does not end with %end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax. - warnings.warn(_("%s does not end with %%end. This syntax has been deprecated. It may be removed from future releases, which will result in a fatal error from kickstart. Please modify your kickstart file to use this updated syntax.") % _("Script"), DeprecationWarning) - -05:51:52,888 INFO : Running kickstart %%pre script(s) -05:51:52,888 WARNING : '/bin/sh' specified as full path -05:51:54,265 INFO : All kickstart %%pre script(s) have been run -05:51:54,314 INFO : ISCSID is /usr/sbin/iscsid -05:51:54,314 INFO : no initiator set -05:51:54,416 WARNING : '/usr/libexec/fcoe/fcoe_edd.sh' specified as full path -05:51:54,425 INFO : No FCoE EDD info found: No FCoE boot disk information is found in EDD! - -05:51:54,425 INFO : no /etc/zfcp.conf; not configuring zfcp -05:51:59,033 INFO : created new libuser.conf at /tmp/libuser.KyLOeb with instPath="/mnt/sysimage" -05:51:59,033 INFO : anaconda called with cmdline = ['/usr/bin/anaconda', '--stage2', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/images/install.img', '--kickstart', '/tmp/ks.cfg', '-T', '--selinux', '--lang', 'en_US', '--keymap', 'us', '--repo', 'http://10.145.88.211/cblr/links/CentOS-6.5-x86_64'] -05:51:59,033 INFO : Display mode = t -05:51:59,034 INFO : Default encoding = utf-8 -05:51:59,193 INFO : Detected 2016M of memory -05:51:59,193 INFO : Swap attempt of 4032M -05:51:59,528 INFO : ISCSID is /usr/sbin/iscsid -05:51:59,528 INFO : no initiator set -05:52:00,372 INFO : setting installation environment hostname to server2 -05:52:00,415 WARNING : Timezone US/Pacific set in kickstart is not valid. -05:52:00,541 INFO : Detected 2016M of memory -05:52:00,541 INFO : Suggested swap size (4032 M) exceeds 10 % of disk space, using 10 % of disk space (3276 M) instead. -05:52:00,541 INFO : Swap attempt of 3276M -05:52:00,698 WARNING : step installtype does not exist -05:52:00,699 WARNING : step confirminstall does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,699 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,700 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,701 WARNING : step complete does not exist -05:52:00,702 INFO : moving (1) to step setuptime -05:52:00,702 DEBUG : setuptime is a direct step -22:52:00,703 WARNING : '/usr/sbin/hwclock' specified as full path -22:52:02,003 INFO : leaving (1) step setuptime -22:52:02,003 INFO : moving (1) to step autopartitionexecute -22:52:02,003 DEBUG : autopartitionexecute is a direct step -22:52:02,141 INFO : leaving (1) step autopartitionexecute -22:52:02,141 INFO : moving (1) to step storagedone -22:52:02,141 DEBUG : storagedone is a direct step -22:52:02,142 INFO : leaving (1) step storagedone -22:52:02,142 INFO : moving (1) to step enablefilesystems -22:52:02,142 DEBUG : enablefilesystems is a direct step -22:52:08,928 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda1 -22:52:12,407 DEBUG : notifying kernel of 'change' event on device /sys/class/block/sda3 -22:52:25,536 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-0 -22:52:30,102 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-1 -22:52:35,181 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-2 -22:52:40,809 DEBUG : notifying kernel of 'change' event on device /sys/class/block/dm-3 -22:52:44,576 INFO : failed to set SELinux context for /mnt/sysimage: [Errno 95] Operation not supported -22:52:44,576 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-rootvol on /mnt/sysimage as ext3 with options defaults -22:52:45,082 DEBUG : isys.py:mount()- going to mount /dev/sda1 on /mnt/sysimage/boot as ext3 with options defaults -22:52:45,230 DEBUG : isys.py:mount()- going to mount //dev on /mnt/sysimage/dev as bind with options defaults,bind -22:52:45,240 DEBUG : isys.py:mount()- going to mount devpts on /mnt/sysimage/dev/pts as devpts with options gid=5,mode=620 -22:52:45,247 DEBUG : isys.py:mount()- going to mount tmpfs on /mnt/sysimage/dev/shm as tmpfs with options defaults -22:52:45,333 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-homevol on /mnt/sysimage/home as ext3 with options defaults -22:52:45,482 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:52:45,483 DEBUG : isys.py:mount()- going to mount proc on /mnt/sysimage/proc as proc with options defaults -22:52:45,487 INFO : failed to get default SELinux context for /proc: [Errno 2] No such file or directory -22:52:45,534 DEBUG : isys.py:mount()- going to mount sysfs on /mnt/sysimage/sys as sysfs with options defaults -22:52:45,571 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-tmpvol on /mnt/sysimage/tmp as ext3 with options defaults -22:52:45,795 DEBUG : isys.py:mount()- going to mount /dev/mapper/server2-varvol on /mnt/sysimage/var as ext3 with options defaults -22:52:45,955 INFO : leaving (1) step enablefilesystems -22:52:45,955 INFO : moving (1) to step bootloadersetup -22:52:45,956 DEBUG : bootloadersetup is a direct step -22:52:45,960 INFO : leaving (1) step bootloadersetup -22:52:45,960 INFO : moving (1) to step reposetup -22:52:45,960 DEBUG : reposetup is a direct step -22:52:47,076 ERROR : Error downloading treeinfo file: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" -22:52:47,077 INFO : added repository ppa_repo with URL http://10.145.88.211:80/cobbler/repo_mirror/ppa_repo/ -22:52:47,296 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/repomd.xml -22:52:47,358 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/0e371b19e547b9d7a7e8acc4b8c0c7c074509d33653cfaef9e8f4fd1d62d95de-primary.sqlite.bz2 -22:52:47,499 DEBUG : Grabbing http://10.145.88.211/cblr/links/CentOS-6.5-x86_64/repodata/34bae2d3c9c78e04ed2429923bc095005af1b166d1a354422c4c04274bae0f59-c6-minimal-x86_64.xml -22:52:47,629 INFO : leaving (1) step reposetup -22:52:47,629 INFO : moving (1) to step basepkgsel -22:52:47,629 DEBUG : basepkgsel is a direct step -22:52:47,645 WARNING : not adding Base group -22:52:48,052 INFO : leaving (1) step basepkgsel -22:52:48,053 INFO : moving (1) to step postselection -22:52:48,053 DEBUG : postselection is a direct step -22:52:48,056 INFO : selected kernel package for kernel -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/ext3/ext3.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/jbd/jbd.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/mbcache.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/fcoe.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/fcoe/libfcoe.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libfc/libfc.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_fc.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_tgt.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xts.ko.gz -22:52:48,521 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/lrw.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/gf128mul.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/sha256_generic.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/cbc.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-raid.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-crypt.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-round-robin.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-multipath.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-snapshot.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mirror.ko.gz -22:52:48,522 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-region-hash.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-log.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-zero.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/dm-mod.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/linear.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid10.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid456.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_raid6_recov.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_pq.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/raid6/raid6_pq.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_xor.ko.gz -22:52:48,523 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/xor.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_memcpy.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/crypto/async_tx/async_tx.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid1.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/md/raid0.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/8021q/8021q.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/garp.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/802/stp.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/llc/llc.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/hw/mlx4/mlx4_ib.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_en.ko.gz -22:52:48,524 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/mlx4/mlx4_core.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/ulp/ipoib/ib_ipoib.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_cm.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_sa.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_mad.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/infiniband/core/ib_core.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sg.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sd_mod.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/lib/crc-t10dif.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/net/e1000/e1000.ko.gz -22:52:48,525 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/sr_mod.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/cdrom/cdrom.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptspi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptscsih.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/message/fusion/mptbase.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_spi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/pata_acpi.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_generic.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/ata/ata_piix.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/net/ipv6/ipv6.ko.gz -22:52:48,526 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/iscsi_ibft.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_boot_sysfs.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/input/misc/pcspkr.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/firmware/edd.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/block/floppy.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/iscsi_tcp.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi_tcp.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/libiscsi.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/drivers/scsi/scsi_transport_iscsi.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/squashfs/squashfs.ko.gz -22:52:48,527 DEBUG : Checking for DUD module /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/cramfs/cramfs.ko.gz -22:52:53,656 INFO : leaving (1) step postselection -22:52:53,657 INFO : moving (1) to step install -22:52:53,660 INFO : leaving (1) step install -22:52:53,660 INFO : moving (1) to step preinstallconfig -22:52:53,660 DEBUG : preinstallconfig is a direct step -22:52:54,102 DEBUG : isys.py:mount()- going to mount /selinux on /mnt/sysimage/selinux as selinuxfs with options defaults -22:52:54,107 DEBUG : isys.py:mount()- going to mount /proc/bus/usb on /mnt/sysimage/proc/bus/usb as usbfs with options defaults -22:52:54,117 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:52:54,117 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:52:54,130 INFO : copy_to_sysimage: source '/etc/multipath/wwids' does not exist. -22:52:54,130 INFO : copy_to_sysimage: source '/etc/multipath/bindings' does not exist. -22:52:54,134 INFO : leaving (1) step preinstallconfig -22:52:54,134 INFO : moving (1) to step installpackages -22:52:54,134 DEBUG : installpackages is a direct step -22:52:54,134 INFO : Preparing to install packages -23:16:26,925 INFO : leaving (1) step installpackages -23:16:26,926 INFO : moving (1) to step postinstallconfig -23:16:26,926 DEBUG : postinstallconfig is a direct step -23:16:26,934 DEBUG : Removing cachedir: /mnt/sysimage/var/cache/yum/anaconda-CentOS-201311291202.x86_64 -23:16:26,949 DEBUG : Removing headers and packages from /mnt/sysimage/var/cache/yum/ppa_repo -23:16:26,953 INFO : leaving (1) step postinstallconfig -23:16:26,953 INFO : moving (1) to step writeconfig -23:16:26,953 DEBUG : writeconfig is a direct step -23:16:26,953 INFO : Writing main configuration -23:16:26,958 WARNING : '/usr/sbin/authconfig' specified as full path -23:16:30,473 WARNING : '/usr/sbin/lokkit' specified as full path -23:16:30,530 WARNING : '/usr/sbin/lokkit' specified as full path -23:16:30,632 INFO : removing libuser.conf at /tmp/libuser.KyLOeb -23:16:30,633 INFO : created new libuser.conf at /tmp/libuser.KyLOeb with instPath="/mnt/sysimage" -23:16:31,956 INFO : leaving (1) step writeconfig -23:16:31,956 INFO : moving (1) to step firstboot -23:16:31,957 DEBUG : firstboot is a direct step -23:16:31,957 INFO : leaving (1) step firstboot -23:16:31,957 INFO : moving (1) to step instbootloader -23:16:31,957 DEBUG : instbootloader is a direct step -23:16:33,920 WARNING : '/sbin/grub-install' specified as full path -23:16:34,226 WARNING : '/sbin/grub' specified as full path -23:16:35,092 INFO : leaving (1) step instbootloader -23:16:35,092 INFO : moving (1) to step reipl -23:16:35,092 DEBUG : reipl is a direct step -23:16:35,093 INFO : leaving (1) step reipl -23:16:35,093 INFO : moving (1) to step writeksconfig -23:16:35,093 DEBUG : writeksconfig is a direct step -23:16:35,093 INFO : Writing autokickstart file -23:16:35,124 INFO : leaving (1) step writeksconfig -23:16:35,124 INFO : moving (1) to step setfilecon -23:16:35,125 DEBUG : setfilecon is a direct step -23:16:35,125 INFO : setting SELinux contexts for anaconda created files -23:16:36,828 INFO : leaving (1) step setfilecon -23:16:36,829 INFO : moving (1) to step copylogs -23:16:36,829 DEBUG : copylogs is a direct step -23:16:36,829 INFO : Copying anaconda logs -23:16:36,831 INFO : leaving (1) step copylogs -23:16:36,831 INFO : moving (1) to step methodcomplete -23:16:36,832 DEBUG : methodcomplete is a direct step -23:16:36,832 INFO : leaving (1) step methodcomplete -23:16:36,832 INFO : moving (1) to step postscripts -23:16:36,832 DEBUG : postscripts is a direct step -23:16:36,832 INFO : Running kickstart %%post script(s) -23:16:36,872 WARNING : '/bin/sh' specified as full path diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/chef-client.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/chef-client.log.template deleted file mode 100644 index 7c1d0fa3..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/chef-client.log.template +++ /dev/null @@ -1,446 +0,0 @@ -Feb 21 20:21:42 server2.1 [2014-02-21T20:21:42-08:00] INFO: Forking chef instance to converge... -Feb 21 20:21:51 server2.1 [2014-02-21T20:21:50-08:00] INFO: *** Chef 11.8.0 *** -Feb 21 20:21:51 server2.1 [2014-02-21T20:21:50-08:00] INFO: Chef-client pid: 1350 -Feb 21 20:22:14 server2.1 [2014-02-21T20:22:14-08:00] INFO: Client key /etc/chef/client.pem is not present - registering -Feb 21 20:22:18 server2.1 [2014-02-21T20:22:18-08:00] INFO: HTTP Request Returned 404 Object Not Found: error -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:18-08:00] INFO: Setting the run_list to ["role[os-ops-database]"] from JSON -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Run List is [role[os-ops-database]] -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Run List expands to [openstack-common, openstack-common::logging, openstack-ops-database::server, openstack-ops-database::openstack-db] -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Starting Chef Run for server2_openstack_1 -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Running start handlers -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: Start handlers complete. -Feb 21 20:22:19 server2.1 [2014-02-21T20:22:19-08:00] INFO: HTTP Request Returned 404 Object Not Found: -Feb 21 20:22:20 server2.1 [2014-02-21T20:22:20-08:00] INFO: Loading cookbooks [apt, aws, build-essential, database, mysql, openssl, openstack-common, openstack-ops-database, postgresql, xfs, yum] -Feb 21 20:22:20 server2.1 [2014-02-21T20:22:20-08:00] INFO: Storing updated cookbooks/mysql/recipes/percona_repo.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:20-08:00] INFO: Storing updated cookbooks/mysql/recipes/server.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:21-08:00] INFO: Storing updated cookbooks/mysql/recipes/default.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:21-08:00] INFO: Storing updated cookbooks/mysql/recipes/ruby.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:21-08:00] INFO: Storing updated cookbooks/mysql/recipes/server_ec2.rb in the cache. -Feb 21 20:22:21 server2.1 [2014-02-21T20:22:21-08:00] INFO: Storing updated cookbooks/mysql/recipes/client.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/libraries/helpers.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/attributes/percona_repo.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/attributes/server.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/attributes/client.rb in the cache. -Feb 21 20:22:22 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/templates/default/my.cnf.erb in the cache. -Feb 21 20:22:23 server2.1 [2014-02-21T20:22:22-08:00] INFO: Storing updated cookbooks/mysql/templates/default/mysql-server.seed.erb in the cache. -Feb 21 20:22:23 server2.1 [2014-02-21T20:22:23-08:00] INFO: Storing updated cookbooks/mysql/templates/default/port_mysql.erb in the cache. -Feb 21 20:22:24 server2.1 [2014-02-21T20:22:24-08:00] INFO: Storing updated cookbooks/mysql/templates/default/debian.cnf.erb in the cache. -Feb 21 20:22:24 server2.1 [2014-02-21T20:22:24-08:00] INFO: Storing updated cookbooks/mysql/templates/default/grants.sql.erb in the cache. -Feb 21 20:22:25 server2.1 [2014-02-21T20:22:24-08:00] INFO: Storing updated cookbooks/mysql/templates/windows/my.cnf.erb in the cache. -Feb 21 20:22:25 server2.1 [2014-02-21T20:22:25-08:00] INFO: Storing updated cookbooks/mysql/LICENSE in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/CHANGELOG.md in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/metadata.rb in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/TESTING.md in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/Berksfile in the cache. -Feb 21 20:22:26 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/README.md in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:26-08:00] INFO: Storing updated cookbooks/mysql/CONTRIBUTING in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/mysql/.kitchen.yml in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/mysql.rb in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/ebs_backup.rb in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/default.rb in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/ebs_volume.rb in the cache. -Feb 21 20:22:27 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/postgresql.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/master.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:27-08:00] INFO: Storing updated cookbooks/database/recipes/snapshot.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_mysql_user.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_postgresql.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/resource_database_user.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_postgresql_user.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/resource_mysql_database_user.rb in the cache. -Feb 21 20:22:28 server2.1 [2014-02-21T20:22:28-08:00] INFO: Storing updated cookbooks/database/libraries/resource_sql_server_database_user.rb in the cache. -Feb 21 20:22:29 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_mysql.rb in the cache. -Feb 21 20:22:29 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/resource_mysql_database.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_sql_server.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/resource_database.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:29-08:00] INFO: Storing updated cookbooks/database/libraries/resource_postgresql_database_user.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/libraries/provider_database_sql_server_user.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/libraries/resource_sql_server_database.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/libraries/resource_postgresql_database.rb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/ebs-db-restore.sh.erb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/aws_config.erb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/chef-solo-database-snapshot.rb.erb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/ebs-backup-cron.erb in the cache. -Feb 21 20:22:30 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/app_grants.sql.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/s3cfg.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/chef-solo-database-snapshot.cron.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:30-08:00] INFO: Storing updated cookbooks/database/templates/default/chef-solo-database-snapshot.json.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:31-08:00] INFO: Storing updated cookbooks/database/templates/default/ebs-db-backup.sh.erb in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:31-08:00] INFO: Storing updated cookbooks/database/LICENSE in the cache. -Feb 21 20:22:31 server2.1 [2014-02-21T20:22:31-08:00] INFO: Storing updated cookbooks/database/CHANGELOG.md in the cache. -Feb 21 20:22:32 server2.1 [2014-02-21T20:22:31-08:00] INFO: Storing updated cookbooks/database/metadata.rb in the cache. -Feb 21 20:22:32 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/database/README.md in the cache. -Feb 21 20:22:32 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/database/CONTRIBUTING in the cache. -Feb 21 20:22:32 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/mysql-server.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/server.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/openstack-db.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:32-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/postgresql-server.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:33-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/postgresql-client.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:33-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/mysql-client.rb in the cache. -Feb 21 20:22:33 server2.1 [2014-02-21T20:22:33-08:00] INFO: Storing updated cookbooks/openstack-ops-database/recipes/client.rb in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:33-08:00] INFO: Storing updated cookbooks/openstack-ops-database/attributes/default.rb in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/openstack-ops-database/LICENSE in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/openstack-ops-database/CHANGELOG.md in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/openstack-ops-database/metadata.rb in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/openstack-ops-database/README.md in the cache. -Feb 21 20:22:34 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/xfs/recipes/default.rb in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:34-08:00] INFO: Storing updated cookbooks/xfs/LICENSE in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/CHANGELOG.md in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/metadata.rb in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/TESTING.md in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/Berksfile in the cache. -Feb 21 20:22:35 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/README.md in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/CONTRIBUTING in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/xfs/.kitchen.yml in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/aws/resources/s3_file.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:35-08:00] INFO: Storing updated cookbooks/aws/resources/elastic_lb.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/resources/resource_tag.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/resources/ebs_volume.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/resources/ebs_raid.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/resources/elastic_ip.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/s3_file.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/elastic_lb.rb in the cache. -Feb 21 20:22:36 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/resource_tag.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/ebs_volume.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/ebs_raid.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:36-08:00] INFO: Storing updated cookbooks/aws/providers/elastic_ip.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/recipes/default.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/libraries/ec2.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/attributes/default.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/LICENSE in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/CHANGELOG.md in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/metadata.rb in the cache. -Feb 21 20:22:37 server2.1 [2014-02-21T20:22:37-08:00] INFO: Storing updated cookbooks/aws/README.md in the cache. -Feb 21 20:22:38 server2.1 [2014-02-21T20:22:38-08:00] INFO: Storing updated cookbooks/aws/CONTRIBUTING in the cache. -Feb 21 20:22:38 server2.1 [2014-02-21T20:22:38-08:00] INFO: Storing updated cookbooks/openssl/recipes/default.rb in the cache. -Feb 21 20:22:39 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/libraries/secure_password.rb in the cache. -Feb 21 20:22:39 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/LICENSE in the cache. -Feb 21 20:22:39 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/CHANGELOG.md in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/metadata.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/README.md in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/openssl/CONTRIBUTING in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:39-08:00] INFO: Storing updated cookbooks/build-essential/recipes/smartos.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/fedora.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/debian.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/rhel.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/default.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/omnios.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/mac_os_x.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/suse.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/recipes/solaris2.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/attributes/default.rb in the cache. -Feb 21 20:22:40 server2.1 [2014-02-21T20:22:40-08:00] INFO: Storing updated cookbooks/build-essential/LICENSE in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/CHANGELOG.md in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/metadata.rb in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/TESTING.md in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/Berksfile in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/README.md in the cache. -Feb 21 20:22:41 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/CONTRIBUTING in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:41-08:00] INFO: Storing updated cookbooks/build-essential/.kitchen.yml in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/resources/repository.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/resources/preference.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/providers/repository.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/providers/preference.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/recipes/default.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/recipes/cacher-ng.rb in the cache. -Feb 21 20:22:42 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/recipes/cacher-client.rb in the cache. -Feb 21 20:22:43 server2.1 [2014-02-21T20:22:42-08:00] INFO: Storing updated cookbooks/apt/attributes/default.rb in the cache. -Feb 21 20:22:43 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/files/default/apt-proxy-v2.conf in the cache. -Feb 21 20:22:43 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/templates/debian-6.0/acng.conf.erb in the cache. -Feb 21 20:22:43 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/templates/ubuntu-10.04/acng.conf.erb in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/templates/default/acng.conf.erb in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/templates/default/01proxy.erb in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:43-08:00] INFO: Storing updated cookbooks/apt/LICENSE in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/CHANGELOG.md in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/metadata.rb in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/TESTING.md in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/Berksfile in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/README.md in the cache. -Feb 21 20:22:44 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/CONTRIBUTING in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:44-08:00] INFO: Storing updated cookbooks/apt/.kitchen.yml in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/yum_pgdg_postgresql.rb in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/server.rb in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/server_redhat.rb in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/config_pgtune.rb in the cache. -Feb 21 20:22:45 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/server_debian.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/contrib.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/default.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:45-08:00] INFO: Storing updated cookbooks/postgresql/recipes/apt_pgdg_postgresql.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/recipes/config_initdb.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/recipes/ruby.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/recipes/client.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/libraries/default.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/attributes/default.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/server_test.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/apt_pgdg_postgresql_test.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/default_test.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/ruby_test.rb in the cache. -Feb 21 20:22:46 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/files/default/tests/minitest/support/helpers.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/templates/default/postgresql.conf.erb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/templates/default/pgsql.sysconfig.erb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/templates/default/pg_hba.conf.erb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/LICENSE in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:46-08:00] INFO: Storing updated cookbooks/postgresql/CHANGELOG.md in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/metadata.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/TESTING.md in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/CONTRIBUTING.md in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/Berksfile in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/README.md in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/postgresql/.kitchen.yml in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/resources/key.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/resources/repository.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/providers/key.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/providers/repository.rb in the cache. -Feb 21 20:22:47 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/recipes/test.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:47-08:00] INFO: Storing updated cookbooks/yum/recipes/epel.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/yum.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/default.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/ius.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/repoforge.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/elrepo.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/recipes/remi.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/attributes/epel.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/attributes/default.rb in the cache. -Feb 21 20:22:48 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/attributes/elrepo.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:48-08:00] INFO: Storing updated cookbooks/yum/attributes/remi.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/files/default/tests/minitest/test_test.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/files/default/tests/minitest/default_test.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/files/default/tests/minitest/support/helpers.rb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/files/default/RPM-GPG-KEY-EPEL-6 in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/templates/default/repo.erb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/templates/default/yum-rhel6.conf.erb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/templates/default/yum-rhel5.conf.erb in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/LICENSE in the cache. -Feb 21 20:22:49 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/CHANGELOG.md in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:49-08:00] INFO: Storing updated cookbooks/yum/metadata.rb in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/yum/CONTRIBUTING.md in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/yum/Berksfile in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/yum/README.md in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/yum/.kitchen.yml in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/openstack-common/recipes/default.rb in the cache. -Feb 21 20:22:51 server2.1 [2014-02-21T20:22:51-08:00] INFO: Storing updated cookbooks/openstack-common/recipes/logging.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/recipes/databag.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/parse.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/endpoints.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/search.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/database.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/network.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/passwords.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/libraries/uri.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/attributes/default.rb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/templates/default/logging.conf.erb in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/LICENSE in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/Strainerfile in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/.tailor in the cache. -Feb 21 20:22:52 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/CHANGELOG.md in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/metadata.rb in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/Berksfile in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/README.md in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/Gemfile.lock in the cache. -Feb 21 20:22:53 server2.1 [2014-02-21T20:22:52-08:00] INFO: Storing updated cookbooks/openstack-common/Gemfile in the cache. -Feb 21 20:23:05 server2.1 [2014-02-21T20:23:04-08:00] INFO: Processing package[autoconf] action install (build-essential::rhel line 38) -Feb 21 20:23:47 server2.1 [2014-02-21T20:23:46-08:00] INFO: package[autoconf] installing autoconf-2.63-5.1.el6 from base repository -Feb 21 20:25:48 server2.1 [2014-02-21T20:25:48-08:00] INFO: Processing package[bison] action install (build-essential::rhel line 38) -Feb 21 20:25:49 server2.1 [2014-02-21T20:25:49-08:00] INFO: package[bison] installing bison-2.4.1-5.el6 from base repository -Feb 21 20:26:04 server2.1 [2014-02-21T20:26:03-08:00] INFO: Processing package[flex] action install (build-essential::rhel line 38) -Feb 21 20:26:04 server2.1 [2014-02-21T20:26:03-08:00] INFO: package[flex] installing flex-2.5.35-8.el6 from base repository -Feb 21 20:26:11 server2.1 [2014-02-21T20:26:10-08:00] INFO: Processing package[gcc] action install (build-essential::rhel line 38) -Feb 21 20:26:14 server2.1 [2014-02-21T20:26:13-08:00] INFO: package[gcc] installing gcc-4.4.7-4.el6 from base repository -Feb 21 20:28:09 server2.1 [2014-02-21T20:28:09-08:00] INFO: Processing package[gcc-c++] action install (build-essential::rhel line 38) -Feb 21 20:28:11 server2.1 [2014-02-21T20:28:11-08:00] INFO: package[gcc-c++] installing gcc-c++-4.4.7-4.el6 from base repository -Feb 21 20:28:35 server2.1 [2014-02-21T20:28:35-08:00] INFO: Processing package[kernel-devel] action install (build-essential::rhel line 38) -Feb 21 20:28:38 server2.1 [2014-02-21T20:28:38-08:00] INFO: package[kernel-devel] installing kernel-devel-2.6.32-431.5.1.el6 from updates repository -Feb 21 20:29:49 server2.1 [2014-02-21T20:29:49-08:00] INFO: Processing package[make] action install (build-essential::rhel line 38) -Feb 21 20:29:49 server2.1 [2014-02-21T20:29:49-08:00] INFO: Processing package[m4] action install (build-essential::rhel line 38) -Feb 21 20:29:49 server2.1 [2014-02-21T20:29:49-08:00] INFO: Processing package[mysql] action install (mysql::client line 46) -Feb 21 20:29:49 server2.1 [2014-02-21T20:29:49-08:00] INFO: package[mysql] installing mysql-5.1.73-3.el6_5 from updates repository -Feb 21 20:30:18 server2.1 [2014-02-21T20:30:18-08:00] INFO: Processing package[mysql-devel] action install (mysql::client line 46) -Feb 21 20:30:19 server2.1 [2014-02-21T20:30:19-08:00] INFO: package[mysql-devel] installing mysql-devel-5.1.73-3.el6_5 from updates repository -Feb 21 20:31:06 server2.1 [2014-02-21T20:31:05-08:00] INFO: Processing chef_gem[mysql] action install (mysql::ruby line 31) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for directory[/var/lib/mysql] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous directory[/var/lib/mysql]: /var/chef/cache/cookbooks/mysql/recipes/server.rb:115:in `block in from_file' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current directory[/var/lib/mysql]: /var/chef/cache/cookbooks/mysql/recipes/server.rb:115:in `block in from_file' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] INFO: Could not find previously defined grants.sql resource -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for service[mysql] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous service[mysql]: /var/chef/cache/cookbooks/mysql/recipes/server.rb:161:in `from_file' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current service[mysql]: /var/chef/cache/cookbooks/mysql/recipes/server.rb:225:in `from_file' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[horizon] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[horizon]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[horizon]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[ceilometer] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[ceilometer]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[ceilometer]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Cloning resource attributes for database_user[service] from prior resource (CHEF-3694) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Previous database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:82:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] WARN: Current database_user[service]: /var/chef/cache/cookbooks/openstack-common/libraries/database.rb:90:in `db_create_with_user' -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] INFO: Processing yum_key[RPM-GPG-KEY-EPEL-6] action add (yum::epel line 22) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] INFO: Adding RPM-GPG-KEY-EPEL-6 GPG key to /etc/pki/rpm-gpg/ -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:25-08:00] INFO: Processing package[gnupg2] action install (/var/chef/cache/cookbooks/yum/providers/key.rb line 32) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing execute[import-rpm-gpg-key-RPM-GPG-KEY-EPEL-6] action nothing (/var/chef/cache/cookbooks/yum/providers/key.rb line 35) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing cookbook_file[/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6] action create (/var/chef/cache/cookbooks/yum/providers/key.rb line 66) -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: cookbook_file[/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6] created file /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: cookbook_file[/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6] updated file contents /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 -Feb 21 20:31:26 server2.1 [2014-02-21T20:31:26-08:00] INFO: cookbook_file[/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6] mode changed to 644 -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing yum_repository[epel] action add (yum::epel line 27) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Adding epel repository to /etc/yum.repos.d/epel.repo -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] WARN: Cloning resource attributes for yum_key[RPM-GPG-KEY-EPEL-6] from prior resource (CHEF-3694) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] WARN: Previous yum_key[RPM-GPG-KEY-EPEL-6]: /var/chef/cache/cookbooks/yum/recipes/epel.rb:22:in `from_file' -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] WARN: Current yum_key[RPM-GPG-KEY-EPEL-6]: /var/chef/cache/cookbooks/yum/providers/repository.rb:85:in `repo_config' -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing yum_key[RPM-GPG-KEY-EPEL-6] action add (/var/chef/cache/cookbooks/yum/providers/repository.rb line 85) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing execute[yum-makecache] action nothing (/var/chef/cache/cookbooks/yum/providers/repository.rb line 88) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing ruby_block[reload-internal-yum-cache] action nothing (/var/chef/cache/cookbooks/yum/providers/repository.rb line 93) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing template[/etc/yum.repos.d/epel.repo] action create (/var/chef/cache/cookbooks/yum/providers/repository.rb line 100) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: template[/etc/yum.repos.d/epel.repo] created file /etc/yum.repos.d/epel.repo -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: template[/etc/yum.repos.d/epel.repo] updated file contents /etc/yum.repos.d/epel.repo -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: template[/etc/yum.repos.d/epel.repo] mode changed to 644 -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: template[/etc/yum.repos.d/epel.repo] sending run action to execute[yum-makecache] (immediate) -Feb 21 20:31:27 server2.1 [2014-02-21T20:31:26-08:00] INFO: Processing execute[yum-makecache] action run (/var/chef/cache/cookbooks/yum/providers/repository.rb line 88) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: execute[yum-makecache] ran successfully -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/epel.repo] sending create action to ruby_block[reload-internal-yum-cache] (immediate) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing ruby_block[reload-internal-yum-cache] action create (/var/chef/cache/cookbooks/yum/providers/repository.rb line 93) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: ruby_block[reload-internal-yum-cache] called -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing yum_repository[openstack] action create (openstack-common::default line 103) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Adding and updating openstack repository in /etc/yum.repos.d/openstack.repo -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Cloning resource attributes for execute[yum-makecache] from prior resource (CHEF-3694) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Previous execute[yum-makecache]: /var/chef/cache/cookbooks/yum/providers/repository.rb:88:in `repo_config' -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Current execute[yum-makecache]: /var/chef/cache/cookbooks/yum/providers/repository.rb:88:in `repo_config' -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Cloning resource attributes for ruby_block[reload-internal-yum-cache] from prior resource (CHEF-3694) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Previous ruby_block[reload-internal-yum-cache]: /var/chef/cache/cookbooks/yum/providers/repository.rb:93:in `repo_config' -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] WARN: Current ruby_block[reload-internal-yum-cache]: /var/chef/cache/cookbooks/yum/providers/repository.rb:93:in `repo_config' -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing execute[yum-makecache] action nothing (/var/chef/cache/cookbooks/yum/providers/repository.rb line 88) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing ruby_block[reload-internal-yum-cache] action nothing (/var/chef/cache/cookbooks/yum/providers/repository.rb line 93) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing template[/etc/yum.repos.d/openstack.repo] action create (/var/chef/cache/cookbooks/yum/providers/repository.rb line 100) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] created file /etc/yum.repos.d/openstack.repo -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] updated file contents /etc/yum.repos.d/openstack.repo -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] mode changed to 644 -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] sending run action to execute[yum-makecache] (immediate) -Feb 21 20:32:35 server2.1 [2014-02-21T20:32:35-08:00] INFO: Processing execute[yum-makecache] action run (/var/chef/cache/cookbooks/yum/providers/repository.rb line 88) -Feb 21 20:32:51 server2.1 [2014-02-21T20:32:51-08:00] INFO: execute[yum-makecache] ran successfully -Feb 21 20:32:51 server2.1 [2014-02-21T20:32:51-08:00] INFO: template[/etc/yum.repos.d/openstack.repo] sending create action to ruby_block[reload-internal-yum-cache] (immediate) -Feb 21 20:32:51 server2.1 [2014-02-21T20:32:51-08:00] INFO: Processing ruby_block[reload-internal-yum-cache] action create (/var/chef/cache/cookbooks/yum/providers/repository.rb line 93) -Feb 21 20:32:51 server2.1 [2014-02-21T20:32:51-08:00] INFO: ruby_block[reload-internal-yum-cache] called -Feb 21 20:32:51 server2.1 [2014-02-21T20:32:51-08:00] INFO: Processing execute[yum-update] action run (openstack-common::default line 110) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: execute[yum-update] ran successfully -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing directory[/etc/openstack] action create (openstack-common::logging line 20) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: directory[/etc/openstack] created directory /etc/openstack -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: directory[/etc/openstack] owner changed to 0 -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: directory[/etc/openstack] group changed to 0 -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: directory[/etc/openstack] mode changed to 755 -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing template[/etc/openstack/logging.conf] action create (openstack-common::logging line 27) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: template[/etc/openstack/logging.conf] created file /etc/openstack/logging.conf -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: template[/etc/openstack/logging.conf] updated file contents /etc/openstack/logging.conf -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: template[/etc/openstack/logging.conf] owner changed to 0 -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: template[/etc/openstack/logging.conf] group changed to 0 -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: template[/etc/openstack/logging.conf] mode changed to 644 -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing package[autoconf] action nothing (build-essential::rhel line 38) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing package[bison] action nothing (build-essential::rhel line 38) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing package[flex] action nothing (build-essential::rhel line 38) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing package[gcc] action nothing (build-essential::rhel line 38) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing package[gcc-c++] action nothing (build-essential::rhel line 38) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing package[kernel-devel] action nothing (build-essential::rhel line 38) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing package[make] action nothing (build-essential::rhel line 38) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing package[m4] action nothing (build-essential::rhel line 38) -Feb 21 20:37:21 server2.1 [2014-02-21T20:37:20-08:00] INFO: Processing package[mysql] action install (mysql::client line 46) -Feb 21 20:37:26 server2.1 [2014-02-21T20:37:25-08:00] INFO: Processing package[mysql-devel] action install (mysql::client line 46) -Feb 21 20:37:26 server2.1 [2014-02-21T20:37:25-08:00] INFO: Processing chef_gem[mysql] action install (mysql::ruby line 31) -Feb 21 20:37:26 server2.1 [2014-02-21T20:37:26-08:00] INFO: Processing package[mysql-server] action install (mysql::server line 101) -Feb 21 20:37:26 server2.1 [2014-02-21T20:37:26-08:00] INFO: package[mysql-server] installing mysql-server-5.1.73-3.el6_5 from updates repository -Feb 21 20:37:46 server2.1 [2014-02-21T20:37:45-08:00] INFO: package[mysql-server] sending start action to service[mysql] (immediate) -Feb 21 20:37:46 server2.1 [2014-02-21T20:37:45-08:00] INFO: Processing service[mysql] action start (mysql::server line 225) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: service[mysql] started -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing directory[/var/run/mysqld] action create (mysql::server line 115) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing directory[/var/log/mysql] action create (mysql::server line 115) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: directory[/var/log/mysql] created directory /var/log/mysql -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: directory[/var/log/mysql] owner changed to 27 -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: directory[/var/log/mysql] group changed to 27 -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing directory[/etc] action create (mysql::server line 115) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: directory[/etc] owner changed to 27 -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: directory[/etc] group changed to 27 -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing directory[/etc/mysql/conf.d] action create (mysql::server line 115) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: directory[/etc/mysql/conf.d] created directory /etc/mysql/conf.d -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: directory[/etc/mysql/conf.d] owner changed to 27 -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: directory[/etc/mysql/conf.d] group changed to 27 -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing directory[/var/lib/mysql] action create (mysql::server line 115) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing directory[/var/lib/mysql] action create (mysql::server line 115) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing execute[mysql-install-db] action run (mysql::server line 155) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing service[mysql] action enable (mysql::server line 161) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: service[mysql] enabled -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing execute[assign-root-password] action run (mysql::server line 173) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: execute[assign-root-password] ran successfully -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing template[/etc/mysql_grants.sql] action create (mysql::server line 186) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: template[/etc/mysql_grants.sql] created file /etc/mysql_grants.sql -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: template[/etc/mysql_grants.sql] updated file contents /etc/mysql_grants.sql -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: template[/etc/mysql_grants.sql] owner changed to 0 -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: template[/etc/mysql_grants.sql] group changed to 0 -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: template[/etc/mysql_grants.sql] mode changed to 600 -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: template[/etc/mysql_grants.sql] sending run action to execute[mysql-install-privileges] (immediate) -Feb 21 20:38:00 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing execute[mysql-install-privileges] action run (mysql::server line 202) -Feb 21 20:38:01 server2.1 [2014-02-21T20:38:00-08:00] INFO: execute[mysql-install-privileges] ran successfully -Feb 21 20:38:01 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing execute[mysql-install-privileges] action nothing (mysql::server line 202) -Feb 21 20:38:01 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing template[/etc/my.cnf] action create (mysql::server line 209) -Feb 21 20:38:01 server2.1 [2014-02-21T20:38:00-08:00] INFO: template[/etc/my.cnf] backed up to /var/chef/backup/etc/my.cnf.chef-20140221203800.767413 -Feb 21 20:38:01 server2.1 [2014-02-21T20:38:00-08:00] INFO: template[/etc/my.cnf] updated file contents /etc/my.cnf -Feb 21 20:38:01 server2.1 [2014-02-21T20:38:00-08:00] INFO: template[/etc/my.cnf] sending restart action to service[mysql] (immediate) -Feb 21 20:38:01 server2.1 [2014-02-21T20:38:00-08:00] INFO: Processing service[mysql] action restart (mysql::server line 225) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: service[mysql] restarted -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing service[mysql] action start (mysql::server line 225) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing mysql_database_user[drop empty localhost user] action drop (openstack-ops-database::mysql-server line 42) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing mysql_database_user[drop empty hostname user] action drop (openstack-ops-database::mysql-server line 50) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing mysql_database[test] action drop (openstack-ops-database::mysql-server line 58) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing mysql_database[FLUSH privileges] action nothing (openstack-ops-database::mysql-server line 64) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database[create nova database] action create (openstack-ops-database::openstack-db line 74) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action create (openstack-ops-database::openstack-db line 82) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action grant (openstack-ops-database::openstack-db line 90) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: database_user[service]: granting access with statement [GRANT all ON `nova`.* TO `service`@`%` IDENTIFIED BY [FILTERED]] -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database[create horizon database] action create (openstack-ops-database::openstack-db line 74) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[horizon] action create (openstack-ops-database::openstack-db line 82) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[horizon] action grant (openstack-ops-database::openstack-db line 90) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: database_user[horizon]: granting access with statement [GRANT all ON `horizon`.* TO `horizon`@`%` IDENTIFIED BY [FILTERED]] -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database[create keystone database] action create (openstack-ops-database::openstack-db line 74) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action create (openstack-ops-database::openstack-db line 82) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action grant (openstack-ops-database::openstack-db line 90) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: database_user[service]: granting access with statement [GRANT all ON `keystone`.* TO `service`@`%` IDENTIFIED BY [FILTERED]] -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database[create glance database] action create (openstack-ops-database::openstack-db line 74) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action create (openstack-ops-database::openstack-db line 82) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action grant (openstack-ops-database::openstack-db line 90) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: database_user[service]: granting access with statement [GRANT all ON `glance`.* TO `service`@`%` IDENTIFIED BY [FILTERED]] -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database[create ceilometer database] action create (openstack-ops-database::openstack-db line 74) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[ceilometer] action create (openstack-ops-database::openstack-db line 82) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[ceilometer] action grant (openstack-ops-database::openstack-db line 90) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: database_user[ceilometer]: granting access with statement [GRANT all ON `ceilometer`.* TO `ceilometer`@`%` IDENTIFIED BY [FILTERED]] -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database[create quantum database] action create (openstack-ops-database::openstack-db line 74) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action create (openstack-ops-database::openstack-db line 82) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action grant (openstack-ops-database::openstack-db line 90) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: database_user[service]: granting access with statement [GRANT all ON `quantum`.* TO `service`@`%` IDENTIFIED BY [FILTERED]] -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database[create cinder database] action create (openstack-ops-database::openstack-db line 74) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action create (openstack-ops-database::openstack-db line 82) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing database_user[service] action grant (openstack-ops-database::openstack-db line 90) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: database_user[service]: granting access with statement [GRANT all ON `cinder`.* TO `service`@`%` IDENTIFIED BY [FILTERED]] -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: [mysql_database[test]] sending query action to mysql_database[FLUSH privileges] (delayed) -Feb 21 20:38:06 server2.1 [2014-02-21T20:38:06-08:00] INFO: Processing mysql_database[FLUSH privileges] action query (openstack-ops-database::mysql-server line 64) -Feb 21 20:38:07 server2.1 [2014-02-21T20:38:07-08:00] INFO: Chef Run complete in 948.167010559 seconds -Feb 21 20:38:08 server2.1 [2014-02-21T20:38:07-08:00] INFO: Running report handlers -Feb 21 20:38:08 server2.1 [2014-02-21T20:38:07-08:00] INFO: Report handlers complete diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/install.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/install.log.template deleted file mode 100644 index 861b3a53..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/install.log.template +++ /dev/null @@ -1,212 +0,0 @@ -Installing libgcc-4.4.7-4.el6.x86_64 -warning: libgcc-4.4.7-4.el6.x86_64: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY -Installing setup-2.8.14-20.el6_4.1.noarch -Installing filesystem-2.4.30-3.el6.x86_64 -Installing basesystem-10.0-4.el6.noarch -Installing ncurses-base-5.7-3.20090208.el6.x86_64 -Installing kernel-firmware-2.6.32-431.el6.noarch -Installing tzdata-2013g-1.el6.noarch -Installing nss-softokn-freebl-3.14.3-9.el6.x86_64 -Installing glibc-common-2.12-1.132.el6.x86_64 -Installing glibc-2.12-1.132.el6.x86_64 -Installing ncurses-libs-5.7-3.20090208.el6.x86_64 -Installing bash-4.1.2-15.el6_4.x86_64 -Installing libattr-2.4.44-7.el6.x86_64 -Installing libcap-2.16-5.5.el6.x86_64 -Installing zlib-1.2.3-29.el6.x86_64 -Installing info-4.13a-8.el6.x86_64 -Installing popt-1.13-7.el6.x86_64 -Installing chkconfig-1.3.49.3-2.el6_4.1.x86_64 -Installing audit-libs-2.2-2.el6.x86_64 -Installing libcom_err-1.41.12-18.el6.x86_64 -Installing libacl-2.2.49-6.el6.x86_64 -Installing db4-4.7.25-18.el6_4.x86_64 -Installing nspr-4.10.0-1.el6.x86_64 -Installing nss-util-3.15.1-3.el6.x86_64 -Installing readline-6.0-4.el6.x86_64 -Installing libsepol-2.0.41-4.el6.x86_64 -Installing libselinux-2.0.94-5.3.el6_4.1.x86_64 -Installing shadow-utils-4.1.4.2-13.el6.x86_64 -Installing sed-4.2.1-10.el6.x86_64 -Installing bzip2-libs-1.0.5-7.el6_0.x86_64 -Installing libuuid-2.17.2-12.14.el6.x86_64 -Installing libstdc++-4.4.7-4.el6.x86_64 -Installing libblkid-2.17.2-12.14.el6.x86_64 -Installing gawk-3.1.7-10.el6.x86_64 -Installing file-libs-5.04-15.el6.x86_64 -Installing libgpg-error-1.7-4.el6.x86_64 -Installing dbus-libs-1.2.24-7.el6_3.x86_64 -Installing libudev-147-2.51.el6.x86_64 -Installing pcre-7.8-6.el6.x86_64 -Installing grep-2.6.3-4.el6.x86_64 -Installing lua-5.1.4-4.1.el6.x86_64 -Installing sqlite-3.6.20-1.el6.x86_64 -Installing cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64 -Installing libidn-1.18-2.el6.x86_64 -Installing expat-2.0.1-11.el6_2.x86_64 -Installing xz-libs-4.999.9-0.3.beta.20091007git.el6.x86_64 -Installing elfutils-libelf-0.152-1.el6.x86_64 -Installing libgcrypt-1.4.5-11.el6_4.x86_64 -Installing bzip2-1.0.5-7.el6_0.x86_64 -Installing findutils-4.4.2-6.el6.x86_64 -Installing libselinux-utils-2.0.94-5.3.el6_4.1.x86_64 -Installing checkpolicy-2.0.22-1.el6.x86_64 -Installing cpio-2.10-11.el6_3.x86_64 -Installing which-2.19-6.el6.x86_64 -Installing libxml2-2.7.6-14.el6.x86_64 -Installing libedit-2.11-4.20080712cvs.1.el6.x86_64 -Installing pth-2.0.7-9.3.el6.x86_64 -Installing tcp_wrappers-libs-7.6-57.el6.x86_64 -Installing sysvinit-tools-2.87-5.dsf.el6.x86_64 -Installing libtasn1-2.3-3.el6_2.1.x86_64 -Installing p11-kit-0.18.5-2.el6.x86_64 -Installing p11-kit-trust-0.18.5-2.el6.x86_64 -Installing ca-certificates-2013.1.94-65.0.el6.noarch -Installing device-mapper-persistent-data-0.2.8-2.el6.x86_64 -Installing nss-softokn-3.14.3-9.el6.x86_64 -Installing libnih-1.0.1-7.el6.x86_64 -Installing upstart-0.6.5-12.el6_4.1.x86_64 -Installing file-5.04-15.el6.x86_64 -Installing gmp-4.3.1-7.el6_2.2.x86_64 -Installing libusb-0.1.12-23.el6.x86_64 -Installing MAKEDEV-3.24-6.el6.x86_64 -Installing libutempter-1.1.5-4.1.el6.x86_64 -Installing psmisc-22.6-15.el6_0.1.x86_64 -Installing net-tools-1.60-110.el6_2.x86_64 -Installing vim-minimal-7.2.411-1.8.el6.x86_64 -Installing tar-1.23-11.el6.x86_64 -Installing procps-3.2.8-25.el6.x86_64 -Installing db4-utils-4.7.25-18.el6_4.x86_64 -Installing e2fsprogs-libs-1.41.12-18.el6.x86_64 -Installing libss-1.41.12-18.el6.x86_64 -Installing pinentry-0.7.6-6.el6.x86_64 -Installing binutils-2.20.51.0.2-5.36.el6.x86_64 -Installing m4-1.4.13-5.el6.x86_64 -Installing diffutils-2.8.1-28.el6.x86_64 -Installing make-3.81-20.el6.x86_64 -Installing dash-0.5.5.1-4.el6.x86_64 -Installing ncurses-5.7-3.20090208.el6.x86_64 -Installing groff-1.18.1.4-21.el6.x86_64 -Installing less-436-10.el6.x86_64 -Installing coreutils-libs-8.4-31.el6.x86_64 -Installing gzip-1.3.12-19.el6_4.x86_64 -Installing cracklib-2.8.16-4.el6.x86_64 -Installing cracklib-dicts-2.8.16-4.el6.x86_64 -Installing coreutils-8.4-31.el6.x86_64 -Installing pam-1.1.1-17.el6.x86_64 -Installing module-init-tools-3.9-21.el6_4.x86_64 -Installing hwdata-0.233-9.1.el6.noarch -Installing redhat-logos-60.0.14-12.el6.centos.noarch -Installing plymouth-scripts-0.8.3-27.el6.centos.x86_64 -Installing libpciaccess-0.13.1-2.el6.x86_64 -Installing nss-3.15.1-15.el6.x86_64 -Installing nss-sysinit-3.15.1-15.el6.x86_64 -Installing nss-tools-3.15.1-15.el6.x86_64 -Installing openldap-2.4.23-32.el6_4.1.x86_64 -Installing logrotate-3.7.8-17.el6.x86_64 -Installing gdbm-1.8.0-36.el6.x86_64 -Installing mingetty-1.08-5.el6.x86_64 -Installing keyutils-libs-1.4-4.el6.x86_64 -Installing krb5-libs-1.10.3-10.el6_4.6.x86_64 -Installing openssl-1.0.1e-15.el6.x86_64 -Installing libssh2-1.4.2-1.el6.x86_64 -Installing libcurl-7.19.7-37.el6_4.x86_64 -Installing gnupg2-2.0.14-6.el6_4.x86_64 -Installing gpgme-1.1.8-3.el6.x86_64 -Installing curl-7.19.7-37.el6_4.x86_64 -Installing rpm-libs-4.8.0-37.el6.x86_64 -Installing rpm-4.8.0-37.el6.x86_64 -Installing fipscheck-lib-1.2.0-7.el6.x86_64 -Installing fipscheck-1.2.0-7.el6.x86_64 -Installing mysql-libs-5.1.71-1.el6.x86_64 -Installing ethtool-3.5-1.el6.x86_64 -Installing pciutils-libs-3.1.10-2.el6.x86_64 -Installing plymouth-core-libs-0.8.3-27.el6.centos.x86_64 -Installing libcap-ng-0.6.4-3.el6_0.1.x86_64 -Installing libffi-3.0.5-3.2.el6.x86_64 -Installing python-2.6.6-51.el6.x86_64 -Installing python-libs-2.6.6-51.el6.x86_64 -Installing python-pycurl-7.19.0-8.el6.x86_64 -Installing python-urlgrabber-3.9.1-9.el6.noarch -Installing pygpgme-0.1-18.20090824bzr68.el6.x86_64 -Installing rpm-python-4.8.0-37.el6.x86_64 -Installing python-iniparse-0.3.1-2.1.el6.noarch -Installing slang-2.2.1-1.el6.x86_64 -Installing newt-0.52.11-3.el6.x86_64 -Installing newt-python-0.52.11-3.el6.x86_64 -Installing ustr-1.0.4-9.1.el6.x86_64 -Installing libsemanage-2.0.43-4.2.el6.x86_64 -Installing libaio-0.3.107-10.el6.x86_64 -Installing pkgconfig-0.23-9.1.el6.x86_64 -Installing gamin-0.1.10-9.el6.x86_64 -Installing glib2-2.26.1-3.el6.x86_64 -Installing shared-mime-info-0.70-4.el6.x86_64 -Installing libuser-0.56.13-5.el6.x86_64 -Installing grubby-7.0.15-5.el6.x86_64 -Installing yum-metadata-parser-1.1.2-16.el6.x86_64 -Installing yum-plugin-fastestmirror-1.1.30-14.el6.noarch -Installing yum-3.2.29-40.el6.centos.noarch -Installing dbus-glib-0.86-6.el6.x86_64 -Installing dhcp-common-4.1.1-38.P1.el6.centos.x86_64 -Installing centos-release-6-5.el6.centos.11.1.x86_64 -Installing policycoreutils-2.0.83-19.39.el6.x86_64 -Installing iptables-1.4.7-11.el6.x86_64 -Installing iproute-2.6.32-31.el6.x86_64 -Installing iputils-20071127-17.el6_4.2.x86_64 -Installing util-linux-ng-2.17.2-12.14.el6.x86_64 -Installing initscripts-9.03.40-2.el6.centos.x86_64 -Installing udev-147-2.51.el6.x86_64 -Installing device-mapper-libs-1.02.79-8.el6.x86_64 -Installing device-mapper-1.02.79-8.el6.x86_64 -Installing device-mapper-event-libs-1.02.79-8.el6.x86_64 -Installing openssh-5.3p1-94.el6.x86_64 -Installing device-mapper-event-1.02.79-8.el6.x86_64 -Installing lvm2-libs-2.02.100-8.el6.x86_64 -Installing cryptsetup-luks-libs-1.2.0-7.el6.x86_64 -Installing device-mapper-multipath-libs-0.4.9-72.el6.x86_64 -Installing kpartx-0.4.9-72.el6.x86_64 -Installing libdrm-2.4.45-2.el6.x86_64 -Installing plymouth-0.8.3-27.el6.centos.x86_64 -Installing rsyslog-5.8.10-8.el6.x86_64 -Installing cyrus-sasl-2.1.23-13.el6_3.1.x86_64 -Installing postfix-2.6.6-2.2.el6_1.x86_64 -Installing cronie-anacron-1.4.4-12.el6.x86_64 -Installing cronie-1.4.4-12.el6.x86_64 -Installing crontabs-1.10-33.el6.noarch -Installing ntpdate-4.2.6p5-1.el6.centos.x86_64 -Installing iptables-ipv6-1.4.7-11.el6.x86_64 -Installing selinux-policy-3.7.19-231.el6.noarch -Installing kbd-misc-1.15-11.el6.noarch -Installing kbd-1.15-11.el6.x86_64 -Installing dracut-004-335.el6.noarch -Installing dracut-kernel-004-335.el6.noarch -Installing kernel-2.6.32-431.el6.x86_64 -Installing fuse-2.8.3-4.el6.x86_64 -Installing selinux-policy-targeted-3.7.19-231.el6.noarch -Installing system-config-firewall-base-1.2.27-5.el6.noarch -Installing ntp-4.2.6p5-1.el6.centos.x86_64 -Installing device-mapper-multipath-0.4.9-72.el6.x86_64 -Installing cryptsetup-luks-1.2.0-7.el6.x86_64 -Installing lvm2-2.02.100-8.el6.x86_64 -Installing openssh-clients-5.3p1-94.el6.x86_64 -Installing openssh-server-5.3p1-94.el6.x86_64 -Installing mdadm-3.2.6-7.el6.x86_64 -Installing b43-openfwwf-5.2-4.el6.noarch -Installing dhclient-4.1.1-38.P1.el6.centos.x86_64 -Installing iscsi-initiator-utils-6.2.0.873-10.el6.x86_64 -Installing passwd-0.77-4.el6_2.2.x86_64 -Installing authconfig-6.1.12-13.el6.x86_64 -Installing grub-0.97-83.el6.x86_64 -Installing efibootmgr-0.5.4-11.el6.x86_64 -Installing wget-1.12-1.8.el6.x86_64 -Installing sudo-1.8.6p3-12.el6.x86_64 -Installing audit-2.2-2.el6.x86_64 -Installing e2fsprogs-1.41.12-18.el6.x86_64 -Installing xfsprogs-3.1.1-14.el6.x86_64 -Installing acl-2.2.49-6.el6.x86_64 -Installing attr-2.4.44-7.el6.x86_64 -Installing chef-11.8.0-1.el6.x86_64 -warning: chef-11.8.0-1.el6.x86_64: Header V4 DSA/SHA1 Signature, key ID 83ef826a: NOKEY -Installing bridge-utils-1.2-10.el6.x86_64 -Installing rootfiles-8.1-6.1.el6.noarch -*** FINISHED INSTALLING PACKAGES *** \ No newline at end of file diff --git a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/sys.log.template b/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/sys.log.template deleted file mode 100644 index 1fbb5602..00000000 --- a/compass/tests/actions/update_progress/data/test2/anamon/checkpoint_5/server2.1/sys.log.template +++ /dev/null @@ -1,1628 +0,0 @@ -05:50:20,517 INFO kernel:imklog 5.8.10, log source = /proc/kmsg started. -05:50:20,517 INFO rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="68" x-info="http://www.rsyslog.com"] start -05:50:20,517 INFO kernel:Initializing cgroup subsys cpuset -05:50:20,517 INFO kernel:Initializing cgroup subsys cpu -05:50:20,517 NOTICE kernel:Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 -05:50:20,517 INFO kernel:Command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,517 INFO kernel:KERNEL supported cpus: -05:50:20,517 INFO kernel: Intel GenuineIntel -05:50:20,517 INFO kernel: AMD AuthenticAMD -05:50:20,517 INFO kernel: Centaur CentaurHauls -05:50:20,517 INFO kernel:Disabled fast string operations -05:50:20,517 INFO kernel:BIOS-provided physical RAM map: -05:50:20,517 INFO kernel: BIOS-e820: 0000000000000000 - 000000000009f400 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000000009f400 - 00000000000a0000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000ca000 - 00000000000cc000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000000dc000 - 0000000000100000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 0000000000100000 - 000000007fef0000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 000000007fef0000 - 000000007feff000 (ACPI data) -05:50:20,517 INFO kernel: BIOS-e820: 000000007feff000 - 000000007ff00000 (ACPI NVS) -05:50:20,517 INFO kernel: BIOS-e820: 000000007ff00000 - 0000000080000000 (usable) -05:50:20,517 INFO kernel: BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved) -05:50:20,517 INFO kernel: BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved) -05:50:20,517 INFO kernel:DMI present. -05:50:20,517 WARNING kernel:SMBIOS version 2.4 @ 0xF68F0 -05:50:20,517 DEBUG kernel:DMI: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011 -05:50:20,517 NOTICE kernel:Phoenix BIOS detected: BIOS may corrupt low RAM, working around it. -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved) -05:50:20,517 INFO kernel:Hypervisor detected: VMware -05:50:20,517 DEBUG kernel:e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved) -05:50:20,517 DEBUG kernel:e820 remove range: 00000000000a0000 - 0000000000100000 (usable) -05:50:20,517 INFO kernel:last_pfn = 0x80000 max_arch_pfn = 0x400000000 -05:50:20,517 DEBUG kernel:MTRR default type: uncachable -05:50:20,517 DEBUG kernel:MTRR fixed ranges enabled: -05:50:20,517 DEBUG kernel: 00000-9FFFF write-back -05:50:20,517 DEBUG kernel: A0000-BFFFF uncachable -05:50:20,517 DEBUG kernel: C0000-CFFFF write-protect -05:50:20,517 DEBUG kernel: D0000-EFFFF uncachable -05:50:20,517 DEBUG kernel: F0000-FFFFF write-protect -05:50:20,517 DEBUG kernel:MTRR variable ranges enabled: -05:50:20,517 DEBUG kernel: 0 base 0000000000 mask FF80000000 write-back -05:50:20,517 DEBUG kernel: 1 disabled -05:50:20,517 DEBUG kernel: 2 disabled -05:50:20,517 DEBUG kernel: 3 disabled -05:50:20,517 DEBUG kernel: 4 disabled -05:50:20,517 DEBUG kernel: 5 disabled -05:50:20,517 DEBUG kernel: 6 disabled -05:50:20,517 DEBUG kernel: 7 disabled -05:50:20,517 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,517 DEBUG kernel:initial memory mapped : 0 - 20000000 -05:50:20,517 INFO kernel:init_memory_mapping: 0000000000000000-0000000080000000 -05:50:20,517 DEBUG kernel: 0000000000 - 0080000000 page 2M -05:50:20,517 DEBUG kernel:kernel direct mapping tables up to 80000000 @ 10000-13000 -05:50:20,517 INFO kernel:RAMDISK: 7def9000 - 7fecf4ff -05:50:20,517 WARNING kernel:ACPI: RSDP 00000000000f6940 00024 (v02 PTLTD ) -05:50:20,517 WARNING kernel:ACPI: XSDT 000000007fef0333 00054 (v01 INTEL 440BX 06040000 VMW 01324272) -05:50:20,517 WARNING kernel:ACPI: FACP 000000007fefee98 000F4 (v04 INTEL 440BX 06040000 PTL 000F4240) -05:50:20,517 WARNING kernel:ACPI: DSDT 000000007fef055d 0E93B (v01 PTLTD Custom 06040000 MSFT 03000001) -05:50:20,517 WARNING kernel:ACPI: FACS 000000007fefffc0 00040 -05:50:20,517 WARNING kernel:ACPI: BOOT 000000007fef0535 00028 (v01 PTLTD $SBFTBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: APIC 000000007fef04d7 0005E (v01 PTLTD ? APIC 06040000 LTP 00000000) -05:50:20,517 WARNING kernel:ACPI: MCFG 000000007fef049b 0003C (v01 PTLTD $PCITBL$ 06040000 LTP 00000001) -05:50:20,517 WARNING kernel:ACPI: SRAT 000000007fef03fb 000A0 (v02 VMWARE MEMPLUG 06040000 VMW 00000001) -05:50:20,517 WARNING kernel:ACPI: HPET 000000007fef03c3 00038 (v01 VMWARE VMW HPET 06040000 WMV 00000001) -05:50:20,517 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,517 INFO kernel:Setting APIC routing to flat. -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 0 -> Node 0 -05:50:20,517 INFO kernel:SRAT: PXM 0 -> APIC 1 -> Node 0 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 0-a0000 -05:50:20,517 INFO kernel:SRAT: Node 0 PXM 0 100000-80000000 -05:50:20,517 DEBUG kernel:NUMA: Allocated memnodemap from 11000 - 12040 -05:50:20,517 DEBUG kernel:NUMA: Using 20 for the hash shift. -05:50:20,517 INFO kernel:Bootmem setup node 0 0000000000000000-0000000080000000 -05:50:20,517 INFO kernel: NODE_DATA [0000000000012040 - 000000000004603f] -05:50:20,517 INFO kernel: bootmap [0000000000047000 - 0000000000056fff] pages 10 -05:50:20,517 INFO kernel:(8 early reservations) ==> bootmem [0000000000 - 0080000000] -05:50:20,517 INFO kernel: #0 [0000000000 - 0000001000] BIOS data page ==> [0000000000 - 0000001000] -05:50:20,517 INFO kernel: #1 [0000006000 - 0000008000] TRAMPOLINE ==> [0000006000 - 0000008000] -05:50:20,517 INFO kernel: #2 [0001000000 - 000201faa4] TEXT DATA BSS ==> [0001000000 - 000201faa4] -05:50:20,517 INFO kernel: #3 [007def9000 - 007fecf4ff] RAMDISK ==> [007def9000 - 007fecf4ff] -05:50:20,517 INFO kernel: #4 [000009f400 - 0000100000] BIOS reserved ==> [000009f400 - 0000100000] -05:50:20,517 INFO kernel: #5 [0002020000 - 00020201f0] BRK ==> [0002020000 - 00020201f0] -05:50:20,517 INFO kernel: #6 [0000010000 - 0000011000] PGTABLE ==> [0000010000 - 0000011000] -05:50:20,517 INFO kernel: #7 [0000011000 - 0000012040] MEMNODEMAP ==> [0000011000 - 0000012040] -05:50:20,517 INFO kernel:found SMP MP-table at [ffff8800000f69b0] f69b0 -05:50:20,517 DEBUG kernel: [ffffea0000000000-ffffea0001bfffff] PMD -> [ffff880002600000-ffff8800041fffff] on node 0 -05:50:20,517 WARNING kernel:Zone PFN ranges: -05:50:20,517 WARNING kernel: DMA 0x00000010 -> 0x00001000 -05:50:20,517 WARNING kernel: DMA32 0x00001000 -> 0x00100000 -05:50:20,517 WARNING kernel: Normal 0x00100000 -> 0x00100000 -05:50:20,517 WARNING kernel:Movable zone start PFN for each node -05:50:20,517 WARNING kernel:early_node_map[3] active PFN ranges -05:50:20,517 WARNING kernel: 0: 0x00000010 -> 0x0000009f -05:50:20,517 WARNING kernel: 0: 0x00000100 -> 0x0007fef0 -05:50:20,520 WARNING kernel: 0: 0x0007ff00 -> 0x00080000 -05:50:20,520 DEBUG kernel:On node 0 totalpages: 524159 -05:50:20,520 DEBUG kernel: DMA zone: 56 pages used for memmap -05:50:20,520 DEBUG kernel: DMA zone: 101 pages reserved -05:50:20,520 DEBUG kernel: DMA zone: 3826 pages, LIFO batch:0 -05:50:20,520 DEBUG kernel: DMA32 zone: 7112 pages used for memmap -05:50:20,520 DEBUG kernel: DMA32 zone: 513064 pages, LIFO batch:31 -05:50:20,520 INFO kernel:ACPI: PM-Timer IO Port: 0x1008 -05:50:20,520 DEBUG kernel:ACPI: Local APIC address 0xfee00000 -05:50:20,520 INFO kernel:Setting APIC routing to flat. -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1]) -05:50:20,520 INFO kernel:ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0]) -05:50:20,521 INFO kernel:IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23 -05:50:20,521 INFO kernel:ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge) -05:50:20,521 DEBUG kernel:ACPI: IRQ0 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ2 used by override. -05:50:20,521 DEBUG kernel:ACPI: IRQ9 used by override. -05:50:20,521 INFO kernel:Using ACPI (MADT) for SMP configuration information -05:50:20,521 INFO kernel:ACPI: HPET id: 0x8086af01 base: 0xfed00000 -05:50:20,521 INFO kernel:SMP: Allowing 2 CPUs, 0 hotplug CPUs -05:50:20,521 DEBUG kernel:nr_irqs_gsi: 24 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000000009f000 - 00000000000a0000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000a0000 - 00000000000ca000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000ca000 - 00000000000cc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000cc000 - 00000000000dc000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 00000000000dc000 - 0000000000100000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007fef0000 - 000000007feff000 -05:50:20,521 INFO kernel:PM: Registered nosave memory: 000000007feff000 - 000000007ff00000 -05:50:20,521 INFO kernel:Allocating PCI resources starting at 80000000 (gap: 80000000:60000000) -05:50:20,521 INFO kernel:Booting paravirtualized kernel on bare hardware -05:50:20,521 INFO kernel:NR_CPUS:4096 nr_cpumask_bits:2 nr_cpu_ids:2 nr_node_ids:1 -05:50:20,521 INFO kernel:PERCPU: Embedded 31 pages/cpu @ffff880002200000 s94872 r8192 d23912 u1048576 -05:50:20,521 INFO kernel:pcpu-alloc: s94872 r8192 d23912 u1048576 alloc=1*2097152 -05:50:20,521 INFO kernel:pcpu-alloc: [0] 0 1 -05:50:20,521 WARNING kernel:Built 1 zonelists in Node order, mobility grouping on. Total pages: 516890 -05:50:20,521 WARNING kernel:Policy zone: DMA32 -05:50:20,521 NOTICE kernel:Kernel command line: initrd=/images/CentOS-6.5-x86_64/initrd.img ksdevice=bootif lang= kssendmac text ks=http://10.145.88.211/cblr/svc/op/ks/system/server2.1 BOOT_IMAGE=/images/CentOS-6.5-x86_64/vmlinuz BOOTIF=01-00-0c-29-5c-6a-b8 -05:50:20,521 INFO kernel:PID hash table entries: 4096 (order: 3, 32768 bytes) -05:50:20,521 INFO kernel:Checking aperture... -05:50:20,521 INFO kernel:No AGP bridge found -05:50:20,521 INFO kernel:Memory: 2018096k/2097152k available (5325k kernel code, 516k absent, 78540k reserved, 7013k data, 1276k init) -05:50:20,521 INFO kernel:Hierarchical RCU implementation. -05:50:20,521 INFO kernel:NR_IRQS:33024 nr_irqs:424 -05:50:20,521 INFO kernel:Extended CMOS year: 2000 -05:50:20,521 WARNING kernel:Console: colour VGA+ 80x25 -05:50:20,521 INFO kernel:console [tty0] enabled -05:50:20,521 INFO kernel:allocated 8388608 bytes of page_cgroup -05:50:20,521 INFO kernel:please try 'cgroup_disable=memory' option if you don't want memory cgroups -05:50:20,521 DEBUG kernel:hpet clockevent registered -05:50:20,521 INFO kernel:TSC freq read from hypervisor : 2400.085 MHz -05:50:20,521 WARNING kernel:Detected 2400.085 MHz processor. -05:50:20,521 INFO kernel:Calibrating delay loop (skipped) preset value.. 4800.17 BogoMIPS (lpj=2400085) -05:50:20,521 INFO kernel:pid_max: default: 32768 minimum: 301 -05:50:20,521 INFO kernel:Security Framework initialized -05:50:20,521 INFO kernel:SELinux: Initializing. -05:50:20,521 DEBUG kernel:SELinux: Starting in permissive mode -05:50:20,521 INFO kernel:Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes) -05:50:20,521 INFO kernel:Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes) -05:50:20,521 WARNING kernel:Mount-cache hash table entries: 256 -05:50:20,521 INFO kernel:Initializing cgroup subsys ns -05:50:20,521 INFO kernel:Initializing cgroup subsys cpuacct -05:50:20,521 INFO kernel:Initializing cgroup subsys memory -05:50:20,521 INFO kernel:Initializing cgroup subsys devices -05:50:20,521 INFO kernel:Initializing cgroup subsys freezer -05:50:20,521 INFO kernel:Initializing cgroup subsys net_cls -05:50:20,521 INFO kernel:Initializing cgroup subsys blkio -05:50:20,521 INFO kernel:Initializing cgroup subsys perf_event -05:50:20,521 INFO kernel:Initializing cgroup subsys net_prio -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:CPU: Physical Processor ID: 0 -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:alternatives: switching to unfair spinlock -05:50:20,521 INFO kernel:ACPI: Core revision 20090903 -05:50:20,521 INFO kernel:ftrace: converting mcount calls to 0f 1f 44 00 00 -05:50:20,521 INFO kernel:ftrace: allocating 21769 entries in 86 pages -05:50:20,521 INFO kernel:APIC routing finalized to flat. -05:50:20,521 INFO kernel:..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -05:50:20,521 INFO kernel:CPU0: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz stepping 02 -05:50:20,521 INFO kernel:Performance Events: 16-deep LBR, Westmere events, Intel PMU driver. -05:50:20,521 WARNING kernel:CPUID marked event: 'cpu cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'bus cycles' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache references' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'cache misses' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch instructions' unavailable -05:50:20,521 WARNING kernel:CPUID marked event: 'branch misses' unavailable -05:50:20,521 INFO kernel:... version: 3 -05:50:20,521 INFO kernel:... bit width: 48 -05:50:20,521 INFO kernel:... generic registers: 4 -05:50:20,521 INFO kernel:... value mask: 0000ffffffffffff -05:50:20,521 INFO kernel:... max period: 000000007fffffff -05:50:20,521 INFO kernel:... fixed-purpose events: 3 -05:50:20,521 INFO kernel:... event mask: 000000070000000f -05:50:20,521 WARNING kernel:NMI watchdog disabled (cpu0): hardware events not enabled -05:50:20,521 INFO kernel:Booting Node 0, Processors #1 Ok. -05:50:20,521 INFO kernel:Disabled fast string operations -05:50:20,521 INFO kernel:mce: CPU supports 0 MCE banks -05:50:20,521 INFO kernel:Skipped synchronization checks as TSC is reliable. -05:50:20,521 INFO kernel:Brought up 2 CPUs -05:50:20,521 INFO kernel:Total of 2 processors activated (9600.34 BogoMIPS). -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 0, old 0x0, new 0x7010600070106 -05:50:20,521 INFO kernel:x86 PAT enabled: cpu 1, old 0x0, new 0x7010600070106 -05:50:20,521 DEBUG kernel:sizeof(vma)=200 bytes -05:50:20,521 DEBUG kernel:sizeof(page)=56 bytes -05:50:20,521 DEBUG kernel:sizeof(inode)=592 bytes -05:50:20,521 DEBUG kernel:sizeof(dentry)=192 bytes -05:50:20,521 DEBUG kernel:sizeof(ext3inode)=800 bytes -05:50:20,521 DEBUG kernel:sizeof(buffer_head)=104 bytes -05:50:20,521 DEBUG kernel:sizeof(skbuff)=232 bytes -05:50:20,521 DEBUG kernel:sizeof(task_struct)=2648 bytes -05:50:20,521 INFO kernel:devtmpfs: initialized -05:50:20,521 INFO kernel:PM: Registering ACPI NVS region at 7feff000 (4096 bytes) -05:50:20,521 INFO kernel:regulator: core version 0.5 -05:50:20,521 INFO kernel:NET: Registered protocol family 16 -05:50:20,521 INFO kernel:ACPI: bus type pci registered -05:50:20,521 NOTICE kernel:PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 -05:50:20,521 NOTICE kernel:PCI: MCFG area at e0000000 reserved in E820 -05:50:20,521 INFO kernel:PCI: Using MMCONFIG at e0000000 - efffffff -05:50:20,521 INFO kernel:PCI: Using configuration type 1 for base access -05:50:20,521 WARNING kernel:bio: create slab at 0 -05:50:20,521 DEBUG kernel:ACPI: EC: Look up EC in DSDT -05:50:20,521 NOTICE kernel:ACPI: BIOS _OSI(Linux) query ignored -05:50:20,521 INFO kernel:ACPI: Interpreter enabled -05:50:20,521 INFO kernel:ACPI: (supports S0 S1 S4 S5) -05:50:20,521 INFO kernel:ACPI: Using IOAPIC for interrupt routing -05:50:20,521 INFO kernel:ACPI: No dock devices found. -05:50:20,521 INFO kernel:PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -05:50:20,521 INFO kernel:ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_root PNP0A03:00: host bridge window [io 0x0d00-0xfeff] -05:50:20,521 INFO kernel:PCI host bridge to bus 0000:00 -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d0000-0x000d3fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d4000-0x000d7fff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x000d8000-0x000dbfff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [mem 0x80000000-0xfebfffff] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7] -05:50:20,521 INFO kernel:pci_bus 0000:00: root bus resource [io 0x0d00-0xfeff] -05:50:20,521 DEBUG kernel:pci 0000:00:07.1: reg 20: [io 0x10c0-0x10cf] -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1000-0x103f] claimed by PIIX4 ACPI -05:50:20,521 INFO kernel:pci 0000:00:07.3: quirk: [io 0x1040-0x104f] claimed by PIIX4 SMB -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 10: [io 0x1080-0x10bf] -05:50:20,521 DEBUG kernel:pci 0000:00:07.7: reg 14: [mem 0xd0000000-0xd0001fff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 10: [io 0x10d0-0x10df] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 14: [mem 0xd8000000-0xdbffffff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 18: [mem 0xd0800000-0xd0ffffff] -05:50:20,521 DEBUG kernel:pci 0000:00:0f.0: reg 30: [mem 0x00000000-0x00007fff pref] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 10: [io 0x1400-0x14ff] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 14: [mem 0xd0040000-0xd005ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 1c: [mem 0xd0020000-0xd003ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:00:10.0: reg 30: [mem 0x00000000-0x00003fff pref] -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:15.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:16.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:17.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.1: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.2: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.3: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.4: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.5: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.6: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:00:18.7: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:01.0: bridge window [mem 0xfff00000-0x000fffff pref] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 10: [mem 0xd1020000-0xd103ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 18: [mem 0xd1000000-0xd100ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 20: [io 0x2000-0x203f] -05:50:20,521 DEBUG kernel:pci 0000:02:00.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:00.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 10: [mem 0xd1040000-0xd105ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 18: [mem 0xd1010000-0xd101ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 20: [io 0x2040-0x207f] -05:50:20,521 DEBUG kernel:pci 0000:02:01.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:01.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 10: [mem 0xd1080000-0xd109ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 18: [mem 0xd1060000-0xd106ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 20: [io 0x2080-0x20bf] -05:50:20,521 DEBUG kernel:pci 0000:02:02.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:02.0: PME# disabled -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 10: [mem 0xd10a0000-0xd10bffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 18: [mem 0xd1070000-0xd107ffff 64bit] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 20: [io 0x20c0-0x20ff] -05:50:20,521 DEBUG kernel:pci 0000:02:03.0: reg 30: [mem 0x00000000-0x0000ffff pref] -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# supported from D0 D3hot D3cold -05:50:20,521 INFO kernel:pci 0000:02:03.0: PME# disabled -05:50:20,521 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000a0000-0x000bffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d0000-0x000d3fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d4000-0x000d7fff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x000d8000-0x000dbfff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [mem 0x80000000-0xfebfffff] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0000-0x0cf7] (subtractive decode) -05:50:20,521 DEBUG kernel:pci 0000:00:11.0: bridge window [io 0x0d00-0xfeff] (subtractive decode) -05:50:20,521 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,521 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,521 DEBUG kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [io 0xf000-0xffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,522 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [io 0xf000-0x0000] (disabled) -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,522 DEBUG kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,522 DEBUG kernel:ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT] -05:50:20,522 INFO kernel: pci0000:00: Requesting ACPI _OSC control (0x1d) -05:50:20,522 INFO kernel: pci0000:00: ACPI _OSC control (0x15) granted -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *9 10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 10 *11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 *10 11 14 15) -05:50:20,522 INFO kernel:ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 14 15) -05:50:20,522 INFO kernel:vgaarb: device added: PCI:0000:00:0f.0,decodes=io+mem,owns=io+mem,locks=none -05:50:20,522 INFO kernel:vgaarb: loaded -05:50:20,522 INFO kernel:vgaarb: bridge control possible 0000:00:0f.0 -05:50:20,522 NOTICE kernel:SCSI subsystem initialized -05:50:20,522 DEBUG kernel:libata version 3.00 loaded. -05:50:20,522 INFO kernel:usbcore: registered new interface driver usbfs -05:50:20,522 INFO kernel:usbcore: registered new interface driver hub -05:50:20,522 INFO kernel:usbcore: registered new device driver usb -05:50:20,522 INFO kernel:PCI: Using ACPI for IRQ routing -05:50:20,522 DEBUG kernel:PCI: old code would have set cacheline size to 32 bytes, but clflush_size = 64 -05:50:20,522 DEBUG kernel:PCI: pci_cache_line_size set to 64 bytes -05:50:20,522 INFO kernel:pci 0000:00:18.2: no compatible bridge window for [io 0xf000-0xffff] -05:50:20,522 INFO kernel:pci 0000:00:18.2: can't reserve window [io 0xf000-0xffff] -05:50:20,522 NOTICE kernel:lo: Dropping TSO features since no CSUM feature. -05:50:20,522 INFO kernel:NetLabel: Initializing -05:50:20,522 INFO kernel:NetLabel: domain hash size = 128 -05:50:20,522 INFO kernel:NetLabel: protocols = UNLABELED CIPSOv4 -05:50:20,522 INFO kernel:NetLabel: unlabeled traffic allowed by default -05:50:20,522 INFO kernel:HPET: 16 timers in total, 0 timers will be used for per-cpu timer -05:50:20,522 INFO kernel:hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 -05:50:20,522 INFO kernel:hpet0: 16 comparators, 64-bit 14.318180 MHz counter -05:50:20,522 INFO kernel:Switching to clocksource hpet -05:50:20,522 INFO kernel:pnp: PnP ACPI init -05:50:20,522 INFO kernel:ACPI: bus type pnp registered -05:50:20,522 DEBUG kernel:pnp 00:00: [io 0x0cf8-0x0cff] -05:50:20,522 DEBUG kernel:pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 PNP0a08 (active) -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0010-0x001f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0024-0x0025] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0028-0x0029] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002c-0x002d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x002e-0x002f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0030-0x0031] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0034-0x0035] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0038-0x0039] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x003c-0x003d] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0050-0x0053] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0072-0x0077] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0080] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0090-0x009f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a4-0x00a5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00a8-0x00a9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00ac-0x00ad] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b0-0x00b5] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00b8-0x00b9] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x00bc-0x00bd] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1000-0x103f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x1040-0x104f] -05:50:20,522 DEBUG kernel:pnp 00:01: [io 0x0cf0-0x0cf1] -05:50:20,522 DEBUG kernel:pnp 00:01: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0000-0x000f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x0081-0x008f] -05:50:20,522 DEBUG kernel:pnp 00:02: [io 0x00c0-0x00df] -05:50:20,522 DEBUG kernel:pnp 00:02: [dma 4] -05:50:20,522 DEBUG kernel:pnp 00:02: Plug and Play ACPI device, IDs PNP0200 (active) -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x0020-0x0021] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x00a0-0x00a1] -05:50:20,522 DEBUG kernel:pnp 00:03: [io 0x04d0-0x04d1] -05:50:20,522 DEBUG kernel:pnp 00:03: [irq 2 disabled] -05:50:20,522 DEBUG kernel:pnp 00:03: Plug and Play ACPI device, IDs PNP0001 (active) -05:50:20,522 DEBUG kernel:pnp 00:04: [io 0x0070-0x0071] -05:50:20,522 DEBUG kernel:pnp 00:04: [irq 8] -05:50:20,522 DEBUG kernel:pnp 00:04: Plug and Play ACPI device, IDs PNP0b00 (active) -05:50:20,522 DEBUG kernel:pnp 00:05: [io 0x0061] -05:50:20,522 DEBUG kernel:pnp 00:05: Plug and Play ACPI device, IDs PNP0800 (active) -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0060] -05:50:20,522 DEBUG kernel:pnp 00:06: [io 0x0064] -05:50:20,522 DEBUG kernel:pnp 00:06: [irq 1] -05:50:20,522 DEBUG kernel:pnp 00:06: Plug and Play ACPI device, IDs PNP0303 (active) -05:50:20,522 DEBUG kernel:pnp 00:07: [irq 12] -05:50:20,522 DEBUG kernel:pnp 00:07: Plug and Play ACPI device, IDs PNP0f13 (active) -05:50:20,522 DEBUG kernel:pnp 00:08: [mem 0xfed00000-0xfed003ff] -05:50:20,522 DEBUG kernel:pnp 00:08: Plug and Play ACPI device, IDs PNP0103 PNP0c01 (active) -05:50:20,522 DEBUG kernel:pnp 00:09: [io 0x0378-0x037f] -05:50:20,522 DEBUG kernel:pnp 00:09: [irq 7] -05:50:20,522 DEBUG kernel:pnp 00:09: Plug and Play ACPI device, IDs PNP0400 (active) -05:50:20,522 DEBUG kernel:pnp 00:0a: [io 0x03f8-0x03ff] -05:50:20,522 DEBUG kernel:pnp 00:0a: [irq 4] -05:50:20,522 DEBUG kernel:pnp 00:0a: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0b: [io 0x02f8-0x02ff] -05:50:20,522 DEBUG kernel:pnp 00:0b: [irq 3] -05:50:20,522 DEBUG kernel:pnp 00:0b: Plug and Play ACPI device, IDs PNP0501 (active) -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f0-0x03f5] -05:50:20,522 DEBUG kernel:pnp 00:0c: [io 0x03f7] -05:50:20,522 DEBUG kernel:pnp 00:0c: [irq 6] -05:50:20,522 DEBUG kernel:pnp 00:0c: [dma 2] -05:50:20,522 DEBUG kernel:pnp 00:0c: Plug and Play ACPI device, IDs PNP0700 (active) -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xe0000000-0xefffffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: [io 0x1060-0x107f] -05:50:20,522 DEBUG kernel:pnp 00:0d: [mem 0xd0200000-0xd03fffff] -05:50:20,522 DEBUG kernel:pnp 00:0d: Plug and Play ACPI device, IDs PNP0c02 (active) -05:50:20,522 INFO kernel:pnp: PnP ACPI: found 14 devices -05:50:20,522 INFO kernel:ACPI: ACPI bus type pnp unregistered -05:50:20,522 INFO kernel:system 00:01: [io 0x1000-0x103f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x1040-0x104f] has been reserved -05:50:20,522 INFO kernel:system 00:01: [io 0x0cf0-0x0cf1] has been reserved -05:50:20,522 INFO kernel:system 00:08: [mem 0xfed00000-0xfed003ff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [io 0x1060-0x107f] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved -05:50:20,522 INFO kernel:system 00:0d: [mem 0xd0200000-0xd03fffff] has been reserved -05:50:20,522 DEBUG kernel:PCI: max bus depth: 1 pci_try_num: 2 -05:50:20,522 INFO kernel:pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x80007fff pref] -05:50:20,522 INFO kernel:pci 0000:00:10.0: BAR 6: assigned [mem 0x80008000-0x8000bfff pref] -05:50:20,522 INFO kernel:pci 0000:00:18.2: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.7: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.6: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.5: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.4: BAR 13: can't assign io (size 0x1000) -05:50:20,522 INFO kernel:pci 0000:00:18.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:17.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:16.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.7: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.6: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.5: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.4: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:15.3: BAR 13: can't assign io (size 0x1000) -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: PCI bridge to [bus 01-01] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem disabled] -05:50:20,523 INFO kernel:pci 0000:00:01.0: bridge window [mem pref disabled] -05:50:20,523 INFO kernel:pci 0000:02:00.0: BAR 6: assigned [mem 0xdc400000-0xdc40ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:01.0: BAR 6: assigned [mem 0xdc410000-0xdc41ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:02.0: BAR 6: assigned [mem 0xdc420000-0xdc42ffff pref] -05:50:20,523 INFO kernel:pci 0000:02:03.0: BAR 6: assigned [mem 0xdc430000-0xdc43ffff pref] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: PCI bridge to [bus 02-02] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [io 0x2000-0x3fff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xd1000000-0xd23fffff] -05:50:20,523 INFO kernel:pci 0000:00:11.0: bridge window [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: PCI bridge to [bus 03-03] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [io 0x4000-0x4fff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd2400000-0xd24fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.0: bridge window [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: PCI bridge to [bus 04-04] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [io 0x8000-0x8fff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd2800000-0xd28fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.1: bridge window [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: PCI bridge to [bus 05-05] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [io 0xc000-0xcfff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.2: bridge window [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: PCI bridge to [bus 06-06] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xd3000000-0xd30fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.3: bridge window [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: PCI bridge to [bus 07-07] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xd3400000-0xd34fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.4: bridge window [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: PCI bridge to [bus 08-08] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xd3800000-0xd38fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.5: bridge window [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: PCI bridge to [bus 09-09] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 INFO kernel:pci 0000:00:15.6: bridge window [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: PCI bridge to [bus 0a-0a] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xd4000000-0xd40fffff] -05:50:20,523 INFO kernel:pci 0000:00:15.7: bridge window [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: PCI bridge to [bus 0b-0b] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [io 0x5000-0x5fff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd2500000-0xd25fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.0: bridge window [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: PCI bridge to [bus 0c-0c] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [io 0x9000-0x9fff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd2900000-0xd29fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.1: bridge window [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: PCI bridge to [bus 0d-0d] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [io 0xd000-0xdfff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.2: bridge window [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: PCI bridge to [bus 0e-0e] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd3100000-0xd31fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.3: bridge window [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: PCI bridge to [bus 0f-0f] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd3500000-0xd35fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.4: bridge window [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: PCI bridge to [bus 10-10] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd3900000-0xd39fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.5: bridge window [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: PCI bridge to [bus 11-11] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 INFO kernel:pci 0000:00:16.6: bridge window [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: PCI bridge to [bus 12-12] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd4100000-0xd41fffff] -05:50:20,523 INFO kernel:pci 0000:00:16.7: bridge window [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: PCI bridge to [bus 13-13] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [io 0x6000-0x6fff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd2600000-0xd26fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.0: bridge window [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: PCI bridge to [bus 14-14] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [io 0xa000-0xafff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xd2a00000-0xd2afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.1: bridge window [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: PCI bridge to [bus 15-15] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [io 0xe000-0xefff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xd2e00000-0xd2efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.2: bridge window [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: PCI bridge to [bus 16-16] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xd3200000-0xd32fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.3: bridge window [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: PCI bridge to [bus 17-17] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xd3600000-0xd36fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.4: bridge window [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: PCI bridge to [bus 18-18] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xd3a00000-0xd3afffff] -05:50:20,523 INFO kernel:pci 0000:00:17.5: bridge window [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: PCI bridge to [bus 19-19] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xd3e00000-0xd3efffff] -05:50:20,523 INFO kernel:pci 0000:00:17.6: bridge window [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: PCI bridge to [bus 1a-1a] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xd4200000-0xd42fffff] -05:50:20,523 INFO kernel:pci 0000:00:17.7: bridge window [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: PCI bridge to [bus 1b-1b] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [io 0x7000-0x7fff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd2700000-0xd27fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.0: bridge window [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: PCI bridge to [bus 1c-1c] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [io 0xb000-0xbfff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd2b00000-0xd2bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.1: bridge window [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: PCI bridge to [bus 1d-1d] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd2f00000-0xd2ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.2: bridge window [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: PCI bridge to [bus 1e-1e] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd3300000-0xd33fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.3: bridge window [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: PCI bridge to [bus 1f-1f] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd3700000-0xd37fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.4: bridge window [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: PCI bridge to [bus 20-20] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd3b00000-0xd3bfffff] -05:50:20,523 INFO kernel:pci 0000:00:18.5: bridge window [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: PCI bridge to [bus 21-21] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd3f00000-0xd3ffffff] -05:50:20,523 INFO kernel:pci 0000:00:18.6: bridge window [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: PCI bridge to [bus 22-22] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [io disabled] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd4300000-0xd43fffff] -05:50:20,523 INFO kernel:pci 0000:00:18.7: bridge window [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci 0000:00:01.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:15.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:16.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:17.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.0: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.1: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.2: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.3: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.4: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.5: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.6: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci 0000:00:18.7: setting latency timer to 64 -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:00: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 0 [io 0x2000-0x3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 1 [mem 0xd1000000-0xd23fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 2 [mem 0xdc400000-0xdc9fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 4 [mem 0x000a0000-0x000bffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 5 [mem 0x000d0000-0x000d3fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 6 [mem 0x000d4000-0x000d7fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 7 [mem 0x000d8000-0x000dbfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 8 [mem 0x80000000-0xfebfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 9 [io 0x0000-0x0cf7] -05:50:20,523 DEBUG kernel:pci_bus 0000:02: resource 10 [io 0x0d00-0xfeff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 0 [io 0x4000-0x4fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 1 [mem 0xd2400000-0xd24fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:03: resource 2 [mem 0xd4400000-0xd44fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 0 [io 0x8000-0x8fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 1 [mem 0xd2800000-0xd28fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:04: resource 2 [mem 0xd4800000-0xd48fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 0 [io 0xc000-0xcfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 1 [mem 0xd2c00000-0xd2cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:05: resource 2 [mem 0xdcb00000-0xdcbfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 1 [mem 0xd3000000-0xd30fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:06: resource 2 [mem 0xdcd00000-0xdcdfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 1 [mem 0xd3400000-0xd34fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:07: resource 2 [mem 0xdcf00000-0xdcffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 1 [mem 0xd3800000-0xd38fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:08: resource 2 [mem 0xdd100000-0xdd1fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 1 [mem 0xd3c00000-0xd3cfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:09: resource 2 [mem 0xdd300000-0xdd3fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 1 [mem 0xd4000000-0xd40fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0a: resource 2 [mem 0xdd500000-0xdd5fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 0 [io 0x5000-0x5fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 1 [mem 0xd2500000-0xd25fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0b: resource 2 [mem 0xd4500000-0xd45fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 0 [io 0x9000-0x9fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 1 [mem 0xd2900000-0xd29fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0c: resource 2 [mem 0xd4900000-0xd49fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 0 [io 0xd000-0xdfff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 1 [mem 0xd2d00000-0xd2dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0d: resource 2 [mem 0xd4b00000-0xd4bfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 1 [mem 0xd3100000-0xd31fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0e: resource 2 [mem 0xd4d00000-0xd4dfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 1 [mem 0xd3500000-0xd35fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:0f: resource 2 [mem 0xd4f00000-0xd4ffffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 1 [mem 0xd3900000-0xd39fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:10: resource 2 [mem 0xd5100000-0xd51fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 1 [mem 0xd3d00000-0xd3dfffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:11: resource 2 [mem 0xd5300000-0xd53fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 1 [mem 0xd4100000-0xd41fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:12: resource 2 [mem 0xd5500000-0xd55fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 0 [io 0x6000-0x6fff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 1 [mem 0xd2600000-0xd26fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:13: resource 2 [mem 0xd4600000-0xd46fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 0 [io 0xa000-0xafff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 1 [mem 0xd2a00000-0xd2afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:14: resource 2 [mem 0xdca00000-0xdcafffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 0 [io 0xe000-0xefff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 1 [mem 0xd2e00000-0xd2efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:15: resource 2 [mem 0xdcc00000-0xdccfffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 1 [mem 0xd3200000-0xd32fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:16: resource 2 [mem 0xdce00000-0xdcefffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 1 [mem 0xd3600000-0xd36fffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:17: resource 2 [mem 0xdd000000-0xdd0fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 1 [mem 0xd3a00000-0xd3afffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:18: resource 2 [mem 0xdd200000-0xdd2fffff 64bit pref] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 1 [mem 0xd3e00000-0xd3efffff] -05:50:20,523 DEBUG kernel:pci_bus 0000:19: resource 2 [mem 0xdd400000-0xdd4fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 1 [mem 0xd4200000-0xd42fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1a: resource 2 [mem 0xdd600000-0xdd6fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 0 [io 0x7000-0x7fff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 1 [mem 0xd2700000-0xd27fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1b: resource 2 [mem 0xd4700000-0xd47fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 0 [io 0xb000-0xbfff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 1 [mem 0xd2b00000-0xd2bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1c: resource 2 [mem 0xd4a00000-0xd4afffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 1 [mem 0xd2f00000-0xd2ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1d: resource 2 [mem 0xd4c00000-0xd4cfffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 1 [mem 0xd3300000-0xd33fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1e: resource 2 [mem 0xd4e00000-0xd4efffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 1 [mem 0xd3700000-0xd37fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:1f: resource 2 [mem 0xd5000000-0xd50fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 1 [mem 0xd3b00000-0xd3bfffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:20: resource 2 [mem 0xd5200000-0xd52fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 1 [mem 0xd3f00000-0xd3ffffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:21: resource 2 [mem 0xd5400000-0xd54fffff 64bit pref] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 1 [mem 0xd4300000-0xd43fffff] -05:50:20,524 DEBUG kernel:pci_bus 0000:22: resource 2 [mem 0xd5600000-0xd56fffff 64bit pref] -05:50:20,524 INFO kernel:NET: Registered protocol family 2 -05:50:20,524 INFO kernel:IP route cache hash table entries: 65536 (order: 7, 524288 bytes) -05:50:20,524 INFO kernel:TCP established hash table entries: 262144 (order: 10, 4194304 bytes) -05:50:20,524 INFO kernel:TCP bind hash table entries: 65536 (order: 8, 1048576 bytes) -05:50:20,524 INFO kernel:TCP: Hash tables configured (established 262144 bind 65536) -05:50:20,524 INFO kernel:TCP reno registered -05:50:20,524 INFO kernel:NET: Registered protocol family 1 -05:50:20,524 INFO kernel:pci 0000:00:00.0: Limiting direct PCI/PCI transfers -05:50:20,524 DEBUG kernel:pci 0000:00:0f.0: Boot video device -05:50:20,524 INFO kernel:Trying to unpack rootfs image as initramfs... -05:50:20,524 INFO kernel:Freeing initrd memory: 32601k freed -05:50:20,524 INFO kernel:Simple Boot Flag at 0x36 set to 0x80 -05:50:20,524 INFO kernel:audit: initializing netlink socket (disabled) -05:50:20,524 NOTICE kernel:type=2000 audit(1021096218.805:1): initialized -05:50:20,524 INFO kernel:HugeTLB registered 2 MB page size, pre-allocated 0 pages -05:50:20,524 NOTICE kernel:VFS: Disk quotas dquot_6.5.2 -05:50:20,524 WARNING kernel:Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -05:50:20,524 INFO kernel:msgmni has been set to 4005 -05:50:20,526 DEBUG kernel:SELinux: Registering netfilter hooks -05:50:20,526 INFO kernel:alg: No test for stdrng (krng) -05:50:20,526 WARNING kernel:ksign: Installing public key data -05:50:20,526 WARNING kernel:Loading keyring -05:50:20,526 WARNING kernel:- Added public key 8A44323FB303E068 -05:50:20,526 WARNING kernel: - key was been created 363988241 seconds in future -05:50:20,526 WARNING kernel:- User ID: CentOS (Kernel Module GPG key) -05:50:20,526 INFO kernel:Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) -05:50:20,526 INFO kernel:io scheduler noop registered -05:50:20,526 INFO kernel:io scheduler anticipatory registered -05:50:20,526 INFO kernel:io scheduler deadline registered -05:50:20,526 INFO kernel:io scheduler cfq registered (default) -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 24 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.0: irq 24 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 25 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.1: irq 25 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 26 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.2: irq 26 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 27 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.3: irq 27 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 28 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.4: irq 28 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 29 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.5: irq 29 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 30 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.6: irq 30 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 31 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:15.7: irq 31 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 32 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.0: irq 32 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 33 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.1: irq 33 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 34 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.2: irq 34 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 35 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.3: irq 35 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 36 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.4: irq 36 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 37 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.5: irq 37 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 38 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.6: irq 38 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 39 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:16.7: irq 39 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 40 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.0: irq 40 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 41 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.1: irq 41 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 42 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.2: irq 42 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 43 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.3: irq 43 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 44 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.4: irq 44 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 45 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.5: irq 45 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 46 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.6: irq 46 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 47 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:17.7: irq 47 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 48 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.0: irq 48 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 49 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.1: irq 49 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 50 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.2: irq 50 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 51 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.3: irq 51 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 52 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.4: irq 52 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 53 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.5: irq 53 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 54 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.6: irq 54 for MSI/MSI-X -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: setting latency timer to 64 -05:50:20,526 DEBUG kernel: alloc irq_desc for 55 on node -1 -05:50:20,526 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:20,526 DEBUG kernel:pcieport 0000:00:18.7: irq 55 for MSI/MSI-X -05:50:20,526 INFO kernel:pci_hotplug: PCI Hot Plug PCI Core version: 0.5 -05:50:20,526 INFO kernel:pciehp 0000:00:15.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:15.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:15.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:16.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:16.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:17.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:17.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.0:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.0:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.1:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.1:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.2:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.2:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.3:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.3:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.4:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.4:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.5:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.5:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.6:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.6:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp 0000:00:18.7:pcie04: HPC vendor_id 15ad device_id 7a0 ss_vid 0 ss_did 0 -05:50:20,526 DEBUG kernel:pciehp 0000:00:18.7:pcie04: service driver pciehp loaded -05:50:20,526 INFO kernel:pciehp: PCI Express Hot Plug Controller Driver version: 0.4 -05:50:20,526 INFO kernel:acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -05:50:20,526 INFO kernel:acpiphp: Slot [32] registered -05:50:20,526 INFO kernel:acpiphp: Slot [33] registered -05:50:20,526 INFO kernel:acpiphp: Slot [34] registered -05:50:20,526 INFO kernel:acpiphp: Slot [35] registered -05:50:20,526 INFO kernel:acpiphp: Slot [36] registered -05:50:20,526 INFO kernel:acpiphp: Slot [37] registered -05:50:20,526 INFO kernel:acpiphp: Slot [38] registered -05:50:20,527 INFO kernel:acpiphp: Slot [39] registered -05:50:20,527 INFO kernel:acpiphp: Slot [40] registered -05:50:20,527 INFO kernel:acpiphp: Slot [41] registered -05:50:20,527 INFO kernel:acpiphp: Slot [42] registered -05:50:20,527 INFO kernel:acpiphp: Slot [43] registered -05:50:20,527 INFO kernel:acpiphp: Slot [44] registered -05:50:20,527 INFO kernel:acpiphp: Slot [45] registered -05:50:20,527 INFO kernel:acpiphp: Slot [46] registered -05:50:20,527 INFO kernel:acpiphp: Slot [47] registered -05:50:20,527 INFO kernel:acpiphp: Slot [48] registered -05:50:20,527 INFO kernel:acpiphp: Slot [49] registered -05:50:20,527 INFO kernel:acpiphp: Slot [50] registered -05:50:20,527 INFO kernel:acpiphp: Slot [51] registered -05:50:20,527 INFO kernel:acpiphp: Slot [52] registered -05:50:20,527 INFO kernel:acpiphp: Slot [53] registered -05:50:20,527 INFO kernel:acpiphp: Slot [54] registered -05:50:20,527 INFO kernel:acpiphp: Slot [55] registered -05:50:20,527 INFO kernel:acpiphp: Slot [56] registered -05:50:20,527 INFO kernel:acpiphp: Slot [57] registered -05:50:20,527 INFO kernel:acpiphp: Slot [58] registered -05:50:20,527 INFO kernel:acpiphp: Slot [59] registered -05:50:20,527 INFO kernel:acpiphp: Slot [60] registered -05:50:20,527 INFO kernel:acpiphp: Slot [61] registered -05:50:20,527 INFO kernel:acpiphp: Slot [62] registered -05:50:20,527 INFO kernel:acpiphp: Slot [63] registered -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 160 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 192 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 224 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 256 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 161 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 162 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 163 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 164 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 165 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 166 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 167 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 193 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 194 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 195 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 196 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 197 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 198 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 199 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 225 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 226 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 227 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 228 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 229 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 230 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 231 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 257 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 258 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 259 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 260 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 261 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 262 already registered by another hotplug driver -05:50:20,527 WARNING kernel:acpiphp_glue: Slot 263 already registered by another hotplug driver -05:50:20,527 INFO kernel:ipmi message handler version 39.2 -05:50:20,527 INFO kernel:IPMI System Interface driver. -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified kcs state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified smic state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified smic state machine at i/o address 0xca9, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 INFO kernel:ipmi_si: Adding default-specified bt state machine -05:50:20,527 INFO kernel:ipmi_si: Trying default-specified bt state machine at i/o address 0xe4, slave address 0x0, irq 0 -05:50:20,527 INFO kernel:ipmi_si: Interface detection failed -05:50:20,527 WARNING kernel:ipmi_si: Unable to find any System Interface(s) -05:50:20,527 INFO kernel:ACPI: AC Adapter [ACAD] (on-line) -05:50:20,527 INFO kernel:input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -05:50:20,527 INFO kernel:ACPI: Power Button [PWRF] -05:50:20,527 DEBUG kernel:ACPI: acpi_idle registered with cpuidle -05:50:20,527 WARNING kernel:ACPI Exception: AE_NOT_FOUND, No or invalid critical threshold (20090903/thermal-386) -05:50:20,527 INFO kernel:GHES: HEST is not enabled! -05:50:20,527 INFO kernel:Non-volatile memory driver v1.3 -05:50:20,527 INFO kernel:Linux agpgart interface v0.103 -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: Intel 440BX Chipset -05:50:20,527 INFO kernel:agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0x0 -05:50:20,527 INFO kernel:crash memory driver: version 1.1 -05:50:20,527 INFO kernel:Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled -05:50:20,527 INFO kernel:serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:00:0a: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A -05:50:20,527 INFO kernel:00:0b: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A -05:50:20,527 INFO kernel:brd: module loaded -05:50:20,527 INFO kernel:loop: module loaded -05:50:20,527 INFO kernel:input: Macintosh mouse button emulation as /devices/virtual/input/input1 -05:50:20,527 INFO kernel:Fixed MDIO Bus: probed -05:50:20,527 INFO kernel:ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver -05:50:20,527 INFO kernel:ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver -05:50:20,527 INFO kernel:uhci_hcd: USB Universal Host Controller Interface driver -05:50:20,527 INFO kernel:PNP: PS/2 Controller [PNP0303:KBC,PNP0f13:MOUS] at 0x60,0x64 irq 1,12 -05:50:20,527 INFO kernel:Refined TSC clocksource calibration: 2400.081 MHz. -05:50:20,527 INFO kernel:Switching to clocksource tsc -05:50:20,527 INFO kernel:serio: i8042 KBD port at 0x60,0x64 irq 1 -05:50:20,527 INFO kernel:serio: i8042 AUX port at 0x60,0x64 irq 12 -05:50:20,527 INFO kernel:mice: PS/2 mouse device common for all mice -05:50:20,527 INFO kernel:rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0 -05:50:20,527 INFO kernel:rtc0: alarms up to one month, y3k, 114 bytes nvram, hpet irqs -05:50:20,527 INFO kernel:cpuidle: using governor ladder -05:50:20,527 INFO kernel:cpuidle: using governor menu -05:50:20,527 INFO kernel:EFI Variables Facility v0.08 2004-May-17 -05:50:20,527 INFO kernel:usbcore: registered new interface driver hiddev -05:50:20,527 INFO kernel:usbcore: registered new interface driver usbhid -05:50:20,527 INFO kernel:usbhid: v2.6:USB HID core driver -05:50:20,527 INFO kernel:GRE over IPv4 demultiplexor driver -05:50:20,527 INFO kernel:input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2 -05:50:20,527 INFO kernel:TCP cubic registered -05:50:20,527 INFO kernel:Initializing XFRM netlink socket -05:50:20,527 INFO kernel:NET: Registered protocol family 17 -05:50:20,527 WARNING kernel:registered taskstats version 1 -05:50:20,527 INFO kernel:input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input3 -05:50:20,527 INFO kernel:rtc_cmos 00:04: setting system clock to 2002-05-11 05:50:20 UTC (1021096220) -05:50:20,527 INFO kernel:Initalizing network drop monitor service -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1276k freed -05:50:20,527 INFO kernel:Write protecting the kernel read-only data: 10240k -05:50:20,527 INFO kernel:Freeing unused kernel memory: 800k freed -05:50:20,527 INFO kernel:Freeing unused kernel memory: 1588k freed -05:50:22,553 INFO kernel:squashfs: version 4.0 (2009/01/31) Phillip Lougher -05:50:22,564 INFO kernel:Loading iSCSI transport class v2.0-870. -05:50:22,583 NOTICE kernel:iscsi: registered transport (tcp) -05:50:22,589 INFO kernel:Floppy drive(s): fd0 is 1.44M -05:50:22,600 INFO kernel:FDC 0 is a post-1991 82077 -05:50:22,604 INFO kernel:BIOS EDD facility v0.16 2004-Jun-25, 2 devices found -05:50:22,608 INFO kernel:input: PC Speaker as /devices/platform/pcspkr/input/input4 -05:50:22,615 INFO kernel:No iBFT detected. -05:50:22,648 INFO kernel:NET: Registered protocol family 10 -05:50:22,648 INFO kernel:lo: Disabled Privacy Extensions -05:50:22,720 DEBUG kernel:ata_piix 0000:00:07.1: version 2.13 -05:50:22,720 INFO kernel:scsi0 : ata_piix -05:50:22,721 INFO kernel:scsi1 : ata_piix -05:50:22,721 INFO kernel:ata1: PATA max UDMA/33 cmd 0x1f0 ctl 0x3f6 bmdma 0x10c0 irq 14 -05:50:22,721 INFO kernel:ata2: PATA max UDMA/33 cmd 0x170 ctl 0x376 bmdma 0x10c8 irq 15 -05:50:22,731 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:22,907 INFO kernel:ata2.00: ATAPI: VMware Virtual IDE CDROM Drive, 00000001, max UDMA/33 -05:50:22,913 INFO kernel:ata2.00: configured for UDMA/33 -05:50:22,913 NOTICE kernel:scsi 1:0:0:0: CD-ROM NECVMWar VMware IDE CDR10 1.00 PQ: 0 ANSI: 5 -05:50:22,936 INFO kernel:Fusion MPT base driver 3.04.20 -05:50:22,936 INFO kernel:Copyright (c) 1999-2008 LSI Corporation -05:50:22,947 INFO kernel:Fusion MPT SPI Host driver 3.04.20 -05:50:22,947 DEBUG kernel: alloc irq_desc for 17 on node -1 -05:50:22,947 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:22,947 INFO kernel:mptspi 0000:00:10.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:22,947 INFO kernel:mptbase: ioc0: Initiating bringup -05:50:22,966 INFO kernel:ioc0: LSI53C1030 B0: Capabilities={Initiator} -05:50:23,007 INFO kernel:scsi2 : ioc0: LSI53C1030 B0, FwRev=01032920h, Ports=1, MaxQ=128, IRQ=17 -05:50:23,035 NOTICE kernel:scsi 2:0:0:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,035 INFO kernel:scsi target2:0:0: Beginning Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: Domain Validation skipping write tests -05:50:23,035 INFO kernel:scsi target2:0:0: Ending Domain Validation -05:50:23,035 INFO kernel:scsi target2:0:0: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,036 NOTICE kernel:scsi 2:0:1:0: Direct-Access VMware Virtual disk 1.0 PQ: 0 ANSI: 2 -05:50:23,036 INFO kernel:scsi target2:0:1: Beginning Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: Domain Validation skipping write tests -05:50:23,037 INFO kernel:scsi target2:0:1: Ending Domain Validation -05:50:23,037 INFO kernel:scsi target2:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127) -05:50:23,061 WARNING kernel:sr0: scsi3-mmc drive: 1x/1x writer dvd-ram cd/rw xa/form2 cdda tray -05:50:23,061 INFO kernel:Uniform CD-ROM driver Revision: 3.20 -05:50:23,061 DEBUG kernel:sr 1:0:0:0: Attached scsi CD-ROM sr0 -05:50:23,072 INFO kernel:e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI -05:50:23,072 INFO kernel:e1000: Copyright (c) 1999-2006 Intel Corporation. -05:50:23,072 DEBUG kernel: alloc irq_desc for 18 on node -1 -05:50:23,072 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,072 INFO kernel:e1000 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18 -05:50:23,072 DEBUG kernel:e1000 0000:02:00.0: setting latency timer to 64 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:b8 -05:50:23,422 INFO kernel:e1000 0000:02:00.0: eth0: Intel(R) PRO/1000 Network Connection -05:50:23,422 DEBUG kernel: alloc irq_desc for 19 on node -1 -05:50:23,422 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,422 INFO kernel:e1000 0000:02:01.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19 -05:50:23,422 DEBUG kernel:e1000 0000:02:01.0: setting latency timer to 64 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:c2 -05:50:23,766 INFO kernel:e1000 0000:02:01.0: eth1: Intel(R) PRO/1000 Network Connection -05:50:23,766 DEBUG kernel: alloc irq_desc for 16 on node -1 -05:50:23,766 DEBUG kernel: alloc kstat_irqs on node -1 -05:50:23,766 INFO kernel:e1000 0000:02:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 -05:50:23,766 DEBUG kernel:e1000 0000:02:02.0: setting latency timer to 64 -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:cc -05:50:24,116 INFO kernel:e1000 0000:02:02.0: eth2: Intel(R) PRO/1000 Network Connection -05:50:24,116 INFO kernel:e1000 0000:02:03.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 -05:50:24,116 DEBUG kernel:e1000 0000:02:03.0: setting latency timer to 64 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: (PCI:66MHz:32-bit) 00:0c:29:5c:6a:d6 -05:50:24,461 INFO kernel:e1000 0000:02:03.0: eth3: Intel(R) PRO/1000 Network Connection -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:0:0: [sda] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,497 INFO kernel: sda: -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] 33554432 512-byte logical blocks: (17.1 GB/16.0 GiB) -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Write Protect is off -05:50:24,497 DEBUG kernel:sd 2:0:1:0: [sdb] Mode Sense: 61 00 00 00 -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,497 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,497 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 INFO kernel: sdb: -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Cache data unavailable -05:50:24,502 ERR kernel:sd 2:0:1:0: [sdb] Assuming drive cache: write through -05:50:24,502 NOTICE kernel:sd 2:0:1:0: [sdb] Attached SCSI disk -05:50:24,505 WARNING kernel: sda1 sda2 -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:50:24,531 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:50:24,531 NOTICE kernel:sd 2:0:0:0: [sda] Attached SCSI disk -05:50:24,537 NOTICE kernel:sr 1:0:0:0: Attached scsi generic sg0 type 5 -05:50:24,538 NOTICE kernel:sd 2:0:0:0: Attached scsi generic sg1 type 0 -05:50:24,538 NOTICE kernel:sd 2:0:1:0: Attached scsi generic sg2 type 0 -05:50:28,728 ERR udevd-work: device node '/dev/rtc' already exists, link to '/dev/rtc0' will not overwrite it -05:50:31,010 INFO NetworkManager: NetworkManager (version 0.8.1-66.el6) is starting... -05:50:31,010 INFO NetworkManager: Read config file /etc/NetworkManager/NetworkManager.conf -05:50:31,012 INFO NetworkManager: trying to start the modem manager... -05:50:31,016 INFO NetworkManager: monitoring kernel firmware directory '/lib/firmware'. -05:50:31,016 INFO NetworkManager: Bonding/Bridging/VLAN support enabled -05:50:31,017 NOTICE NetworkManager: ifcfg-rh: Acquired D-Bus service com.redhat.ifcfgrh1 -05:50:31,018 INFO NetworkManager: Loaded plugin ifcfg-rh: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 INFO NetworkManager: Loaded plugin keyfile: (c) 2007 - 2008 Red Hat, Inc. To report bugs please use the NetworkManager mailing list. -05:50:31,018 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth3 ... -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth3' -05:50:31,020 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth2 ... -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth2' -05:50:31,021 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth1 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth1' -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: parsing /etc/sysconfig/network-scripts/ifcfg-eth0 ... -05:50:31,022 NOTICE NetworkManager: ifcfg-rh: read connection 'System eth0' -05:50:31,023 WARNING NetworkManager: Can not read directory '/etc/NetworkManager/system-connections': Error opening directory '/etc/NetworkManager/system-connections': No such file or directory -05:50:31,025 INFO NetworkManager: WiFi enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WWAN enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: WiMAX enabled by radio killswitch; enabled by state file -05:50:31,025 INFO NetworkManager: Networking is enabled by state file -05:50:31,044 INFO kernel:802.1Q VLAN Support v1.8 Ben Greear -05:50:31,044 INFO kernel:All bugs added by David S. Miller -05:50:31,045 INFO NetworkManager: (eth0): carrier is OFF -05:50:31,045 INFO NetworkManager: (eth0): new Ethernet device (driver: 'e1000' ifindex: 2) -05:50:31,045 INFO NetworkManager: (eth0): exported as /org/freedesktop/NetworkManager/Devices/0 -05:50:31,045 INFO NetworkManager: (eth0): now managed -05:50:31,045 INFO NetworkManager: (eth0): device state change: 1 -> 2 (reason 2) -05:50:31,045 INFO NetworkManager: (eth0): bringing up device. -05:50:31,051 INFO kernel:e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,055 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth0 -05:50:31,056 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,056 INFO NetworkManager: (eth0): preparing device. -05:50:31,056 INFO NetworkManager: (eth0): deactivating device (reason: 2). -05:50:31,057 INFO NetworkManager: (eth1): carrier is OFF -05:50:31,058 INFO NetworkManager: (eth1): new Ethernet device (driver: 'e1000' ifindex: 3) -05:50:31,058 INFO NetworkManager: (eth1): exported as /org/freedesktop/NetworkManager/Devices/1 -05:50:31,058 INFO NetworkManager: (eth1): now managed -05:50:31,058 INFO NetworkManager: (eth1): device state change: 1 -> 2 (reason 2) -05:50:31,058 INFO NetworkManager: (eth1): bringing up device. -05:50:31,063 INFO kernel:e1000: eth1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,068 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth1 -05:50:31,068 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,068 INFO NetworkManager: (eth1): preparing device. -05:50:31,068 INFO NetworkManager: (eth1): deactivating device (reason: 2). -05:50:31,069 INFO NetworkManager: (eth2): carrier is OFF -05:50:31,070 INFO NetworkManager: (eth2): new Ethernet device (driver: 'e1000' ifindex: 4) -05:50:31,070 INFO NetworkManager: (eth2): exported as /org/freedesktop/NetworkManager/Devices/2 -05:50:31,070 INFO NetworkManager: (eth2): now managed -05:50:31,070 INFO NetworkManager: (eth2): device state change: 1 -> 2 (reason 2) -05:50:31,070 INFO NetworkManager: (eth2): bringing up device. -05:50:31,076 INFO kernel:e1000: eth2 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,080 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth2 -05:50:31,080 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,080 INFO NetworkManager: (eth2): preparing device. -05:50:31,080 INFO NetworkManager: (eth2): deactivating device (reason: 2). -05:50:31,081 INFO NetworkManager: (eth3): carrier is OFF -05:50:31,082 INFO NetworkManager: (eth3): new Ethernet device (driver: 'e1000' ifindex: 5) -05:50:31,082 INFO NetworkManager: (eth3): exported as /org/freedesktop/NetworkManager/Devices/3 -05:50:31,082 INFO NetworkManager: (eth3): now managed -05:50:31,082 INFO NetworkManager: (eth3): device state change: 1 -> 2 (reason 2) -05:50:31,082 INFO NetworkManager: (eth3): bringing up device. -05:50:31,086 INFO kernel:e1000: eth3 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None -05:50:31,091 INFO kernel:8021q: adding VLAN 0 to HW filter on device eth3 -05:50:31,091 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,091 INFO NetworkManager: (eth3): preparing device. -05:50:31,091 INFO NetworkManager: (eth3): deactivating device (reason: 2). -05:50:31,093 INFO NetworkManager: (eth0): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth0): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth1): carrier now OFF (device state 2) -05:50:31,094 INFO NetworkManager: (eth1): carrier now ON (device state 2) -05:50:31,094 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,094 INFO NetworkManager: (eth2): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth2): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,095 INFO NetworkManager: (eth3): carrier now OFF (device state 2) -05:50:31,095 INFO NetworkManager: (eth3): carrier now ON (device state 2) -05:50:31,095 WARNING NetworkManager: (nm-device.c:4447):nm_device_queue_state: runtime check failed: (priv->queued_state.id == 0) -05:50:31,096 INFO NetworkManager: Trying to start the supplicant... -05:50:31,097 INFO NetworkManager: (eth0): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth1): device state change: 2 -> 3 (reason 40) -05:50:31,097 INFO NetworkManager: (eth2): device state change: 2 -> 3 (reason 40) -05:50:31,098 INFO NetworkManager: (eth3): device state change: 2 -> 3 (reason 40) -05:50:31,104 INFO NetworkManager: wpa_supplicant started -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,010 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,019 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,026 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,027 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:32,039 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:33,054 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -05:50:33,057 INFO NetworkManager: Auto-activating connection 'System eth0'. -05:50:33,057 INFO NetworkManager: Activation (eth0) starting connection 'System eth0' -05:50:33,058 INFO NetworkManager: (eth0): device state change: 3 -> 4 (reason 0) -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) scheduled... -05:50:33,058 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) started... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) scheduled... -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 1 of 5 (Device Prepare) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) starting... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 4 -> 5 (reason 0) -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) successful. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) scheduled. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 2 of 5 (Device Configure) complete. -05:50:33,059 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) started... -05:50:33,059 INFO NetworkManager: (eth0): device state change: 5 -> 7 (reason 0) -05:50:33,060 INFO NetworkManager: Activation (eth0) Beginning DHCPv4 transaction -05:50:33,062 INFO dhclient: Internet Systems Consortium DHCP Client 4.1.1-P1 -05:50:33,062 INFO NetworkManager: dhclient started with pid 654 -05:50:33,063 INFO NetworkManager: Activation (eth0) DHCPv4 will time out in 45 seconds -05:50:33,063 INFO dhclient: Copyright 2004-2010 Internet Systems Consortium. -05:50:33,063 INFO dhclient: All rights reserved. -05:50:33,063 INFO dhclient: For info, please visit https://www.isc.org/software/dhcp/ -05:50:33,063 INFO dhclient: -05:50:33,063 INFO NetworkManager: Activation (eth0) Stage 3 of 5 (IP Configure Start) complete. -05:50:33,066 INFO NetworkManager: (eth0): DHCPv4 state changed nbi -> preinit -05:50:33,068 INFO dhclient: Listening on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on LPF/eth0/00:0c:29:5c:6a:b8 -05:50:33,068 INFO dhclient: Sending on Socket/fallback -05:50:37,004 INFO dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 7 (xid=0x3433ec2c) -05:50:37,048 INFO dhclient: DHCPOFFER from 10.145.88.211 -05:50:37,048 INFO dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x3433ec2c) -05:50:38,084 INFO dhclient: DHCPACK from 10.145.88.211 (xid=0x3433ec2c) -05:50:38,087 INFO dhclient: bound to 10.145.88.104 -- renewal in 10764 seconds. -05:50:38,087 INFO NetworkManager: (eth0): DHCPv4 state changed preinit -> bound -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) scheduled... -05:50:38,087 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) started... -05:50:38,087 INFO NetworkManager: address 10.145.88.104 -05:50:38,087 INFO NetworkManager: prefix 23 (255.255.254.0) -05:50:38,087 INFO NetworkManager: gateway 10.145.88.1 -05:50:38,087 INFO NetworkManager: hostname 'server2' -05:50:38,087 INFO NetworkManager: nameserver '10.145.88.211' -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) scheduled... -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 4 of 5 (IP4 Configure Get) complete. -05:50:38,088 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) started... -05:50:39,089 INFO NetworkManager: (eth0): device state change: 7 -> 8 (reason 0) -05:50:39,090 INFO NetworkManager: Policy set 'System eth0' (eth0) as default for IPv4 routing and DNS. -05:50:39,090 INFO NetworkManager: Setting system hostname to 'server2' (from DHCPv4) -05:50:39,091 INFO NetworkManager: Activation (eth0) successful, device activated. -05:50:39,092 INFO NetworkManager: Activation (eth0) Stage 5 of 5 (IP Configure Commit) complete. -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.sleep-wake: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.use-user-connections: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.NetworkManager.network-control: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.open: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:50:55,174 WARNING NetworkManager: error requesting auth for org.freedesktop.network-manager-settings.system.wifi.share.protected: (26) Remote Exception invoking org.freedesktop.PolicyKit1.Authority.CheckAuthorization() on /org/freedesktop/PolicyKit1/Authority at name org.freedesktop.PolicyKit1: org.freedesktop.DBus.Error.Spawn.ExecFailed: Cannot launch daemon, file not found or permissions invalid -05:51:46,967 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/nm-dhcp-client.conf, line 1, column 0: no element found -05:51:46,969 NOTICE dbus-daemon: [system] Unable to reload configuration: Error in file /etc/dbus-1/system.d/org.freedesktop.PolicyKit1.conf, line 1, column 0: no element found -05:51:46,976 NOTICE dbus-daemon: [system] Reloaded configuration -05:51:47,135 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,214 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -05:51:47,702 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -05:51:47,702 DEBUG kernel:SELinux: 81 classes, 277800 rules -05:51:47,706 DEBUG kernel:SELinux: Completing initialization. -05:51:47,706 DEBUG kernel:SELinux: Setting up existing superblocks. -05:51:47,706 DEBUG kernel:SELinux: initialized (dev loop0, type squashfs), not configured for labeling -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,706 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev selinuxfs, type selinuxfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev mqueue, type mqueue), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev hugetlbfs, type hugetlbfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devpts, type devpts), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev inotifyfs, type inotifyfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev anon_inodefs, type anon_inodefs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev pipefs, type pipefs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev debugfs, type debugfs), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev sockfs, type sockfs), uses task SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev devtmpfs, type devtmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:51:47,708 DEBUG kernel:SELinux: initialized (dev proc, type proc), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev bdev, type bdev), uses genfs_contexts -05:51:47,708 DEBUG kernel:SELinux: initialized (dev rootfs, type rootfs), uses genfs_contexts -05:51:47,709 DEBUG kernel:SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts -05:51:47,751 NOTICE kernel:type=1403 audit(1021096307.739:2): policy loaded auid=4294967295 ses=4294967295 -05:51:47,786 INFO kernel:md: raid0 personality registered for level 0 -05:51:47,793 INFO kernel:md: raid1 personality registered for level 1 -05:51:47,797 INFO kernel:async_tx: api initialized (async) -05:51:47,802 INFO kernel:xor: automatically using best checksumming function: generic_sse -05:51:47,810 INFO kernel: generic_sse: 9176.000 MB/sec -05:51:47,810 INFO kernel:xor: using function: generic_sse (9176.000 MB/sec) -05:51:47,834 WARNING kernel:raid6: sse2x1 4742 MB/s -05:51:47,851 WARNING kernel:raid6: sse2x2 7117 MB/s -05:51:47,868 WARNING kernel:raid6: sse2x4 7660 MB/s -05:51:47,868 WARNING kernel:raid6: using algorithm sse2x4 (7660 MB/s) -05:51:47,868 WARNING kernel:raid6: using ssse3x2 recovery algorithm -05:51:47,882 INFO kernel:md: raid6 personality registered for level 6 -05:51:47,882 INFO kernel:md: raid5 personality registered for level 5 -05:51:47,882 INFO kernel:md: raid4 personality registered for level 4 -05:51:47,893 INFO kernel:md: raid10 personality registered for level 10 -05:51:47,896 INFO kernel:md: linear personality registered for level -1 -05:51:47,909 INFO kernel:device-mapper: uevent: version 1.0.3 -05:51:47,909 INFO kernel:device-mapper: ioctl: 4.24.6-ioctl (2013-01-15) initialised: dm-devel@redhat.com -05:51:47,940 INFO kernel:device-mapper: multipath: version 1.5.0 loaded -05:51:47,944 INFO kernel:device-mapper: multipath round-robin: version 1.0.0 loaded -05:52:05,224 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:05,224 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:05,225 INFO kernel: sda: sda1 -05:52:06,013 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,013 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,023 INFO kernel: sda: -05:52:06,365 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:06,365 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:06,415 INFO kernel: sda: sda1 -05:52:09,171 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:09,171 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:09,171 INFO kernel: sda: sda1 sda2 -05:52:11,280 NOTICE kernel:sd 2:0:0:0: [sda] Cache data unavailable -05:52:11,280 ERR kernel:sd 2:0:0:0: [sda] Assuming drive cache: write through -05:52:11,280 INFO kernel: sda: sda1 sda2 sda3 -05:52:44,551 INFO kernel:Adding 3354616k swap on /dev/sda2. Priority:-1 extents:1 across:3354616k -05:52:45,044 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,053 INFO kernel:EXT3-fs (dm-0): using internal journal -05:52:45,053 INFO kernel:EXT3-fs (dm-0): mounted filesystem with ordered data mode -05:52:45,053 DEBUG kernel:SELinux: initialized (dev dm-0, type ext3), uses xattr -05:52:45,103 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,170 INFO kernel:EXT3-fs (sda1): using internal journal -05:52:45,170 INFO kernel:EXT3-fs (sda1): mounted filesystem with ordered data mode -05:52:45,170 DEBUG kernel:SELinux: initialized (dev sda1, type ext3), uses xattr -05:52:45,250 DEBUG kernel:SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs -05:52:45,384 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,439 INFO kernel:EXT3-fs (dm-1): using internal journal -05:52:45,439 INFO kernel:EXT3-fs (dm-1): mounted filesystem with ordered data mode -05:52:45,439 DEBUG kernel:SELinux: initialized (dev dm-1, type ext3), uses xattr -05:52:45,604 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,648 INFO kernel:EXT3-fs (dm-2): using internal journal -05:52:45,648 INFO kernel:EXT3-fs (dm-2): mounted filesystem with ordered data mode -05:52:45,648 DEBUG kernel:SELinux: initialized (dev dm-2, type ext3), uses xattr -05:52:45,851 INFO kernel:kjournald starting. Commit interval 5 seconds -05:52:45,875 INFO kernel:EXT3-fs (dm-3): using internal journal -05:52:45,875 INFO kernel:EXT3-fs (dm-3): mounted filesystem with ordered data mode -05:52:45,875 DEBUG kernel:SELinux: initialized (dev dm-3, type ext3), uses xattr -05:52:54,110 DEBUG kernel:SELinux: initialized (dev usbfs, type usbfs), uses genfs_contexts -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:54,121 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:54,124 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,143 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth3 -05:52:55,145 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth2 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth1 -05:52:55,146 NOTICE NetworkManager: ifcfg-rh: updating /etc/sysconfig/network-scripts/ifcfg-eth0 -06:11:24,179 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,305 DEBUG kernel:SELinux: 2048 avtab hash slots, 277800 rules. -06:11:24,821 DEBUG kernel:SELinux: 9 users, 12 roles, 3917 types, 217 bools, 1 sens, 1024 cats -06:11:24,821 DEBUG kernel:SELinux: 81 classes, 277800 rules diff --git a/compass/tests/actions/update_progress/data/test2/test2 b/compass/tests/actions/update_progress/data/test2/test2 deleted file mode 100644 index 90fe85ec..00000000 --- a/compass/tests/actions/update_progress/data/test2/test2 +++ /dev/null @@ -1,224 +0,0 @@ -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-single-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute', 'target_system': 'openstack'}, -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor': 'huawei', 'credential': {'version': 'v2c', 'community': 'public'}}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - {'mac': '00:00:01:02:03:05', 'port': 2, 'vlan': 2}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security': { - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }, - 'networking': { - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }, - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - }, -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'server1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config': { - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': ["os-single-controller", "os-network"], - }, - },{ - 'hostname': 'server2', - 'mac': '00:00:01:02:03:05', - 'mutable': False, - 'config': { - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.101', - }, - }, - }, - 'roles': ["os-compute"], - }, - }, - - ], -} - -EXPECTED = { - 'test2': { - 'checkpoint_1': { - 'host_states': { - 'server1': { - 'hostname': 'server1', - 'progress': 0.006, - 'state': 'INSTALLING' - }, - 'server2': { - 'hostname': 'server2', - 'progress': 0.006, - 'state': 'INSTALLING' - }, - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 0.006, - 'state': 'INSTALLING' - }, - }, - }, - 'checkpoint_2': { - 'host_states': { - 'server1': { - 'hostname': 'server1', - 'progress': 0.33, - 'state': 'INSTALLING' - }, - 'server2': { - 'hostname': 'server2', - 'progress': 0.33, - 'state': 'INSTALLING' - }, - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 0.33, - 'state': 'INSTALLING' - }, - }, - }, - 'checkpoint_3': { - 'host_states': { - 'server1': { - 'hostname': 'server1', - 'progress': 0.6, - 'state': 'INSTALLING' - }, - 'server2': { - 'hostname': 'server2', - 'progress': 0.6, - 'state': 'INSTALLING' - }, - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 0.6, - 'state': 'INSTALLING' - }, - }, - }, - 'checkpoint_4': { - 'host_states': { - 'server1': { - 'hostname': 'server1', - 'progress': 0.73882, - 'state': 'INSTALLING' - }, - 'server2': { - 'hostname': 'server2', - 'progress': 0.68374, - 'state': 'INSTALLING' - }, - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 0.71128, - 'state': 'INSTALLING' - }, - }, - }, - 'checkpoint_5': { - 'host_states': { - 'server1': { - 'hostname': 'server1', - 'progress': 1.0, - 'state': 'READY', - }, - 'server2': { - 'hostname': 'server2', - 'progress': 1.0, - 'state': 'READY', - } - }, - 'cluster_states': { - 'cluster1': { - 'clustername': 'cluster1', - 'progress': 1.0, - 'state': 'READY' - }, - }, - }, - }, -} - diff --git a/compass/tests/actions/update_progress/test_update_progress.py b/compass/tests/actions/update_progress/test_update_progress.py deleted file mode 100644 index 2c6f5a16..00000000 --- a/compass/tests/actions/update_progress/test_update_progress.py +++ /dev/null @@ -1,255 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""integration test for action update_progress""" -import logging -import mock -import os -import os.path -import shutil -import unittest2 -import uuid - -from contextlib import contextmanager - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -setting.CONFIG_DIR = '%s/data' % os.path.dirname(os.path.abspath(__file__)) - - -from compass.actions import update_progress -from compass.actions import util -from compass.db import database -from compass.db.model import Adapter -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.db.model import ClusterState -from compass.db.model import HostState -from compass.db.model import Machine -from compass.db.model import Role -from compass.db.model import Switch - -from compass.log_analyzor import file_matcher - -from compass.utils import flags -from compass.utils import logsetting - - -def sortCheckPoints(check_points): - ret = [] - mapping = {} - for check_point in check_points: - cp_index = int(check_point[-1]) - ret.append(cp_index) - mapping[cp_index] = check_point - - ret.sort() - while True: - if isinstance(ret[0], int): - ret.append(mapping[ret[0]]) - ret.pop(0) - else: - break - return ret - - -class TestEndToEnd(unittest2.TestCase): - """Integration test classs.""" - - def _mock_lock(self): - @contextmanager - def _lock(lock_name, blocking=True, timeout=10): - """mock lock.""" - try: - yield lock_name - finally: - pass - - self.lock_backup_ = util.lock - util.lock = mock.Mock(side_effect=_lock) - - def _unmock_lock(self): - util.lock = self.lock_backup_ - - def _test(self, config_file): - full_path = '%s/data/%s' % ( - os.path.dirname(os.path.abspath(__file__)), - config_file) - config_file_path = '%s/%s' % ( - full_path, config_file) - - class _TmpLogMocker: - """Mocks logs from a check point.""" - - def __init__(in_self, source_path, check_point, tmp_logdir): - in_self.source_path = source_path - in_self.check_point = check_point - in_self.__logdir__ = tmp_logdir - - def _merge_logs(in_self): - dest = in_self.__logdir__ - source = os.path.join( - in_self.source_path, in_self.check_point) - shutil.copytree(source, dest) - for root, sub_dir, files in os.walk(dest): - for file in files: - new_name = file.replace(".template", "") - os.rename( - os.path.join(root, file), - os.path.join(root, new_name)) - - config_globals = {} - config_locals = {} - execfile(config_file_path, config_globals, config_locals) - self._prepare_database(config_locals) - cluster_hosts = {} - with database.session() as session: - clusters = session.query(Cluster).all() - for cluster in clusters: - cluster_hosts[cluster.id] = [ - host.id for host in cluster.hosts] - - mock_log_path = os.path.join(full_path, "anamon") - check_points = os.listdir(mock_log_path) - check_points = sortCheckPoints(check_points) - for check_point in check_points: - tmp_logdir = os.path.join('/tmp/mocklogs', str(uuid.uuid4())) - log_mocker = _TmpLogMocker(mock_log_path, check_point, tmp_logdir) - setting.INSTALLATION_LOGDIR = log_mocker.__logdir__ - logging.info('temp logging dir set to: %s', - setting.INSTALLATION_LOGDIR) - log_mocker._merge_logs() - reload(file_matcher) - update_progress.update_progress(cluster_hosts) - self._check_progress(config_locals, config_file, check_point) - - def _check_progress(self, mock_configs, test_type, check_point): - with database.session() as session: - host_states = session.query(HostState).all() - cluster_states = session.query(ClusterState).all() - expected = mock_configs['EXPECTED'] - - for host_state in host_states: - states = self._filter_query_result( - host_state, ("hostname", "state", "progress")) - expected_host_states = expected[ - test_type][check_point][ - 'host_states'][host_state.hostname] - self.assertEqual(expected_host_states, states) - - for cluster_state in cluster_states: - states = self._filter_query_result( - cluster_state, ("clustername", "state", "progress")) - expected_cluster_states = expected[ - test_type][check_point][ - 'cluster_states'][cluster_state.clustername] - self.assertEqual(expected_cluster_states, states) - - def _filter_query_result(self, model, keywords): - filtered_dict = {} - for keyword in keywords: - pair = {keyword: eval("model.%s" % keyword)} - filtered_dict.update(pair) - return filtered_dict - - def _prepare_database(self, config_locals): - """Prepare database.""" - with database.session() as session: - adapters = {} - for adapter_config in config_locals['ADAPTERS']: - adapter = Adapter(**adapter_config) - session.add(adapter) - adapters[adapter_config['name']] = adapter - - roles = {} - for role_config in config_locals['ROLES']: - role = Role(**role_config) - session.add(role) - roles[role_config['name']] = role - - switches = {} - for switch_config in config_locals['SWITCHES']: - switch = Switch(**switch_config) - session.add(switch) - switches[switch_config['ip']] = switch - - machines = {} - for switch_ip, machine_configs in ( - config_locals['MACHINES_BY_SWITCH'].items() - ): - for machine_config in machine_configs: - machine = Machine(**machine_config) - machines[machine_config['mac']] = machine - machine.switch = switches[switch_ip] - session.add(machine) - - clusters = {} - for cluster_config in config_locals['CLUSTERS']: - adapter_name = cluster_config['adapter'] - del cluster_config['adapter'] - cluster = Cluster(**cluster_config) - clusters[cluster_config['name']] = cluster - cluster.adapter = adapters[adapter_name] - cluster.state = ClusterState( - state="INSTALLING", progress=0.0, message='') - session.add(cluster) - - hosts = {} - for cluster_name, host_configs in ( - config_locals['HOSTS_BY_CLUSTER'].items() - ): - for host_config in host_configs: - mac = host_config['mac'] - del host_config['mac'] - host = ClusterHost(**host_config) - hosts['%s.%s' % ( - host_config['hostname'], cluster_name)] = host - host.machine = machines[mac] - host.cluster = clusters[cluster_name] - host.state = HostState( - state="INSTALLING", progress=0.0, message='') - session.add(host) - - def setUp(self): - super(TestEndToEnd, self).setUp() - logsetting.init() - database.create_db() - self._mock_lock() - os.system = mock.Mock() - self.progress_checker_ = {} - - def tearDown(self): - database.drop_db() - self._unmock_lock() - #shutil.rmtree('/tmp/mocklogs/') - super(TestEndToEnd, self).tearDown() - - def test_1(self): - self._test('test1') - - def test_2(self): - self._test('test2') - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/api/__init__.py b/compass/tests/api/__init__.py index 4ee55a4c..e69de29b 100644 --- a/compass/tests/api/__init__.py +++ b/compass/tests/api/__init__.py @@ -1,13 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. diff --git a/compass/tests/api/data/adapter/ceph.conf b/compass/tests/api/data/adapter/ceph.conf new file mode 100644 index 00000000..6b6c8139 --- /dev/null +++ b/compass/tests/api/data/adapter/ceph.conf @@ -0,0 +1,3 @@ +NAME = 'ceph' +PARENT = 'general' +DISTRIBUTED_SYSTEM = 'ceph' diff --git a/compass/tests/api/data/adapter/chef_ceph.conf b/compass/tests/api/data/adapter/chef_ceph.conf new file mode 100644 index 00000000..9051b4db --- /dev/null +++ b/compass/tests/api/data/adapter/chef_ceph.conf @@ -0,0 +1,7 @@ +NAME = 'ceph(chef)' +DSPLAY_NAME = 'ceph(ceph)' +PARENT = 'ceph' +PACKAGE_INSTALLER = 'chef_installer' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/compass/tests/api/data/adapter/chef_openstack.conf b/compass/tests/api/data/adapter/chef_openstack.conf new file mode 100644 index 00000000..b523815c --- /dev/null +++ b/compass/tests/api/data/adapter/chef_openstack.conf @@ -0,0 +1,7 @@ +NAME = 'openstack_icehouse' +DISPLAY_NAME = 'OpenStack Icehouse' +PARENT = 'openstack' +PACKAGE_INSTALLER = 'chef_installer' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/compass/tests/api/data/adapter/general.conf b/compass/tests/api/data/adapter/general.conf new file mode 100644 index 00000000..4d8cb371 --- /dev/null +++ b/compass/tests/api/data/adapter/general.conf @@ -0,0 +1 @@ +NAME = 'general' diff --git a/compass/tests/api/data/adapter/openstack.conf b/compass/tests/api/data/adapter/openstack.conf new file mode 100644 index 00000000..2f948fb0 --- /dev/null +++ b/compass/tests/api/data/adapter/openstack.conf @@ -0,0 +1,4 @@ +NAME = 'openstack' +PARENT = 'general' +DISTRIBUTED_SYSTEM = 'openstack' +SUPPORTED_OSES = ['CentOS6.5', 'Ubuntu12.04'] diff --git a/compass/tests/api/data/adapter/os_only.conf b/compass/tests/api/data/adapter/os_only.conf new file mode 100644 index 00000000..96295538 --- /dev/null +++ b/compass/tests/api/data/adapter/os_only.conf @@ -0,0 +1,5 @@ +NAME = 'os_only' +PARENT = 'general' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/compass/tests/api/data/distributed_system/ceph.conf b/compass/tests/api/data/distributed_system/ceph.conf new file mode 100644 index 00000000..674b8248 --- /dev/null +++ b/compass/tests/api/data/distributed_system/ceph.conf @@ -0,0 +1,3 @@ +NAME = 'ceph' +PARENT = 'general' +DEPLOYABLE = True diff --git a/compass/tests/api/data/distributed_system/general.conf b/compass/tests/api/data/distributed_system/general.conf new file mode 100644 index 00000000..655beb06 --- /dev/null +++ b/compass/tests/api/data/distributed_system/general.conf @@ -0,0 +1,2 @@ +NAME = 'general' +PARENT = '' diff --git a/compass/tests/api/data/distributed_system/openstack.conf b/compass/tests/api/data/distributed_system/openstack.conf new file mode 100644 index 00000000..d4a14a2e --- /dev/null +++ b/compass/tests/api/data/distributed_system/openstack.conf @@ -0,0 +1,3 @@ +NAME ='openstack' +PARENT = 'general' +DEPLOYABLE = True diff --git a/compass/tests/api/data/flavor/openstack_chef.conf b/compass/tests/api/data/flavor/openstack_chef.conf new file mode 100644 index 00000000..ca449fe9 --- /dev/null +++ b/compass/tests/api/data/flavor/openstack_chef.conf @@ -0,0 +1,16 @@ +ADAPTER_NAME = 'openstack_icehouse' +FLAVORS = [{ + 'flavor': 'allinone', + 'display_name': 'allinone', + 'template': 'allinone.tmpl', + 'roles': ['allinone-compute'] +}, { + 'flavor': 'multiroles', + 'display_name': 'multiroles', + 'template': 'multiroles.tmpl', + 'roles': [ + 'os-compute-worker', 'os-network', 'os-block-storage-worker', + 'os-image', 'os-compute-vncproxy', 'os-controller', + 'os-ops-messaging', 'os-ops-database', 'ha-proxy' + ] +}] diff --git a/compass/tests/api/data/os/centos.conf b/compass/tests/api/data/os/centos.conf new file mode 100644 index 00000000..d67f12a1 --- /dev/null +++ b/compass/tests/api/data/os/centos.conf @@ -0,0 +1,2 @@ +NAME = 'CentOS' +PARENT = 'general' diff --git a/compass/tests/api/data/os/centos6.5.conf b/compass/tests/api/data/os/centos6.5.conf new file mode 100644 index 00000000..75d4eb17 --- /dev/null +++ b/compass/tests/api/data/os/centos6.5.conf @@ -0,0 +1,3 @@ +NAME = 'CentOS-6.5-x86_64' +PARENT = 'CentOS' +DEPLOYABLE = True diff --git a/compass/tests/api/data/os/general.conf b/compass/tests/api/data/os/general.conf new file mode 100644 index 00000000..655beb06 --- /dev/null +++ b/compass/tests/api/data/os/general.conf @@ -0,0 +1,2 @@ +NAME = 'general' +PARENT = '' diff --git a/compass/tests/api/data/os/ubuntu.conf b/compass/tests/api/data/os/ubuntu.conf new file mode 100644 index 00000000..2207329e --- /dev/null +++ b/compass/tests/api/data/os/ubuntu.conf @@ -0,0 +1,2 @@ +NAME = 'Ubuntu' +PARENT = 'general' diff --git a/compass/tests/api/data/os/ubuntu12.04.conf b/compass/tests/api/data/os/ubuntu12.04.conf new file mode 100644 index 00000000..db810061 --- /dev/null +++ b/compass/tests/api/data/os/ubuntu12.04.conf @@ -0,0 +1,3 @@ +NAME = 'Ubuntu-12.04-x86_64' +PARENT = 'Ubuntu' +DEPLOYABLE = True diff --git a/compass/tests/api/data/os_field/dns.conf b/compass/tests/api/data/os_field/dns.conf new file mode 100644 index 00000000..b97b1544 --- /dev/null +++ b/compass/tests/api/data/os_field/dns.conf @@ -0,0 +1,2 @@ +NAME = 'dns' +VALIDATOR = is_valid_dns diff --git a/compass/tests/api/data/os_field/gateway.conf b/compass/tests/api/data/os_field/gateway.conf new file mode 100644 index 00000000..f9a3139e --- /dev/null +++ b/compass/tests/api/data/os_field/gateway.conf @@ -0,0 +1,2 @@ +NAME = 'gateway' +VALIDATOR = is_valid_gateway diff --git a/compass/tests/api/data/os_field/general.conf b/compass/tests/api/data/os_field/general.conf new file mode 100644 index 00000000..4d8cb371 --- /dev/null +++ b/compass/tests/api/data/os_field/general.conf @@ -0,0 +1 @@ +NAME = 'general' diff --git a/compass/tests/api/data/os_field/general_list.conf b/compass/tests/api/data/os_field/general_list.conf new file mode 100644 index 00000000..9b37cb99 --- /dev/null +++ b/compass/tests/api/data/os_field/general_list.conf @@ -0,0 +1,2 @@ +NAME = 'general_list' +FIELD_TYPE = list diff --git a/compass/tests/api/data/os_field/ip.conf b/compass/tests/api/data/os_field/ip.conf new file mode 100644 index 00000000..4f532098 --- /dev/null +++ b/compass/tests/api/data/os_field/ip.conf @@ -0,0 +1,2 @@ +NAME = 'ip' +VALIDATOR = is_valid_ip diff --git a/compass/tests/api/data/os_field/netmask.conf b/compass/tests/api/data/os_field/netmask.conf new file mode 100644 index 00000000..2dab8690 --- /dev/null +++ b/compass/tests/api/data/os_field/netmask.conf @@ -0,0 +1,2 @@ +NAME = 'netmask' +VALIDATOR = is_valid_netmask diff --git a/compass/tests/api/data/os_field/network.conf b/compass/tests/api/data/os_field/network.conf new file mode 100644 index 00000000..c7f627f3 --- /dev/null +++ b/compass/tests/api/data/os_field/network.conf @@ -0,0 +1,2 @@ +NAME = 'network' +VALIDATOR = is_valid_network diff --git a/compass/tests/api/data/os_field/password.conf b/compass/tests/api/data/os_field/password.conf new file mode 100644 index 00000000..bdb026e5 --- /dev/null +++ b/compass/tests/api/data/os_field/password.conf @@ -0,0 +1,3 @@ +NAME = 'password' +VALIDATOR = is_valid_password +DESCRIPTION = 'password' diff --git a/compass/tests/api/data/os_field/percentage.conf b/compass/tests/api/data/os_field/percentage.conf new file mode 100644 index 00000000..2e61c899 --- /dev/null +++ b/compass/tests/api/data/os_field/percentage.conf @@ -0,0 +1,3 @@ +NAME = 'percentage' +FIELD_TYPE = int +VALIDATOR = is_valid_percentage diff --git a/compass/tests/api/data/os_field/size.conf b/compass/tests/api/data/os_field/size.conf new file mode 100644 index 00000000..b3b686e8 --- /dev/null +++ b/compass/tests/api/data/os_field/size.conf @@ -0,0 +1,2 @@ +NAME = 'size' +VALIDATOR = is_valid_size diff --git a/compass/tests/api/data/os_field/username.conf b/compass/tests/api/data/os_field/username.conf new file mode 100644 index 00000000..79907b1a --- /dev/null +++ b/compass/tests/api/data/os_field/username.conf @@ -0,0 +1,3 @@ +NAME = 'username' +VALIDATOR = is_valid_username +DESCRIPTION = 'username' diff --git a/compass/tests/api/data/os_installer/cobbler.conf b/compass/tests/api/data/os_installer/cobbler.conf new file mode 100644 index 00000000..240c490f --- /dev/null +++ b/compass/tests/api/data/os_installer/cobbler.conf @@ -0,0 +1,9 @@ +NAME = 'cobbler' +INSTANCE_NAME = 'cobbler' +SETTINGS = { + 'cobbler_url': 'http://127.0.0.1/cobbler_api', + 'credentials': { + 'username': 'cobbler', + 'password': 'cobbler' + } +} diff --git a/compass/tests/api/data/os_metadata/general.conf b/compass/tests/api/data/os_metadata/general.conf new file mode 100644 index 00000000..6acc43db --- /dev/null +++ b/compass/tests/api/data/os_metadata/general.conf @@ -0,0 +1,169 @@ +OS = 'general' +METADATA = { + 'general': { + '_self': { + 'required_in_whole_config': True + }, + 'language': { + '_self': { + 'field': 'general', + 'default_value': 'EN', + 'options': ['EN', 'CN'], + 'mapping_to': 'language' + } + }, + 'timezone': { + '_self': { + 'field': 'general', + 'default_value': 'UTC', + 'options': [ + 'America/New_York', 'America/Chicago', + 'America/Los_Angeles', 'Asia/Shanghai', + 'Asia/Tokyo', 'Europe/Paris', + 'Europe/London', 'Europe/Moscow', + 'Europe/Rome', 'Europe/Madrid', + 'Europe/Berlin', 'UTC' + ], + 'mapping_to': 'timezone' + } + }, + 'http_proxy': { + '_self': { + 'field': 'general', + 'default_value': 'http://127.0.0.1:3128', + 'options': [ + 'http://127.0.0.1:3128' + ], + 'mapping_to': 'http_proxy' + } + }, + 'https_proxy': { + '_self': { + 'field': 'general', + 'default_value': 'http://127.0.0.1:3128', + 'options': [ + 'http://127.0.0.1:3128' + ], + 'mapping_to': 'https_proxy' + } + }, + 'no_proxy': { + '_self': { + 'field': 'general_list', + 'default_value': [ + '127.0.0.1', + 'compass' + ], + 'options': [ + '127.0.0.1', + 'compass' + ], + 'mapping_to': 'no_proxy' + } + }, + 'ntp_server': { + '_self': { + 'is_required': True, + 'field': 'general', + 'default_value': '127.0.0.1', + 'options': [ + '127.0.0.1' + ], + 'mapping_to': 'ntp_server' + } + }, + 'dns_servers': { + '_self': { + 'is_required': True, + 'field': 'general_list', + 'default_value': [ + '127.0.0.1', + ], + 'options': [ + '127.0.0.1' + ], + 'mapping_to': 'nameservers' + } + }, + 'domain': { + '_self': { + 'field': 'general', + 'is_required' : True, + 'default_value': 'ods.com', + 'options': ['ods.com'], + } + }, + 'search_path': { + '_self': { + 'field': 'general_list', + 'default_value': [ + 'ods.com' + ], + 'options': ['ods.com'], + 'mapping_to': 'search_path' + } + }, + 'default_gateway': { + '_self': { + 'is_required': True, + 'field': 'ip', + 'default_value': '127.0.0.1', + 'mapping_to': 'gateway' + } + } + }, + 'server_credentials': { + '_self': { + 'required_in_whole_config': True, + 'mapping_to': 'server_credentials' + }, + 'username': { + '_self': { + 'is_required': True, + 'default_value': 'root', + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'default_value': 'root', + 'field': 'password', + 'mapping_to': 'password' + } + } + }, + 'partition': { + '_self': { + 'required_in_whole_config': True, + 'options': ['/boot', 'swap', '/var', '/home'], + 'mapping_to': 'partition' + }, + '$partition': { + '_self': { + 'validator': is_valid_partition + }, + 'max_size': { + '_self': { + 'field': 'size', + 'mapping_to': 'max_vol_size' + }, + }, + 'percentage': { + '_self': { + 'field': 'percentage', + 'default_value': 10, + 'mapping_to': 'vol_percentage' + } + }, + 'size': { + '_self': { + 'field': 'size', + 'default_value': '1G', + 'mapping_to': 'vol_size' + }, + } + } + } +} diff --git a/compass/tests/api/data/package_field/dns.conf b/compass/tests/api/data/package_field/dns.conf new file mode 100644 index 00000000..b97b1544 --- /dev/null +++ b/compass/tests/api/data/package_field/dns.conf @@ -0,0 +1,2 @@ +NAME = 'dns' +VALIDATOR = is_valid_dns diff --git a/compass/tests/api/data/package_field/gateway.conf b/compass/tests/api/data/package_field/gateway.conf new file mode 100644 index 00000000..f9a3139e --- /dev/null +++ b/compass/tests/api/data/package_field/gateway.conf @@ -0,0 +1,2 @@ +NAME = 'gateway' +VALIDATOR = is_valid_gateway diff --git a/compass/tests/api/data/package_field/general.conf b/compass/tests/api/data/package_field/general.conf new file mode 100644 index 00000000..4d8cb371 --- /dev/null +++ b/compass/tests/api/data/package_field/general.conf @@ -0,0 +1 @@ +NAME = 'general' diff --git a/compass/tests/api/data/package_field/ip.conf b/compass/tests/api/data/package_field/ip.conf new file mode 100644 index 00000000..0389cef9 --- /dev/null +++ b/compass/tests/api/data/package_field/ip.conf @@ -0,0 +1,2 @@ +NAME = 'ip address' +VALIDATOR = is_valid_ip diff --git a/compass/tests/api/data/package_field/netmask.conf b/compass/tests/api/data/package_field/netmask.conf new file mode 100644 index 00000000..2dab8690 --- /dev/null +++ b/compass/tests/api/data/package_field/netmask.conf @@ -0,0 +1,2 @@ +NAME = 'netmask' +VALIDATOR = is_valid_netmask diff --git a/compass/tests/api/data/package_field/network.conf b/compass/tests/api/data/package_field/network.conf new file mode 100644 index 00000000..c7f627f3 --- /dev/null +++ b/compass/tests/api/data/package_field/network.conf @@ -0,0 +1,2 @@ +NAME = 'network' +VALIDATOR = is_valid_network diff --git a/compass/tests/api/data/package_field/password.conf b/compass/tests/api/data/package_field/password.conf new file mode 100644 index 00000000..bdb026e5 --- /dev/null +++ b/compass/tests/api/data/package_field/password.conf @@ -0,0 +1,3 @@ +NAME = 'password' +VALIDATOR = is_valid_password +DESCRIPTION = 'password' diff --git a/compass/tests/api/data/package_field/percentage.conf b/compass/tests/api/data/package_field/percentage.conf new file mode 100644 index 00000000..2e61c899 --- /dev/null +++ b/compass/tests/api/data/package_field/percentage.conf @@ -0,0 +1,3 @@ +NAME = 'percentage' +FIELD_TYPE = int +VALIDATOR = is_valid_percentage diff --git a/compass/tests/api/data/package_field/roles.conf b/compass/tests/api/data/package_field/roles.conf new file mode 100644 index 00000000..a0319ed2 --- /dev/null +++ b/compass/tests/api/data/package_field/roles.conf @@ -0,0 +1,3 @@ +NAME = 'roles' +FIELD_TYPE = list +DESCRIPTION = 'roles' diff --git a/compass/tests/api/data/package_field/size.conf b/compass/tests/api/data/package_field/size.conf new file mode 100644 index 00000000..b3b686e8 --- /dev/null +++ b/compass/tests/api/data/package_field/size.conf @@ -0,0 +1,2 @@ +NAME = 'size' +VALIDATOR = is_valid_size diff --git a/compass/tests/api/data/package_field/username.conf b/compass/tests/api/data/package_field/username.conf new file mode 100644 index 00000000..79907b1a --- /dev/null +++ b/compass/tests/api/data/package_field/username.conf @@ -0,0 +1,3 @@ +NAME = 'username' +VALIDATOR = is_valid_username +DESCRIPTION = 'username' diff --git a/compass/tests/api/data/package_installer/chef-icehouse.conf b/compass/tests/api/data/package_installer/chef-icehouse.conf new file mode 100644 index 00000000..ed820f05 --- /dev/null +++ b/compass/tests/api/data/package_installer/chef-icehouse.conf @@ -0,0 +1,8 @@ +NAME = 'chef_installer' +INSTANCE_NAME = 'chef_installer' +SETTINGS = { + 'chef_url': 'https://127.0.0.1', + 'key_dir': '', + 'client_name': '', + 'databags': ['user_passwords', 'db_passwords', 'service_passwords', 'secrets'] +} diff --git a/compass/tests/api/data/package_metadata/openstack.conf b/compass/tests/api/data/package_metadata/openstack.conf new file mode 100644 index 00000000..bb5406c3 --- /dev/null +++ b/compass/tests/api/data/package_metadata/openstack.conf @@ -0,0 +1,58 @@ +ADAPTER = 'openstack' +METADATA = { + 'security': { + '_self': { + 'required_in_whole_config': True, + }, + 'service_credentials': { + '_self': { + 'mapping_to': 'service_credentials' + }, + '$service': { + 'username': { + '_self': { + 'is_required': True, + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'field': 'password', + 'mapping_to': 'password' + } + } + } + }, + 'console_credentials': { + '$console': { + 'username': { + '_self': { + 'is_required': True, + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'field': 'password', + 'mapping_to': 'password' + } + } + } + } + }, + 'network_mapping': { + '_self': { + 'required_in_whole_config': True + }, + '$interface_type': { + '_self': { + 'is_required': True, + 'field': 'general' + } + } + } +} diff --git a/compass/tests/api/data/role/openstack_chef.conf b/compass/tests/api/data/role/openstack_chef.conf new file mode 100644 index 00000000..245f4cea --- /dev/null +++ b/compass/tests/api/data/role/openstack_chef.conf @@ -0,0 +1,44 @@ +ADAPTER_NAME = 'openstack_icehouse' +ROLES = [{ + 'role': 'os-compute-worker', + 'display_name': 'compute node', + 'description': 'compute node' +}, { + 'role': 'os-network', + 'display_name': 'network node', + 'description': 'network node' +}, { + 'role': 'os-block-storage-worker', + 'display_name': 'storage node', + 'description': 'storage node' +}, { + 'role': 'os-image', + 'display_name': 'image node', + 'description': 'image node' +}, { + 'role': 'os-compute-vncproxy', + 'display_name': 'vnc proxy node', + 'description': 'vnc proxy node' +}, { + 'role': 'os-controller', + 'display_name': 'controller node', + 'description': 'controller node' +}, { + 'role': 'os-ops-messaging', + 'display_name': 'message queue node', + 'description': 'message queue node' +}, { + 'role': 'os-ops-database', + 'display_name': 'database node', + 'description': 'database node' +}, { + 'role': 'ha-proxy', + 'display_name': 'ha proxy node', + 'description': 'ha proxy node', + 'optional': True +}, { + 'role': 'allinone-compute', + 'display_name': 'all in one compute', + 'description': 'all in one compute', + 'optional': True +}] diff --git a/compass/tests/api/expected_csv/adapter.csv b/compass/tests/api/expected_csv/adapter.csv deleted file mode 100644 index 5cf79dda..00000000 --- a/compass/tests/api/expected_csv/adapter.csv +++ /dev/null @@ -1,2 +0,0 @@ -id,name,os,target_system -1,Centos_openstack,Centos,openstack diff --git a/compass/tests/api/expected_csv/cluster.csv b/compass/tests/api/expected_csv/cluster.csv deleted file mode 100644 index 1cf12dcd..00000000 --- a/compass/tests/api/expected_csv/cluster.csv +++ /dev/null @@ -1,3 +0,0 @@ -id,name,security_config.server_credentials.username,security_config.server_credentials.password,security_config.service_credentials.username,security_config.service_credentials.password,security_config.console_credentials.username,security_config.console_credentials.password,networking_config.interfaces.management.nic,networking_config.interfaces.management.netmask,networking_config.interfaces.management.promisc,networking_config.interfaces.management.ip_end,networking_config.interfaces.management.gateway,networking_config.interfaces.management.ip_start,networking_config.interfaces.storage.nic,networking_config.interfaces.storage.netmask,networking_config.interfaces.storage.promisc,networking_config.interfaces.storage.ip_end,networking_config.interfaces.storage.gateway,networking_config.interfaces.storage.ip_start,networking_config.interfaces.public.nic,networking_config.interfaces.public.netmask,networking_config.interfaces.public.promisc,networking_config.interfaces.public.ip_end,networking_config.interfaces.public.gateway,networking_config.interfaces.public.ip_start,networking_config.interfaces.tenant.nic,networking_config.interfaces.tenant.netmask,networking_config.interfaces.tenant.promisc,networking_config.interfaces.tenant.ip_end,networking_config.interfaces.tenant.gateway,networking_config.interfaces.tenant.ip_start,networking_config.global.nameservers,networking_config.global.ntp_server,networking_config.global.gateway,networking_config.global.ha_vip,networking_config.global.proxy,networking_config.global.search_path,partition_config,adapter_id,state -1,cluster_01,root,root,service,admin,console,admin,eth0,255.255.255.0,1,10.120.1.200,None,10.120.1.100,eth3,255.255.255.0,0,172.29.1.200,None,172.29.1.100,eth2,255.255.255.0,0,12.145.1.200,None,12.145.1.100,eth1,255.255.255.0,0,192.168.1.200,None,192.168.1.100,8.8.8.8,127.0.0.1,192.168.1.1,None,http://127.0.0.1:3128,ods.com,"/home 20%;/tmp 10%;/var 30%;",1,READY -2,cluster_02,root,root,service,admin,console,admin,eth0,255.255.255.0,1,10.120.2.200,None,10.120.2.100,eth3,255.255.255.0,0,172.29.2.200,None,172.29.2.100,eth2,255.255.255.0,0,12.145.2.200,None,12.145.2.100,eth1,255.255.255.0,0,192.168.2.200,None,192.168.2.100,8.8.8.8,127.0.0.1,192.168.1.1,None,http://127.0.0.1:3128,ods.com,"/home 20%;/tmp 10%;/var 30%;",1,ERROR diff --git a/compass/tests/api/expected_csv/cluster_host.csv b/compass/tests/api/expected_csv/cluster_host.csv deleted file mode 100644 index 0330bdf8..00000000 --- a/compass/tests/api/expected_csv/cluster_host.csv +++ /dev/null @@ -1,7 +0,0 @@ -id,cluster_id,hostname,machine_id,config_data.networking.interfaces.management.ip,config_data.networking.interfaces.tenant.ip,config_data.roles,state,deploy_action -1,1,host_01,1,10.120.1.100,192.168.1.100,['base'],READY,0 -2,1,host_02,2,10.120.1.101,192.168.1.101,['base'],READY,0 -3,1,host_03,3,10.120.1.102,192.168.1.102,['base'],READY,0 -4,2,host_01,4,10.120.2.100,192.168.2.100,['base'],ERROR,0 -5,2,host_02,5,10.120.2.101,192.168.2.101,['base'],READY,0 -6,2,host_03,6,10.120.2.102,192.168.2.102,['base'],ERROR,0 diff --git a/compass/tests/api/expected_csv/machine.csv b/compass/tests/api/expected_csv/machine.csv deleted file mode 100644 index b02d95fe..00000000 --- a/compass/tests/api/expected_csv/machine.csv +++ /dev/null @@ -1,12 +0,0 @@ -id,mac,port,vlan,switch_id -1,00:0c:27:88:0c:a1,1,1,1 -2,00:0c:27:88:0c:a2,2,1,1 -3,00:0c:27:88:0c:a3,3,1,1 -4,00:0c:27:88:0c:b1,1,1,2 -5,00:0c:27:88:0c:b2,2,1,2 -6,00:0c:27:88:0c:b3,3,1,2 -7,00:0c:27:88:0c:c1,1,1,3 -8,00:0c:27:88:0c:c2,2,1,3 -9,00:0c:27:88:0c:c3,3,1,3 -10,00:0c:27:88:0c:d1,1,1,4 -11,00:0c:27:88:0c:d2,2,1,4 diff --git a/compass/tests/api/expected_csv/role.csv b/compass/tests/api/expected_csv/role.csv deleted file mode 100644 index cc611bea..00000000 --- a/compass/tests/api/expected_csv/role.csv +++ /dev/null @@ -1,2 +0,0 @@ -id,name,target_system,description -1,compute,openstack,None diff --git a/compass/tests/api/expected_csv/switch.csv b/compass/tests/api/expected_csv/switch.csv deleted file mode 100644 index 40af787c..00000000 --- a/compass/tests/api/expected_csv/switch.csv +++ /dev/null @@ -1,5 +0,0 @@ -id,ip,credential_data.version,credential_data.community -1,192.168.2.1,2c,public -2,192.168.2.2,2c,public -3,192.168.2.3,2c,public -4,192.168.2.4,2c,public diff --git a/compass/tests/api/expected_csv/switch_config.csv b/compass/tests/api/expected_csv/switch_config.csv deleted file mode 100644 index 405bcf0e..00000000 --- a/compass/tests/api/expected_csv/switch_config.csv +++ /dev/null @@ -1,3 +0,0 @@ -id,ip,filter_port -1,192.168.1.10,1 -2,192.168.1.11,2 diff --git a/compass/tests/api/test_api.py b/compass/tests/api/test_api.py old mode 100755 new mode 100644 index aaffad2f..706741a6 --- a/compass/tests/api/test_api.py +++ b/compass/tests/api/test_api.py @@ -17,12 +17,12 @@ """test api module.""" import celery import copy -import csv import mock import os import simplejson as json import unittest2 + os.environ['COMPASS_IGNORE_SETTING'] = 'true' @@ -30,1573 +30,976 @@ from compass.utils import setting_wrapper as setting reload(setting) -from compass.api import app from compass.api import login_manager -from compass.db import database -from compass.db.model import Adapter -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.db.model import ClusterState -from compass.db.model import HostState -from compass.db.model import Machine -from compass.db.model import Role -from compass.db.model import Switch -from compass.db.model import SwitchConfig +from compass.db.api import adapter_holder as adapter_api +from compass.db.api import cluster as cluster_api +from compass.db.api import database +from compass.db.api import host as host_api +from compass.db.api import metadata_holder as metadata_api +from compass.db.api import user as user_api +from compass.db.models import User from compass.utils import flags from compass.utils import logsetting from compass.utils import util -app.config['TESTING'] = True -app.config['WTF_CSRF_ENABLED'] = False -login_manager.init_app(app) - class ApiTestCase(unittest2.TestCase): """base api test class.""" - CLUSTER_NAME = "Test1" - SWITCH_IP_ADDRESS1 = '10.10.10.1' + CLUSTER_NAME = "Test_CLUSTER" + SWITCH_IP_ADDRESS = '10.10.10.1' SWITCH_CREDENTIAL = {'version': 'xxx', 'community': 'xxx'} - DATABASE_URL = 'sqlite://' + USER_CREDENTIALS = { + 'email': setting.COMPASS_ADMIN_EMAIL, + 'password': setting.COMPASS_ADMIN_PASSWORD + } def setUp(self): super(ApiTestCase, self).setUp() - logsetting.init() - database.init(self.DATABASE_URL) + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') database.create_db() + adapter_api.load_adapters() + metadata_api.load_metadatas() - self.test_client = app.test_client() + from compass.api import api as compass_api + application = compass_api.app + self.test_client = application.test_client() - # We do not want to send a real task as our test environment - # does not have a AMQP system set up. TODO(): any better way? celery.current_app.send_task = mock.Mock() + url = '/users/token' + data = self.USER_CREDENTIALS + request_data = json.dumps(data) + return_value = self.test_client.post( + url, + data=request_data, + ) + resp = return_value.get_data() + resp = json.loads(resp) + self.token = resp['token'] + + #create a cluster + adapter_name, adapter_id, os_id, flavor_id = ( + self._get_adapter_info() + ) + url = '/clusters' + data = {} + data['name'] = 'test_cluster1' + data['adapter_id'] = adapter_id + data['os_id'] = os_id + data['flavor_id'] = flavor_id + self.post(url, data) + data = {} + data['name'] = 'test_cluster2' + data['adapter_id'] = adapter_id + data['os_id'] = os_id + data['flavor_id'] = flavor_id + self.post(url, data) + + #create a switch + url = '/switches' + datas = [ + { + 'ip': self.SWITCH_IP_ADDRESS, + 'credentials': { + "version": "2c", + "community": "public" + }, + 'vendor': 'huawei', + 'state': 'under_monitoring' + }, + { + 'ip': '172.29.8.40', + 'credentials': { + "version": "2c", + "community": "public" + }, + 'vendor': 'huawei', + 'state': 'under_monitoring' + } + ] + for data in datas: + self.post(url, data) + + def get(self, url): + return self.test_client.get( + url, headers={ + setting.USER_AUTH_HEADER_NAME: self.token + } + ) + + def post(self, url, data): + return self.test_client.post(url, data=json.dumps(data)) + + def put(self, url, data): + return self.test_client.put(url, data=json.dumps(data)) + + def delete(self, url): + return self.test_client.delete(url) def tearDown(self): database.drop_db() + reload(setting) super(ApiTestCase, self).tearDown() + def _get_adapter_info(self): + adapter_name = None + adapter_id = None + os_id = None + flavor_id = None + adapters = self.get( + '/adapters' + ).get_data() + adapters = json.loads(adapters) + for adapter in adapters: + if adapter['flavors']: + adapter_name = adapter['name'] + adapter_id = adapter['id'] + os_id = adapter['supported_oses'][0]['os_id'] + for flavor in adapter['flavors']: + flavor_id = flavor['id'] + break + return (adapter_name, adapter_id, os_id, flavor_id) -class TestSwtichMachineAPI(ApiTestCase): - """test switch machine api.""" - SWITCH_RESP_TPL = {"state": "under_monitoring", - "ip": "", - "link": {"href": "", - "rel": "self"}, - "id": ""} +class TestAuth(ApiTestCase): + """Test user authentication.""" def setUp(self): - super(TestSwtichMachineAPI, self).setUp() - logsetting.init() - # Create one switch in database - with database.session() as session: - test_switch = Switch(ip=self.SWITCH_IP_ADDRESS1) - test_switch.credential = self.SWITCH_CREDENTIAL - test_switch.state = 'under_monitoring' - session.add(test_switch) + super(TestAuth, self).setUp() def tearDown(self): - super(TestSwtichMachineAPI, self).tearDown() - - def test_get_switch_list(self): - """tst get switch list api.""" - # Prepare testing data - with database.session() as session: - switches = [ - Switch( - ip='192.168.1.1', - credential_data=json.dumps(self.SWITCH_CREDENTIAL)), - Switch( - ip='192.168.1.2', - credential_data=json.dumps(self.SWITCH_CREDENTIAL)), - Switch( - ip='192.1.192.1', - credential_data=json.dumps(self.SWITCH_CREDENTIAL)), - Switch( - ip='192.1.192.2', - credential_data=json.dumps(self.SWITCH_CREDENTIAL)), - Switch( - ip='192.1.195.3', - credential_data=json.dumps(self.SWITCH_CREDENTIAL)), - Switch( - ip='192.2.192.4', - credential_data=json.dumps(self.SWITCH_CREDENTIAL)) - ] - session.add_all(switches) - - # Start to query switches - # a. query multiple switches with ip - # b. query switches with only switchIpNetwork - # c. query only with limit - # d. query swithes with switchIpNetwork and limit number - # e. query switches with all conditions - # f. Invliad switch ip format - # g. Invalid switch ip network format - - test_list = [{'url': ('/switches?switchIp=192.168.1.1' - '&switchIp=192.168.1.2'), - 'expected_code': 200, 'expected_count': 2}, - {'url': '/switches?switchIpNetwork=192.1.192.0/22', - 'expected_code': 200, 'expected_count': 3}, - {'url': '/switches?limit=3', 'expected_code': 200, - 'expected_count': 3}, - {'url': '/switches?limit=-1', 'expected_code': 400}, - {'url': ('/switches?switchIpNetwork=192.1.192.0/22' - '&limit=1'), - 'expected_code': 200, 'expected_count': 1}, - {'url': ('/switches?switchIp=192.168.1.1' - '&switchIpNetwork=192.1.192.0/22&limit=3'), - 'expected_code': 400}, - {'url': '/switches?switchIp=192.168.1.xx', - 'expected_code': 400}, - {'url': '/switches?switchIpNetwork=192.168.1.x', - 'expected_code': 400}] - - for test in test_list: - url = test['url'] - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - expected_code = test['expected_code'] - self.assertEqual(return_value.status_code, expected_code) - - if 'expected_count' in test: - expected_count = test['expected_count'] - switch_count = len(data['switches']) - self.assertEqual(switch_count, expected_count) - - def test_post_switch_list(self): - """test post switch list.""" - # Test SwitchList POST method - url = '/switches' - - # a. post a new switch - data = {'switch': { - 'ip': '10.10.10.2', - 'credential': self.SWITCH_CREDENTIAL}} - - return_value = self.test_client.post(url, data=json.dumps(data)) - self.assertEqual(return_value.status_code, 202) - - with database.session() as session: - switch = session.query(Switch).filter_by(ip='10.10.10.2').first() - self.assertEqual(switch.ip, '10.10.10.2') - - # b. Post Conflict switch Ip - return_value = self.test_client.post(url, data=json.dumps(data)) - self.assertEqual(return_value.status_code, 409) - data = json.loads(return_value.get_data()) - self.assertEqual("IP address '10.10.10.2' already exists", - data['message']) - self.assertEqual(2, data['failedSwitch']) - - # c. Invalid Ip format - data = {'switch': { - 'ip': '192.543.1.1', - 'credential': self.SWITCH_CREDENTIAL}} - return_value = self.test_client.post(url, data=json.dumps(data)) - self.assertEqual(return_value.status_code, 400) - - def test_get_switch_by_id(self): - """test get switch by id.""" - # Test Get /switches/{id} - # Non-exist switch id - url = '/switches/1000' - return_value = self.test_client.get(url) - self.assertEqual(return_value.status_code, 404) - - correct_url = '/switches/1' - return_value = self.test_client.get(correct_url) - data = json.loads(return_value.get_data()) - - expected_switch_resp = self.SWITCH_RESP_TPL.copy() - expected_switch_resp['link']['href'] = correct_url - expected_switch_resp['id'] = 1 - expected_switch_resp['ip'] = "10.10.10.1" + super(TestAuth, self).tearDown() + def test_login_logout(self): + # Test login + url = '/users/token' + data = self.USER_CREDENTIALS + request_data = json.dumps(data) + return_value = self.test_client.post( + url, + data=request_data, + follow_redirects=True + ) self.assertEqual(return_value.status_code, 200) - self.assertEqual(data["status"], "OK") - self.assertDictEqual(data["switch"], expected_switch_resp) - - def test_put_switch_by_id(self): - """test put switch by id.""" - # Test put a switch by id - url = '/switches/1000' - # Put a non-existing switch - data = {'switch': {'credential': self.SWITCH_CREDENTIAL}} - return_value = self.test_client.put(url, data=json.dumps(data)) - self.assertEqual(return_value.status_code, 404) - - # Put sucessfully - url = '/switches/1' - credential = copy.deepcopy(self.SWITCH_CREDENTIAL) - credential['version'] = '1v' - data = {'switch': {'credential': credential}} - return_value = self.test_client.put(url, data=json.dumps(data)) - self.assertEqual(return_value.status_code, 202) - self.assertEqual( - json.loads(return_value.get_data())['switch']['state'], - 'repolling') - - def test_delete_switch(self): - """test delete switch.""" - url = '/switches/1' - return_value = self.test_client.delete(url) - self.assertEqual(return_value.status_code, 405) - - def test_get_machine_by_id(self): - """test get machine by id.""" - # Prepare testing data - with database.session() as session: - machine = Machine(mac='00:27:88:0c:a6', port='1', vlan='1', - switch_id=1) - session.add(machine) - - # machine id exists in Machine table - url = '/machines/1' - return_value = self.test_client.get(url) + # Test logout + url = '/users/logout' + return_value = self.test_client.post( + url, + follow_redirects=True + ) self.assertEqual(return_value.status_code, 200) - # machine id doesn't exist - url = '/machines/1000' - return_value = self.test_client.get(url) - self.assertEqual(return_value.status_code, 404) + def test_login_failed(self): + url = '/users/token' + # Wrong credentials + data_list = [ + {"email": "xxx", "password": "admin"}, + {"email": "admin@huawei.com", "password": "xxx"} + ] + for data in data_list: + return_value = self.test_client.post( + url, + data=data, + follow_redirects=True + ) + self.assertEqual(return_value.status_code, 400) + self.assertIn('missing email or password', return_value.get_data()) - def test_get_machine_list(self): - """test get machine list.""" - #Prepare testing data - with database.session() as session: - switch_config = [ - SwitchConfig(ip='10.10.10.1', filter_port='6'), - SwitchConfig(ip='10.10.10.1', filter_port='7') - ] - session.add_all(switch_config) + # disable user + User.query.filter_by( + email="admin@huawei.com" + ).update({"active": False}) + data = { + "email": "admin@huawei.com", + "password": "admin" + } + request_data = json.dumps(data) + return_value = self.test_client.post( + url, + data=request_data, + follow_redirects=True + ) + self.assertEqual(return_value.status_code, 403) + self.assertIn("failed to login", return_value.get_data()) - machines = [Machine(mac='00:27:88:0c:01', port='1', vlan='1', - switch_id=1), - Machine(mac='00:27:88:0c:02', port='2', vlan='1', - switch_id=1), - Machine(mac='00:27:88:0c:03', port='3', vlan='1', - switch_id=1), - Machine(mac='00:27:88:01:04', port='4', vlan='1', - switch_id=1), - Machine(mac='00:27:88:01:05', port='5', vlan='1', - switch_id=1), - Machine(mac='00:27:88:01:06', port='6', vlan='1', - switch_id=1), - Machine(mac='00:27:88:01:07', port='7', vlan='1', - switch_id=1), - Machine(mac='00:27:88:01:08', port='8', vlan='1', - switch_id=1), - Machine(mac='00:27:88:01:09', port='9', vlan='1', - switch_id=1), - Machine(mac='00:27:88:01:10', port='10', vlan='1', - switch_id=1), - Machine(mac='00:27:88:0c:04', port='3', vlan='1', - switch_id=2), - Machine(mac='00:27:88:0c:05', port='4', vlan='2', - switch_id=2), - Machine(mac='00:27:88:0c:06', port='5', vlan='3', - switch_id=3)] - session.add_all(machines) - test_list = [{'url': '/machines', 'expected': 11}, - {'url': '/machines?limit=3', 'expected': 3}, - {'url': '/machines?limit=50', 'expected': 11}, - {'url': '/machines?switchId=1&vladId=1&port=2', - 'expected': 1}, - {'url': '/machines?switchId=1&vladId=1&limit=2', - 'expected': 2}, - {'url': '/machines?switchId=1', 'expected': 8}, - # TODO: - #{'url': '/machines?switchId=1&port=6', 'expected': 1}, - {'url': '/machines?switchId=4', 'expected': 0}, - {'url': "/machines?mac='00:27:88:0c:01'", 'expected': 1}] +class TestUserAPI(ApiTestCase): + """Test user api.""" - for test in test_list: - url = test['url'] - expected = test['expected'] - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - count = len(data['machines']) - self.assertEqual(return_value.status_code, 200) - self.assertEqual(count, expected) + def setUp(self): + super(TestUserAPI, self).setUp() + + def tearDown(self): + super(TestUserAPI, self).tearDown() + + def test_list_users(self): + url = '/users' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + count = len(resp) + self.assertEqual(count, 1) + self.assertEqual(return_value.status_code, 200) class TestClusterAPI(ApiTestCase): - """test cluster api.""" - - SECURITY_CONFIG = { - 'server_credentials': { - 'username': 'root', - 'password': 'huawei123'}, - 'service_credentials': { - 'username': 'admin', - 'password': 'huawei123'}, - 'console_credentials': { - 'username': 'admin', - 'password': 'huawei123'}} - - NETWORKING_CONFIG = { - "interfaces": { - "management": { - "ip_start": "192.168.1.100", - "ip_end": "192.168.1.200", - "netmask": "255.255.255.0", - "gateway": "192.168.1.1", - "nic": "eth0", - "promisc": 1}, - "tenant": { - "ip_start": "192.168.1.100", - "ip_end": "192.168.1.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth1", - "promisc": 0}, - "public": { - "ip_start": "192.168.1.100", - "ip_end": "192.168.1.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth3", - "promisc": 1}, - "storage": { - "ip_start": "192.168.1.100", - "ip_end": "192.168.1.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth3", - "promisc": 1}}, - "global": { - "gateway": "192.168.1.1", - "proxy": "", - "ntp_server": "", - "nameservers": "8.8.8.8", - "search_path": "ods.com,ods1.com", - "ha_vip": "192.168.20.1"}} + """Test cluster api.""" def setUp(self): super(TestClusterAPI, self).setUp() - logsetting.init() - #Prepare testing data - with database.session() as session: - clusters_list = [ - Cluster(name='cluster_01'), # undeployed - Cluster(name="cluster_02"), # undeployed - Cluster(name="cluster_03", mutable=False), # installing - Cluster(name="cluster_04", mutable=False), # installing - Cluster(name="cluster_05"), # failed - Cluster(name="cluster_06"), # failed - Cluster(name="cluster_07"), # successful - Cluster(name="cluster_08"), # successful - ] - session.add_all(clusters_list) - - cluster_states = [ - ClusterState(id=3, state='INSTALLING'), - ClusterState(id=4, state='INSTALLING'), - ClusterState(id=5, state='ERROR'), - ClusterState(id=6, state='ERROR'), - ClusterState(id=7, state='READY'), - ClusterState(id=8, state='READY'), - ] - session.add_all(cluster_states) - session.flush() + # add a machine + url = '/switches/2/machines' + data = { + 'mac': '28:6e:d4:46:c4:25', + 'port': '1', + 'vlans': [88] + } + self.post(url, data) + url = '/clusters/1/hosts' + data = { + 'name': 'test_cluster_host', + 'reinstall_os': True, + 'machine_id': 1 + } + self.post(url, data) def tearDown(self): super(TestClusterAPI, self).tearDown() - def test_get_cluster_by_id(self): - """test get cluster by id.""" - # a. Get an existing cluster - # b. Get a non-existing cluster, return 404 - test_list = [{'url': '/clusters/1', 'expected_code': 200, - 'expected': {'clusterName': 'cluster_01', - 'href': '/clusters/1'}}, - {'url': '/clusters/1000', 'expected_code': 404}] + def test_list_clusters(self): + # list clusters successfully - for test in test_list: - url = test['url'] - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(return_value.status_code, test['expected_code']) - if 'expected' in test: - excepted_name = test['expected']['clusterName'] - excepted_href = test['expected']['href'] - self.assertEqual(data['cluster']['clusterName'], excepted_name) - self.assertEqual(data['cluster']['link']['href'], - excepted_href) - - # Create a cluster - def test_post_cluster(self): - """test post cluster.""" - # a. Post a new cluster but no adapter exists - cluster_req = {'cluster': {'name': 'cluster_09', - 'adapter_id': 1}} url = '/clusters' - return_value = self.test_client.post(url, data=json.dumps(cluster_req)) - data = json.loads(return_value.get_data()) - - self.assertEqual(return_value.status_code, 404) - - #b. Post a cluster sucessfully - with database.session() as session: - adapter = Adapter(name='Centos_openstack', os='Centos', - target_system='openstack') - session.add(adapter) - - return_value = self.test_client.post(url, data=json.dumps(cluster_req)) - data = json.loads(return_value.get_data()) - self.assertEqual(data['cluster']['id'], 9) - self.assertEqual(data['cluster']['name'], 'cluster_09') - - #c. Post an existing cluster, return 409 - return_value = self.test_client.post(url, data=json.dumps(cluster_req)) - self.assertEqual(return_value.status_code, 409) - #d. Post a new cluster without providing a name - cluster_req['cluster']['name'] = '' - return_value = self.test_client.post(url, data=json.dumps(cluster_req)) - data = json.loads(return_value.get_data()) - self.assertEqual(data['cluster']['id'], 10) - - def test_get_clusters(self): - """test get clusters.""" - # a. get all clusters - url = "/clusters" return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['clusters']), 8) - - # b. get all undeployed clusters - url = "/clusters?state=undeployed" - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['clusters']), 2) - - # c. get all failed clusters - url = "/clusters?state=failed" - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['clusters']), 2) - - # d. get all installing clusters - url = "/clusters?state=installing" - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['clusters']), 2) - - # e. get all successful clusters - url = "/clusters?state=successful" - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['clusters']), 2) - - def test_put_cluster_security_resource(self): - """test put cluster security resource.""" - # Prepare testing data - security = {'security': self.SECURITY_CONFIG} - - # a. Upate cluster's security config - url = '/clusters/1/security' - return_value = self.test_client.put(url, data=json.dumps(security)) self.assertEqual(return_value.status_code, 200) - with database.session() as session: - cluster_security_config = session.query( - Cluster.security_config).filter_by(id=1).first()[0] - self.assertDictEqual(self.SECURITY_CONFIG, - json.loads(cluster_security_config)) - - # b. Update a non-existing cluster's resource - url = '/clusters/1000/security' - return_value = self.test_client.put(url, data=json.dumps(security)) - self.assertEqual(return_value.status_code, 404) - - # c. Update invalid cluster config item - url = '/clusters/1/xxx' - return_value = self.test_client.put(url, data=json.dumps(security)) - self.assertEqual(return_value.status_code, 400) - - # d. Security config is invalid -- some required field is null - url = "/clusters/1/security" - invalid_security = copy.deepcopy(security) - invalid_security['security']['server_credentials']['username'] = None - return_value = self.test_client.put( - url, data=json.dumps(invalid_security)) - self.assertEqual(return_value.status_code, 400) - - # e. Security config is invalid -- keyword is incorrect - invalid_security = copy.deepcopy(security) - invalid_security['security']['xxxx'] = {'xxx': 'xxx'} - return_value = self.test_client.put( - url, data=json.dumps(invalid_security)) - self.assertEqual(return_value.status_code, 400) - - # f. Security config is invalid -- missing keyword - invalid_security = copy.deepcopy(security) - del invalid_security["security"]["server_credentials"] - return_value = self.test_client.put( - url, data=json.dumps(invalid_security)) - self.assertEqual(return_value.status_code, 400) - - # g. Security config is invalid -- missing subkey keyword - invalid_security = copy.deepcopy(security) - del invalid_security["security"]["server_credentials"]["username"] - return_value = self.test_client.put( - url, data=json.dumps(invalid_security)) - self.assertEqual(return_value.status_code, 400) - - def test_put_cluster_networking_resource(self): - """test put cluster networking resource.""" - networking = {"networking": self.NETWORKING_CONFIG} - url = "/clusters/1/networking" - return_value = self.test_client.put(url, data=json.dumps(networking)) - self.assertEqual(return_value.status_code, 200) - - # Missing some required keyword in interfaces section - invalid_config = copy.deepcopy(networking) - del invalid_config["networking"]["interfaces"]["management"]["nic"] - return_value = self.test_client.put( - url, data=json.dumps(invalid_config)) - self.assertEqual(return_value.status_code, 400) - - invalid_config = copy.deepcopy(networking) - del invalid_config["networking"]["interfaces"]["management"] - return_value = self.test_client.put( - url, data=json.dumps(invalid_config)) - self.assertEqual(return_value.status_code, 400) - - invalid_config = copy.deepcopy(networking) - invalid_config["networking"]["interfaces"]["xxx"] = {} - return_value = self.test_client.put( - url, data=json.dumps(invalid_config)) - self.assertEqual(return_value.status_code, 400) - - # Missing some required keyword in global section - invalid_config = copy.deepcopy(networking) - del invalid_config["networking"]["global"]["gateway"] - return_value = self.test_client.put( - url, data=json.dumps(invalid_config)) - self.assertEqual(return_value.status_code, 400) - - # Invalid value in interfaces section - invalid_config = copy.deepcopy(networking) - invalid_config["networking"]["interfaces"]["tenant"]["nic"] = "eth0" - return_value = self.test_client.put( - url, data=json.dumps(invalid_config)) - self.assertEqual(return_value.status_code, 400) - - # Invalid value in global section - invalid_config = copy.deepcopy(networking) - invalid_config["networking"]["global"]["nameservers"] = "*.*.*.*," - return_value = self.test_client.put( - url, data=json.dumps(invalid_config)) - self.assertEqual(return_value.status_code, 400) - - def test_get_cluster_resource(self): - """test get cluster resource.""" - # Test resource - with database.session() as session: - cluster = session.query(Cluster).filter_by(id=1).first() - cluster.security = self.SECURITY_CONFIG - cluster.networking = self.NETWORKING_CONFIG - - # a. query secuirty config by cluster id - url = '/clusters/1/security' - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(return_value.status_code, 200) - self.assertDictEqual(data['security'], self.SECURITY_CONFIG) - - url = '/clusters/1/networking' - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(return_value.status_code, 200) - self.assertDictEqual(data['networking'], self.NETWORKING_CONFIG) - - # b. query a nonsupported resource, return 400 - url = '/clusters/1/xxx' - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(return_value.status_code, 400) - excepted_err_msg = "Invalid resource name 'xxx'!" - self.assertEqual(data['message'], excepted_err_msg) - - def test_cluster_action(self): - """test cluster action.""" - from sqlalchemy import func - #Prepare testing data: create machines, clusters in database - #The first three machines will belong to cluster_01, the last one - #belongs to cluster_10 - with database.session() as session: - machines = [Machine(mac='00:27:88:0c:01'), - Machine(mac='00:27:88:0c:02'), - Machine(mac='00:27:88:0c:03'), - Machine(mac='00:27:88:0c:04'), - Machine(mac='00:27:88:0c:05'), - Machine(mac='00:27:88:0c:06'), - Machine(mac='00:27:88:0c:07'), - Machine(mac='00:27:88:0c:08')] - clusters = [Cluster(name='cluster_10')] - session.add_all(machines) - session.add_all(clusters) - # add a host to machine '00:27:88:0c:04' to cluster_02 - host = ClusterHost(cluster_id=10, machine_id=4, - hostname='host_c2_01') - session.add(host) - - # Do an action to a non-existing cluster - url = '/clusters/1000/action' - request = {'addHosts': [10, 20, 30]} - return_value = self.test_client.post(url, data=json.dumps(request)) - self.assertEqual(return_value.status_code, 404) - - # Test 'addHosts' action on cluster_01 - # 1. add a host with non-existing machine - url = '/clusters/1/action' - request = {'addHosts': [1, 1000, 1001]} - return_value = self.test_client.post(url, data=json.dumps(request)) - self.assertEqual(return_value.status_code, 404) - # ClusterHost table should not have any records. - with database.session() as session: - hosts_num = session.query( - func.count(ClusterHost.id) - ).filter_by(cluster_id=1).scalar() - self.assertEqual(hosts_num, 0) - - # 2. add a host with a installed machine - request = {'addHosts': [1, 4]} - return_value = self.test_client.post(url, data=json.dumps(request)) - self.assertEqual(return_value.status_code, 409) - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['failedMachines']), 1) - - # 3. add hosts to cluster_01 - request = {'addHosts': [1, 2, 3]} - return_value = self.test_client.post(url, data=json.dumps(request)) - self.assertEqual(return_value.status_code, 200) - total_hosts = 0 - with database.session() as session: - total_hosts = session.query( - func.count(ClusterHost.id) - ).filter_by(cluster_id=1).scalar() - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['cluster_hosts']), total_hosts) - self.assertEqual(total_hosts, 3) - - # 4. try to remove some hosts not existing and in different cluster - request = {'removeHosts': [1, 2, 3, 1000, 1001]} - return_value = self.test_client.post(url, data=json.dumps(request)) - self.assertEqual(return_value.status_code, 404) - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['failedHosts']), 3) - with database.session() as session: - count = session.query( - func.count(ClusterHost.id) - ).filter_by(cluster_id=1).scalar() - self.assertEqual(count, 3) - - # 5. sucessfully remove requested hosts - request = {'removeHosts': [2, 3]} - return_value = self.test_client.post(url, data=json.dumps(request)) - self.assertEqual(return_value.status_code, 200) - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['cluster_hosts']), 2) - with database.session() as session: - count = session.query( - func.count(ClusterHost.id) - ).filter_by(cluster_id=1).scalar() - self.assertEqual(count, 1) - - # 6. Test 'replaceAllHosts' action on cluster_01 - request = {'replaceAllHosts': [5, 6, 7]} - return_value = self.test_client.post(url, data=json.dumps(request)) - self.assertEqual(return_value.status_code, 200) - data = json.loads(return_value.get_data()) - self.assertEqual(len(data['cluster_hosts']), 3) - with database.session() as session: - count = session.query( - func.count(ClusterHost.id) - ).filter_by(cluster_id=1).scalar() - self.assertEqual(count, 3) - - # 7. Test 'deploy' action on cluster_01 - request = {'deploy': []} - return_value = self.test_client.post(url, data=json.dumps(request)) - self.assertEqual(return_value.status_code, 202) - - # 8. Test deploy cluster_01 the second time - return_value = self.test_client.post(url, data=json.dumps(request)) - self.assertEqual(return_value.status_code, 400) - - # 9. Try to deploy cluster_02 which no host in - url = '/clusters/2/action' - with database.session() as session: - session.query( - ClusterHost - ).filter_by(cluster_id=2).delete( - synchronize_session=False + resp = json.loads(return_value.get_data()) + expected = [ + {'name': 'test_cluster1'}, + {'name': 'test_cluster2'} + ] + for i, v in enumerate(resp): + self.assertTrue( + all(item in resp[i].items() for item in expected[i].items()) ) - host = session.query( - ClusterHost - ).filter_by(cluster_id=2).first() - return_value = self.test_client.post(url, data=json.dumps(request)) + # give a non-existed + url = '/clusters?name=xx' + return_value = json.loads( + self.test_client.get(url).get_data() + ) + self.assertEqual([], return_value) + + def test_show_cluster(self): + # get a cluster successfully + url = '/clusters/1' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 200) + resp = json.loads(return_value.get_data()) + self.assertEqual(resp['name'], 'test_cluster1') + + # get a non-exist cluster + url = 'clusters/999' + return_value = self.get(url) self.assertEqual(return_value.status_code, 404) - # 10. Try to add a new host to cluster_01 and deploy it - with database.session() as session: - cluster = session.query(Cluster).filter_by(id=1).first() - cluster.mutable = True + def test_add_cluster(self): + # add a cluster successfully + url = '/clusters' + adapter_name, adapter_id, os_id, flavor_id = ( + self._get_adapter_info() + ) + data = {} + data['name'] = 'test_add_cluster' + data['adapter_id'] = adapter_id + data['os_id'] = os_id + data['flavor_id'] = flavor_id + return_value = self.post(url, data) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['name'], 'test_add_cluster') - hosts = session.query(ClusterHost).filter_by(cluster_id=1).all() - for host in hosts: - host.mutable = True - url = '/clusters/1/action' - # add another machine as a new host into cluster_01 - request = json.dumps({"addHosts": [8]}) - return_value = self.test_client.post(url, data=request) - host_id = json.loads(return_value.get_data())["cluster_hosts"][0]["id"] + # add a duplicated cluster + return_value = self.post(url, data) + self.assertEqual(return_value.status_code, 409) - deploy_request = json.dumps({"deploy": [host_id]}) - return_value = self.test_client.post(url, data=deploy_request) - self.assertEqual(202, return_value.status_code) + # add a cluster with a non-existed adapter-id + data = {} + data['name'] = 'cluster_invalid' + data['adapter_id'] = 9 + data['os_id'] = 1 + data['flavor_id'] = 1 + return_value = self.post(url, data) + self.assertEqual(return_value.status_code, 400) - cluster_state = session.query(ClusterState).filter_by(id=1).first() - self.assertIsNone(cluster_state) + def test_update_cluster(self): + # update a cluster sucessfully + url = 'clusters/1' + data = { + 'name': 'cluster_update' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 200) + self.assertEqual( + json.loads(return_value.get_data())['name'], + 'cluster_update' + ) - expected_deploy_result = { - "cluster": { - "cluster_id": 1, - "url": "/clusters/1/progress" - }, - "hosts": [ - {"host_id": 5, - "url": "/cluster_hosts/5/progress"} + # update a non-existed cluster + url = 'clusters/99' + data = { + 'name': 'cluster_update_non_existed' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 404) + + # update a cluster with wrong keyword + url = 'clusters/1' + data = { + 'xxx': 'cluster_update_wrong_keyword' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 400) + + def test_delete_cluster_not_editable(self): + # delete a cluster which state is installing + self.user_object = ( + user_api.get_user_object( + setting.COMPASS_ADMIN_EMAIL + ) + ) + cluster_api.update_cluster_state( + self.user_object, + 1, + state='INSTALLING' + ) + url = '/clusters/1' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 403) + + def test_delete_cluster(self): + # delete a cluster sucessfully + url = '/clusters/1' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 200) + + def test_list_cluster_hosts(self): + # list cluster_hosts successfully + url = '/clusters/1/hosts' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + count = len(resp) + self.assertEqual(count, 1) + self.assertEqual(return_value.status_code, 200) + + # give a non-existed cluster_id + url = '/clusters/99/hosts' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(resp, []) + + def test_show_cluster_host(self): + # show a cluster_host successfully + url = '/clusters/1/hosts/1' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(resp['hostname'], 'test_cluster_host') + + # give a non-existed host_id + url = '/clusters/1/hosts/99' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 404) + + def test_add_cluster_host(self): + # add a cluster_host successfully + url = '/clusters/2/hosts' + data = { + 'name': 'add_cluster_host', + 'reinstall_os': True, + 'machine_id': 1 + } + return_value = self.post(url, data) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['hostname'], 'add_cluster_host') + + # add a duplicate cluster_host + data = { + 'name': 'duplicate_cluster_host', + 'reinstall_os': True, + 'machine_id': 1 + } + return_value = self.post(url, data) + self.assertEqual(return_value.status_code, 409) + + def test_update_cluster_host(self): + # update cluster_host successfully + url = '/clusters/1/hosts/1' + data = { + 'roles': [ + 'allinone-compute' ] } - data = json.loads(return_value.get_data())["deployment"] - self.assertDictEqual(expected_deploy_result, data) + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 200) + + def test_delete_cluster_host(self): + # delete a cluster_host successfully + url = '/clusters/1/hosts/1' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 200) + + # give a non-existed cluster_id + url = '/clusters/99/hosts/1' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 404) -class ClusterHostAPITest(ApiTestCase): - """test cluster host api.""" +class TestSubnetAPI(ApiTestCase): + """Test subnet api.""" def setUp(self): - super(ClusterHostAPITest, self).setUp() - self.test_config_data = { - "networking": { - "interfaces": { - "management": { - "ip": "192.168.1.1"}, - "tenant": { - "ip": "10.12.1.1"} - }, - "global": {}}, - "roles": []} - # Insert a host into database for testing - with database.session() as session: - clusters_list = [Cluster(name='cluster_01'), - Cluster(name='cluster_02')] - session.add_all(clusters_list) - - switch = Switch(ip='192.168.1.1') - session.add(switch) - - machines_list = [Machine(mac='00:27:88:0c:01', switch_id=1), - Machine(mac='00:27:88:0c:02', switch_id=1), - Machine(mac='00:27:88:0c:03', switch_id=1), - Machine(mac='00:27:88:0c:04', switch_id=1)] - session.add_all(machines_list) - - host = ClusterHost(hostname='host_01', cluster_id=1, machine_id=1) - host.config_data = json.dumps(self.test_config_data) - session.add(host) - - hosts_list = [ - ClusterHost(hostname='host_02', cluster_id=1, machine_id=2), - ClusterHost(hostname='host_03', cluster_id=1, machine_id=3), - ClusterHost(hostname='host_04', cluster_id=2, machine_id=4) - ] - session.add_all(hosts_list) + super(TestSubnetAPI, self).setUp() + url = '/subnets' + data = { + 'subnet': '10.145.89.0/24', + 'name': 'test_subnet' + } + self.post(url, data) def tearDown(self): - super(ClusterHostAPITest, self).tearDown() + super(TestSubnetAPI, self).tearDown() - def test_clusterhost_get_config(self): - """test get cluster host config.""" - # 1. Try to get a config of the cluster host which does not exist - url = '/clusterhosts/1000/config' - return_value = self.test_client.get(url) - self.assertEqual(404, return_value.status_code) + def test_list_subnets(self): + # list subnets successfully + url = '/subnets' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + count = len(resp) + self.assertEqual(count, 1) + self.assertEqual(return_value.status_code, 200) - # 2. Get a config of a cluster host sucessfully - test_config_data = copy.deepcopy(self.test_config_data) - test_config_data['hostname'] = 'host_01' + # list subnets with non-exists name + url = '/subnets?name=test' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(resp, []) - url = '/clusterhosts/1/config' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - config = json.loads(return_value.get_data())['config'] + def test_show_subnet(self): + # get a subnet successfully + url = '/subnets/1' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['name'], 'test_subnet') - expected_config = copy.deepcopy(test_config_data) - expected_config['hostid'] = 1 - expected_config['hostname'] = 'host_01' - expected_config['clusterid'] = 1 - expected_config['clustername'] = 'cluster_01' - expected_config['fullname'] = 'host_01.1' - expected_config['networking']['interfaces']['management'][ - 'mac'] = "00:27:88:0c:01" - expected_config['switch_port'] = '' - expected_config['switch_ip'] = '192.168.1.1' - expected_config['vlan'] = 0 - self.assertDictEqual(config, expected_config) + # give a non-existed id + url = '/subnets/99' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 404) - def test_clusterhost_put_config(self): - """test put clusterhost config.""" - config = copy.deepcopy(self.test_config_data) - config['roles'] = ['base'] - config['networking']['interfaces']['management']['ip'] = '192.168.1.2' - config['networking']['interfaces']['tenant']['ip'] = '10.12.1.2' + def test_add_subnet(self): + # subnet already added in setUp() + # duplicate subnet + url = '/subnets' + data = { + 'subnet': '10.145.89.0/24', + 'name': 'test_subnet' + } + return_value = self.post(url, data) + self.assertEqual(return_value.status_code, 409) - # 1. Try to put a config of the cluster host which does not exist - url = '/clusterhosts/1000/config' - return_value = self.test_client.put(url, data=json.dumps(config)) - self.assertEqual(404, return_value.status_code) + # add subnet with invalid subnet + data = { + 'subnet': 'xxx', + 'name': 'subnet_invalid' + } + return_value = self.post(url, data) + self.assertEqual(return_value.status_code, 400) - # 2. Config with incorrect ip format - url = '/clusterhosts/2/config' - incorrect_conf = copy.deepcopy(config) - incorrect_conf['hostname'] = 'host_02' - incorrect_conf[ - 'networking']['interfaces']['management']['ip'] = 'xxx' - return_vlaue = self.test_client.put( - url, data=json.dumps(incorrect_conf)) - self.assertEqual(400, return_vlaue.status_code) + def test_update_subnet(self): + # update subnet successfully + url = '/subnets/1' + data = { + 'subnet': '192.168.100.0/24', + 'name': 'update_subnet' + } + return_value = self.put(url, data) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertTrue(item in data.items() for item in resp.items()) - # 3. Config put sucessfully - config['hostname'] = 'host_02' - return_value = self.test_client.put(url, data=json.dumps(config)) - self.assertEqual(200, return_value.status_code) - with database.session() as session: - host = session.query(ClusterHost).filter_by(id=2).first() - config_db = json.loads(host.config_data) - config_db['hostname'] = host.hostname - self.maxDiff = None - self.assertDictEqual(config, config_db) + # give a non-existed id + url = '/subnets/99' + data = { + 'subnet': '192.168.100.0/24', + 'name': 'subnet_invalid' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 404) - def test_clusterhost_delete_subkey(self): - """test delete cluster host subkey.""" - # 1. Try to delete an unqalified subkey of config - url = '/clusterhosts/1/config/gateway' - return_value = self.test_client.delete(url) - self.assertEqual(400, return_value.status_code) + # update with wrong filter + url = '/subnets/1' + data = { + 'xxx': 'wrong_filter' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 400) - # 2. Try to delete a subkey sucessfully - url = 'clusterhosts/1/config/roles' - return_value = self.test_client.delete(url) - self.assertEqual(200, return_value.status_code) - expected_config = copy.deepcopy(self.test_config_data) - with database.session() as session: - config_db = session.query( - ClusterHost.config_data).filter_by(id=1).first()[0] - self.assertDictEqual(expected_config, json.loads(config_db)) + def test_delete_subnet(self): + # delete a subnet successfully + url = '/subnets/1' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 200) - # 3. Try to delete a subkey of a config belonged to an immtable host - with database.session() as session: - session.query( - ClusterHost).filter_by(id=1).update({'mutable': False}) + # delete a non-existed subnet + url = '/subnets/99' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 404) - url = 'clusterhosts/1/config/roles' - return_value = self.test_client.delete(url) - self.assertEqual(400, return_value.status_code) - def test_clusterhost_get_by_id(self): - """test get cluster host by id.""" - # 1. Get host sucessfully - url = '/clusterhosts/1' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - hostname = json.loads(return_value.get_data())[ - 'cluster_host']['hostname'] - self.assertEqual('host_01', hostname) +class TestSwitchAPI(ApiTestCase): + """Test switch api.""" - # 2. Get a non-existing host - url = '/clusterhosts/1000' - return_value = self.test_client.get(url) - self.assertEqual(404, return_value.status_code) + def setUp(self): + super(TestSwitchAPI, self).setUp() - def test_list_clusterhosts(self): - """test list cluster hosts.""" - # 1. list the cluster host whose hostname is host_01 - url = '/clusterhosts?hostname=host_02' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - hostname = json.loads(return_value.get_data())[ - 'cluster_hosts'][0]['hostname'] - self.assertEqual('host_02', hostname) + def tearDown(self): + super(TestSwitchAPI, self).tearDown() - # 2. list cluster hosts whose cluster name is cluster_01 - url = '/clusterhosts?clustername=cluster_01' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - hosts_num = len(json.loads(return_value.get_data())['cluster_hosts']) - self.assertEqual(3, hosts_num) + def test_list_switches(self): + url = '/switches' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + count = len(resp) + self.assertEqual(count, 2) + self.assertEqual(return_value.status_code, 200) - # 3. list the host whose name is host_03 and cluser name is cluster_01 - url = '/clusterhosts?hostname=host_03&clustername=cluster_01' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - hostname = json.loads(return_value.get_data())[ - 'cluster_hosts'][0]['hostname'] - self.assertEqual('host_03', hostname) + # give a ip_int + url = '/switches?ip_int=172.29.8.40' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 200) - # 4. list all hosts - url = '/clusterhosts' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - hosts_num = len(json.loads(return_value.get_data())['cluster_hosts']) - self.assertEqual(4, hosts_num) + # give a invalid ip_int + url = '/switches?ip_int=xxx' + return_value = json.loads(self.get(url).get_data()) + self.assertEqual([], return_value) - # 5. Cannot found any hosts in clust name: cluster_1000 - url = '/clusterhosts?clustername=cluster_1000' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - hosts_result = json.loads(return_value.get_data())['cluster_hosts'] - self.assertListEqual([], hosts_result) + def test_show_switch(self): + # show switch successfully + url = '/switches/2' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['ip'], self.SWITCH_IP_ADDRESS) - def test_host_installing_progress(self): - """test get host installing progress.""" - # 1. Get progress of a non-existing host - url = '/clusterhosts/1000/progress' - return_value = self.test_client.get(url) - self.assertEqual(404, return_value.status_code) + # give a non-existed id + url = '/switches/99' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 404) - # 2. Get progress of a host without state - url = '/clusterhosts/1/progress' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) + def test_add_switch(self): + # add a new switch successfully + url = '/switches' + data = { + 'ip': '172.29.8.10', + 'credentials': { + "version": "2c", + "community": "public" + }, + 'vendor': 'huawei', + 'state': 'under_monitoring' + } + return_value = self.post(url, data) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['ip'], '172.29.8.10') - # 3. Get progress which is in UNINITIALIZED state - with database.session() as session: - host = session.query(ClusterHost).filter_by(id=1).first() - host.state = HostState() + # add a duplicated switch + data = { + 'ip': self.SWITCH_IP_ADDRESS, + 'credentials': { + "version": "2c", + "community": "public" + }, + 'vendor': 'huawei', + 'state': 'under_monitoring' + } + return_value = self.post(url, data) + self.assertEqual(return_value.status_code, 409) - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - data = json.loads(return_value.get_data()) - self.assertEqual('UNINITIALIZED', data['progress']['state']) - self.assertEqual(0, data['progress']['percentage']) + # add a invalid swtich + data = { + 'ip': 'xxx', + 'vendor': 'huawei' + } + return_value = self.post(url, data) + self.assertEqual(return_value.status_code, 400) - # 4. Get progress which is in INSTALLING state - with database.session() as session: - host = session.query(ClusterHost).filter_by(id=1).first() - host.state.state = 'INSTALLING' - session.query( - HostState - ).filter_by( - id=1 - ).update({ - 'progress': 0.3, - 'message': 'Configuring...', - 'severity': 'INFO' - }) + def test_update_switch(self): + # update a swithc successfully + url = '/switches/1' + data = { + 'vendor': 'update_vendor' + } + return_value = self.put(url, data) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['vendor'], 'update_vendor') - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - data = json.loads(return_value.get_data()) - self.assertEqual('INSTALLING', data['progress']['state']) - self.assertEqual(0.3, data['progress']['percentage']) + # update a non-existed switch + url = '/switches/99' + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 404) + + # update with wrong filter + url = '/switches/2' + data = { + 'xxx': 'invlid' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 400) + + def test_delete_switch(self): + # delete a switch successfully + url = '/switches/1' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 200) + + # delete a non-existed switch + url = '/switches/99' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 404) class TestAdapterAPI(ApiTestCase): - """test adapter api.""" + """Test adapter api.""" def setUp(self): super(TestAdapterAPI, self).setUp() - with database.session() as session: - adapters = [Adapter(name='Centos_openstack', os='Centos', - target_system='openstack'), - Adapter(name='Ubuntu_openstack', os='Ubuntu', - target_system='openstack')] - session.add_all(adapters) - - roles = [Role(name='Control', target_system='openstack'), - Role(name='Compute', target_system='openstack'), - Role(name='Master', target_system='hadoop')] - session.add_all(roles) + self.adapter_name = None + self.adapter_id = None + url = '/adapters' + adapters = json.loads(self.get(url).get_data()) + for adapter in adapters: + if adapter['flavors']: + self.adapter_name = adapter['name'] + self.adapter_id = adapter['id'] def tearDown(self): super(TestAdapterAPI, self).tearDown() - def test_list_adapter_by_id(self): - """test list adapter by id.""" - url = '/adapters/1' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - data = json.loads(return_value.get_data()) - self.assertEqual('Centos_openstack', data['adapter']['name']) - - def test_list_adapter_roles(self): - """test list adapter roles.""" - url = '/adapters/1/roles' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - data = json.loads(return_value.get_data()) - self.assertEqual(2, len(data['roles'])) - def test_list_adapters(self): - """test list adapters.""" - url = '/adapters?name=Centos_openstack' - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(200, return_value.status_code) - execpted_result = {"name": "Centos_openstack", - "os": "Centos", - "target_system": "openstack", - "id": 1, - "link": { - "href": "/adapters/1", - "rel": "self"} - } - self.assertDictEqual(execpted_result, data['adapters'][0]) - + # list adapters successfully url = '/adapters' - return_value = self.test_client.get(url) - data = json.loads(return_value.get_data()) - self.assertEqual(200, return_value.status_code) - self.assertEqual(2, len(data['adapters'])) + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + count = len(resp) + self.assertEqual(count, 3) + self.assertEqual(return_value.status_code, 200) + + # give a non-existed filter + url = '/adapters?name=xx' + return_value = json.loads(self.get(url).get_data()) + self.assertEqual([], return_value) + + def test_show_adapter(self): + # show an adapter successfully + url = '/adapters/%s' % self.adapter_id + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['name'], self.adapter_name) + + # give a non-existed id + url = '/adapters/99' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 404) -class TestAPIWorkFlow(ApiTestCase): - """test api workflow.""" - - CLUSTER_SECURITY_CONFIG = { - "security": { - "server_credentials": { - "username": "admin", - "password": "admin"}, - "service_credentials": { - "username": "admin", - "password": "admin"}, - "console_credentials": { - "username": "admin", - "password": "admin"} - } - } - - CLUSTER_NETWORKING_CONFIG = { - "networking": { - "interfaces": { - "management": { - "ip_start": "10.120.8.100", - "ip_end": "10.120.8.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth0", - "promisc": 1 - }, - "tenant": { - "ip_start": "192.168.10.100", - "ip_end": "192.168.10.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth1", - "promisc": 0 - }, - "public": { - "ip_start": "12.145.68.100", - "ip_end": "12.145.68.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth2", - "promisc": 0 - }, - "storage": { - "ip_start": "172.29.8.100", - "ip_end": "172.29.8.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth3", - "promisc": 0 - } - }, - "global": { - "nameservers": "8.8.8.8", - "search_path": "ods.com", - "gateway": "192.168.1.1", - "proxy": "http://127.0.0.1:3128", - "ntp_server": "127.0.0.1", - "ha_vip": "" - } - } - } - - CLUSTER_PARTITION_CONFIG = { - "partition": "/home 20%;" - } - - CLUSTERHOST_CONFIG = { - "hostname": "", - "networking": { - "interfaces": { - "management": { - "ip": "" - }, - "tenant": { - "ip": "" - } - } - }, - "roles": ["base"] - } +class TestHostAPI(ApiTestCase): + """Test host api.""" def setUp(self): - super(TestAPIWorkFlow, self).setUp() - - #Prepare test data - with database.session() as session: - # Populate switch info to DB - switch = Switch( - ip="192.168.2.1", - credential_data=json.dumps( - {"version": "2c", "community": "public"}), - vendor_info="huawei", - state="under_monitoring") - session.add(switch) - - # Populate machines info to DB - machines = [ - Machine(mac='00:27:88:0c:a6', port='1', vlan='1', switch_id=1), - Machine(mac='00:27:88:0c:a7', port='2', vlan='1', switch_id=1), - Machine(mac='00:27:88:0c:a8', port='3', vlan='1', switch_id=1), - ] - - session.add_all(machines) - - adapter = Adapter(name='Centos_openstack', os='Centos', - target_system='openstack') - session.add(adapter) - - def tearDown(self): - super(TestAPIWorkFlow, self).tearDown() - - def test_work_flow(self): - """test api workflow.""" - # Polling switch: mock post switch - # url = '/switches' - # data = {"ip": "192.168.2.1", - # "credential": {"version": "2c", "community": "public"}} - # self.test_client.post(url, json.dumps(data)) - - # Get machines once polling switch done. If switch state changed to - # "under_monitoring" state. - url = '/switches/1' - switch_state = "initialized" - while switch_state != "under_monitoring": - return_value = self.test_client.get(url) - switch_state = json.loads(return_value.get_data())[ - 'switch']['state'] - - url = '/machines?switchId=1' - return_value = self.test_client.get(url) - self.assertEqual(200, return_value.status_code) - machines = json.loads(return_value.get_data())['machines'] - - # Create a Cluster and get cluster id from response - # In this example, adapter_id will be 1 by default. - url = '/clusters' - data = { - "cluster": { - "name": "cluster_01", - "adapter_id": 1 + super(TestHostAPI, self).setUp() + # add a machine to get the machine_id + url = 'switches/1/machines' + datas = [ + { + 'mac': '28:6e:d4:46:c4:25', + 'port': '1', + 'location': 'test_location1' + }, + { + 'mac': '00:0c:29:bf:eb:1d', + 'port': '1', + 'location': 'test_location2' } - } - return_value = self.test_client.post(url, data=json.dumps(data)) - self.assertEqual(200, return_value.status_code) - cluster_id = json.loads(return_value.get_data())['cluster']['id'] - - # Add machines as hosts of the cluster - url = '/clusters/%s/action' % cluster_id - machines_id = [] - for machine in machines: - machines_id.append(machine["id"]) - - data = {"addHosts": machines_id} - return_value = self.test_client.post(url, data=json.dumps(data)) - self.assertEqual(200, return_value.status_code) - hosts_info = json.loads(return_value.get_data())["cluster_hosts"] - - # Update cluster security configuration - url = '/clusters/%s/security' % cluster_id - security_config = json.dumps(self.CLUSTER_SECURITY_CONFIG) - return_value = self.test_client.put(url, data=security_config) - self.assertEqual(200, return_value.status_code) - - # Update cluster networking configuration - url = '/clusters/%s/networking' % cluster_id - networking_config = json.dumps(self.CLUSTER_NETWORKING_CONFIG) - return_value = self.test_client.put(url, data=networking_config) - self.assertEqual(200, return_value.status_code) - - # Update cluster partition configuration - url = '/clusters/%s/partition' % cluster_id - partition_config = json.dumps(self.CLUSTER_PARTITION_CONFIG) - return_value = self.test_client.put(url, data=partition_config) - self.assertEqual(200, return_value.status_code) - - # Put cluster host config individually - hosts_configs = [ - copy.deepcopy(self.CLUSTERHOST_CONFIG), - copy.deepcopy(self.CLUSTERHOST_CONFIG), - copy.deepcopy(self.CLUSTERHOST_CONFIG) ] - names = ["host_01", "host_02", "host_03"] - mgmt_ips = ["10.120.8.100", "10.120.8.101", "10.120.8.102"] - tenant_ips = ["12.120.8.100", "12.120.8.101", "12.120.8.102"] - for config, name, mgmt_ip, tenant_ip in zip(hosts_configs, names, - mgmt_ips, tenant_ips): - config["hostname"] = name - config["networking"]["interfaces"]["management"]["ip"] = mgmt_ip - config["networking"]["interfaces"]["tenant"]["ip"] = tenant_ip + machine_id = {} + for i, data in enumerate(datas): + return_value = self.post(url, data) + resp = json.loads(return_value.get_data()) + machine_id[i] = resp['machine_id'] - for config, host_info in zip(hosts_configs, hosts_info): - host_id = host_info["id"] - url = 'clusterhosts/%d/config' % host_id - return_value = self.test_client.put(url, data=json.dumps(config)) - self.assertEqual(200, return_value.status_code) - - # deploy the Cluster - url = "/clusters/%d/action" % cluster_id - data = json.dumps({"deploy": []}) - return_value = self.test_client.post(url, data=data) - self.assertEqual(202, return_value.status_code) - - # Verify the final cluster configuration - expected_cluster_config = {} - expected_cluster_config.update(self.CLUSTER_SECURITY_CONFIG) - expected_cluster_config.update(self.CLUSTER_NETWORKING_CONFIG) - expected_cluster_config.update(self.CLUSTER_PARTITION_CONFIG) - expected_cluster_config["clusterid"] = cluster_id - expected_cluster_config["clustername"] = "cluster_01" - - with database.session() as session: - cluster = session.query(Cluster).filter_by(id=cluster_id).first() - config = cluster.config - self.assertDictEqual(config, expected_cluster_config) - - # Verify each host configuration - for host_info, excepted in zip(hosts_info, hosts_configs): - machine_id = host_info["machine_id"] - machine = session.query( - Machine).filter_by(id=machine_id).first() - mac = machine.mac - excepted["clusterid"] = cluster_id - excepted["clustername"] = "cluster_01" - excepted["hostid"] = host_info["id"] - excepted["fullname"] = "%s.%s" % ( - excepted["hostname"], excepted["clusterid"]) - excepted["networking"]["interfaces"]["management"]["mac"] = mac - excepted['switch_port'] = machine.port - excepted['vlan'] = machine.vlan - switch = machine.switch - excepted['switch_ip'] = switch.ip - host = session.query( - ClusterHost).filter_by(id=host_info["id"]).first() - self.maxDiff = None - self.assertDictEqual(host.config, excepted) - - -class TestExport(ApiTestCase): - """test export functions.""" - - CLUSTER_SECURITY_CONFIG = { - "security": { - "server_credentials": { - "username": "root", - "password": "root"}, - "service_credentials": { - "username": "service", - "password": "admin"}, - "console_credentials": { - "username": "console", - "password": "admin"} - } - } - CLUSTER_NETWORKING_CONFIG = { - "networking": { - "interfaces": { - "management": { - "ip_start": "10.120.8.100", - "ip_end": "10.120.8.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth0", - "promisc": 1 - }, - "tenant": { - "ip_start": "192.168.10.100", - "ip_end": "192.168.10.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth1", - "promisc": 0 - }, - "public": { - "ip_start": "12.145.68.100", - "ip_end": "12.145.68.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth2", - "promisc": 0 - }, - "storage": { - "ip_start": "172.29.8.100", - "ip_end": "172.29.8.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth3", - "promisc": 0 - } + # add a host + url = '/clusters/1/hosts' + datas = [ + { + 'machine_id': machine_id[0], + 'name': 'test_host1', + 'reinstall_os': True }, - "global": { - "nameservers": "8.8.8.8", - "search_path": "ods.com", - "gateway": "192.168.1.1", - "proxy": "http://127.0.0.1:3128", - "ntp_server": "127.0.0.1", - "ha_vip": "" + { + 'machine_id': machine_id[1], + 'name': 'test_hosts2', + 'reinstall_os': True } + ] + for data in datas: + self.post(url, data) + + # add host_network + url = '/subnets' + data = { + 'subnet': '10.172.20.0/24', + 'name': 'test_subnet' } - } - CLUSTER_PARTITION_CONFIG = { - "partition": "/home 20%;/tmp 10%;/var 30%;" - } - - CLUSTERHOST_CONFIG = { - "networking": { - "interfaces": { - "management": { - "ip": "" - }, - "tenant": { - "ip": "" - } + self.post(url, data) + url = '/hosts/1/networks' + datas = [ + { + 'interface': 'eth0', + 'ip': '10.172.20.91', + 'subnet_id': 1, + 'is_mgmt': False, + 'is_promiscuous': False + }, + { + 'interface': 'eth1', + 'ip': '10.172.20.110', + 'subnet_id': 1, + 'is_mgmt': False, + 'is_promiscuous': False } - }, - "roles": ["base"] - } - CSV_EXCEPTED_OUTPUT_DIR = '/'.join(( - os.path.dirname(os.path.realpath(__file__)), 'expected_csv')) - - def setUp(self): - super(TestExport, self).setUp() - #Prepare test data - with database.session() as session: - # populate switch_config - switch_config = [SwitchConfig(ip='192.168.1.10', filter_port='1'), - SwitchConfig(ip='192.168.1.11', filter_port='2')] - session.add_all(switch_config) - - # populate role table - role = Role(name='compute', target_system='openstack') - session.add(role) - - # Populate one adapter to DB - adapter = Adapter(name='Centos_openstack', os='Centos', - target_system='openstack') - session.add(adapter) - - #Populate switches info to DB - switches = [ - Switch( - ip="192.168.2.1", - credential_data=json.dumps( - {"version": "2c", "community": "public"}), - vendor_info="huawei", - state="under_monitoring"), - Switch( - ip="192.168.2.2", - credential_data=json.dumps( - {"version": "2c", "community": "public"}), - vendor_info="huawei", - state="under_monitoring"), - Switch( - ip="192.168.2.3", - credential_data=json.dumps( - {"version": "2c", "community": "public"}), - vendor_info="huawei", - state="under_monitoring"), - Switch( - ip="192.168.2.4", - credential_data=json.dumps( - {"version": "2c", "community": "public"}), - vendor_info="huawei", - state="under_monitoring") - ] - session.add_all(switches) - - # Populate machines info to DB - machines = [ - Machine(mac='00:0c:27:88:0c:a1', port='1', vlan='1', - switch_id=1), - Machine(mac='00:0c:27:88:0c:a2', port='2', vlan='1', - switch_id=1), - Machine(mac='00:0c:27:88:0c:a3', port='3', vlan='1', - switch_id=1), - Machine(mac='00:0c:27:88:0c:b1', port='1', vlan='1', - switch_id=2), - Machine(mac='00:0c:27:88:0c:b2', port='2', vlan='1', - switch_id=2), - Machine(mac='00:0c:27:88:0c:b3', port='3', vlan='1', - switch_id=2), - Machine(mac='00:0c:27:88:0c:c1', port='1', vlan='1', - switch_id=3), - Machine(mac='00:0c:27:88:0c:c2', port='2', vlan='1', - switch_id=3), - Machine(mac='00:0c:27:88:0c:c3', port='3', vlan='1', - switch_id=3), - Machine(mac='00:0c:27:88:0c:d1', port='1', vlan='1', - switch_id=4), - Machine(mac='00:0c:27:88:0c:d2', port='2', vlan='1', - switch_id=4), - ] - - session.add_all(machines) - - # Popluate clusters into DB - """ - a. cluster #1: a new machine will be added to it. - b. cluster #2: a failed machine needs to be re-deployed. - c. cluster #3: a new cluster with 3 hosts will be deployed. - """ - clusters_networking_config = [ - {"networking": - {"interfaces": {"management": {"ip_start": "10.120.1.100", - "ip_end": "10.120.1.200"}, - "tenant": {"ip_start": "192.168.1.100", - "ip_end": "192.168.1.200"}, - "public": {"ip_start": "12.145.1.100", - "ip_end": "12.145.1.200"}, - "storage": {"ip_start": "172.29.1.100", - "ip_end": "172.29.1.200"}}}}, - {"networking": - {"interfaces": {"management": {"ip_start": "10.120.2.100", - "ip_end": "10.120.2.200"}, - "tenant": {"ip_start": "192.168.2.100", - "ip_end": "192.168.2.200"}, - "public": {"ip_start": "12.145.2.100", - "ip_end": "12.145.2.200"}, - "storage": {"ip_start": "172.29.2.100", - "ip_end": "172.29.2.200"}}}} - ] - cluster_names = ['cluster_01', 'cluster_02'] - for name, networking_config in zip(cluster_names, - clusters_networking_config): - nconfig = copy.deepcopy(self.CLUSTER_NETWORKING_CONFIG) - util.merge_dict(nconfig, networking_config) - c = Cluster(name=name, adapter_id=1, - security_config=json.dumps( - self.CLUSTER_SECURITY_CONFIG['security']), - networking_config=json.dumps( - nconfig['networking']), - partition_config=json.dumps( - self.CLUSTER_PARTITION_CONFIG['partition'])) - session.add(c) - - # Populate hosts to each cluster - host_mips = ['10.120.1.100', '10.120.1.101', '10.120.1.102', - '10.120.2.100', '10.120.2.101', '10.120.2.102'] - host_tips = ['192.168.1.100', '192.168.1.101', '192.168.1.102', - '192.168.2.100', '192.168.2.101', '192.168.2.102'] - hosts_config = [] - for mip, tip in zip(host_mips, host_tips): - config = copy.deepcopy(self.CLUSTERHOST_CONFIG) - config['networking']['interfaces']['management']['ip'] = mip - config['networking']['interfaces']['tenant']['ip'] = tip - hosts_config.append(json.dumps(config)) - - hosts = [ - ClusterHost(hostname='host_01', machine_id=1, cluster_id=1, - config_data=hosts_config[0]), - ClusterHost(hostname='host_02', machine_id=2, cluster_id=1, - config_data=hosts_config[1]), - ClusterHost(hostname='host_03', machine_id=3, cluster_id=1, - config_data=hosts_config[2]), - ClusterHost(hostname='host_01', machine_id=4, cluster_id=2, - config_data=hosts_config[3]), - ClusterHost(hostname='host_02', machine_id=5, cluster_id=2, - config_data=hosts_config[4]), - ClusterHost(hostname='host_03', machine_id=6, cluster_id=2, - config_data=hosts_config[5]) - ] - session.add_all(hosts) - - # Populate cluster state and host state - cluster_states = [ - ClusterState(id=1, state="READY", progress=1.0, - message="Successfully!"), - ClusterState(id=2, state="ERROR", progress=0.5, - message="Failed!") - ] - session.add_all(cluster_states) - - host_states = [ - HostState(id=1, state="READY", progress=1.0, - message="Successfully!"), - HostState(id=2, state="READY", progress=1.0, - message="Successfully!"), - HostState(id=3, state="READY", progress=1.0, - message="Successfully!"), - HostState(id=4, state="ERROR", progress=0.5, - message="Failed!"), - HostState(id=5, state="READY", progress=1.0, - message="Successfully!"), - HostState(id=6, state="ERROR", progress=1.0, - message="Failed!") - ] - session.add_all(host_states) - session.flush() + ] + for data in datas: + self.post(url, data) def tearDown(self): - super(TestExport, self).tearDown() + super(TestHostAPI, self).tearDown() - def test_export(self): - """test export.""" - talbes = ['switch', 'machine', 'cluster', 'cluster_host', 'adapter', - 'role', 'switch_config'] - for tname in talbes: - url = '/'.join(('/export', tname)) - return_value = self.test_client.get(url) - resp_data = return_value.get_data() - resp_data = resp_data.split('\n') - resp_data = csv.DictReader(resp_data) - expected_file = '/'.join((self.CSV_EXCEPTED_OUTPUT_DIR, - (tname + '.csv'))) - expected_data = csv.DictReader(open(expected_file)) - for export_row, expected_row in zip(resp_data, expected_data): - self.assertDictEqual(export_row, expected_row) - self.maxDiff = None + def test_list_hosts(self): + # list hosts successfully + url = '/hosts' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + count = len(resp) + self.assertEqual(count, 2) + self.assertEqual(return_value.status_code, 200) + + # give a non-existed name + url = '/hosts?name=xx' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual([], resp) + + def test_show_host(self): + #show a host successfully + url = '/hosts/1' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['name'], 'test_host1') + + # give a non-existed id + url = '/hosts/99' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 404) + + def test_list_machines_or_hosts(self): + url = '/machines-hosts' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 200) + + def test_show_machine_or_host(self): + url = '/machines-hosts/1' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 200) + + def test_update_host(self): + # update a host successfully + url = '/hosts/1' + data = { + 'name': 'update_host' + } + return_value = self.put(url, data) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['name'], 'update_host') + + # give a wrong filter + data = { + 'location': 'update_location' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 400) + self.assertIn('are not supported', return_value.get_data()) + + # give a non-existed id + url = '/hosts/99' + data = { + 'name': 'host' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 404) + + def test_delete_host(self): + # delete a host successfully + url = '/hosts/2' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 200) + + # give a non-existed id + url = '/hosts/99' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 404) + + def test_list_host_networks(self): + url = '/hosts/1/networks' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + count = len(resp) + self.assertEqual(count, 2) + self.assertEqual(return_value.status_code, 200) + + def test_show_host_network(self): + url = '/hosts/1/networks/1' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['ip'], '10.172.20.91') -class TestUser(ApiTestCase): +class TestSwitchMachines(ApiTestCase): + def setUp(self): - super(TestUser, self).setUp() + super(TestSwitchMachines, self).setUp() + url = '/switches/2/machines' + datas = [ + { + 'mac': '28:6e:d4:46:c4:25', + 'port': '1', + 'vlans': [88] + }, + { + 'mac': '00:0c:29:bf:eb:1d', + 'port': '1', + 'vlans': [1] + } + ] + for data in datas: + self.post(url, data) def tearDown(self): - super(TestUser, self).tearDown() + super(TestSwitchMachines, self).tearDown() - def test_get_user_by_id(self): - # Success to get a user - url = "/users/1" - return_value = self.test_client.get(url) + def test_list_switch_machines(self): + # list switch machines successfully + url = '/switches/2/machines' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + count = len(resp) + self.assertEqual(count, 2) + self.assertEqual(return_value.status_code, 200) - data = json.loads(return_value.get_data()) - self.assertEqual(1, data['user']['id']) + # give a non-existed switch_id + url = '/switches/99/machines' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(resp, []) - # Try to get a nonexisting user - url = "/users/1000" - return_value = self.test_client.get(url) - self.assertEqual(404, return_value.status_code) + def test_add_switch_machine(self): + # add a switch machine successfully + url = '/switches/2/machines' + data = { + 'mac': '00:0c:29:5b:ee:eb', + 'port': '1', + 'vlans': [10] + } + return_value = self.post(url, data) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['mac'], '00:0c:29:5b:ee:eb') + + # add a dulicated switch machine + url = '/switches/2/machines' + data = { + 'mac': '28:6e:d4:46:c4:25', + 'port': '1', + 'vlans': [88] + } + return_value = self.post(url, data) + self.assertEqual(return_value.status_code, 409) + + # add a invalid switch machine + url = '/switches/2/machines' + data = { + 'mac': 'xxx' + } + return_value = self.post(url, data) + self.assertEqual(return_value.status_code, 400) + + def test_show_switch_machine(self): + # show a switch_machine successfully + url = '/switches/2/machines/1' + return_value = self.get(url) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['mac'], '28:6e:d4:46:c4:25') + + # give a non-existed switch_id + url = '/switches/99/machines/1' + return_value = self.get(url) + self.assertEqual(return_value.status_code, 404) + + def test_update_switch_machine(self): + # update a switch_machine successfully + url = '/switches/2/machines/1' + data = { + 'port': '100' + } + return_value = self.put(url, data) + resp = json.loads(return_value.get_data()) + self.assertEqual(return_value.status_code, 200) + self.assertEqual(resp['port'], '100') + + # give a non-existed switch_id + url = '/switches/99/machines/1' + data = { + 'port': '99' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 404) + + # give a wrong filter + url = '/switches/2/machines/1' + data = { + 'mac': '00:0c:29:a5:f2:05' + } + return_value = self.put(url, data) + self.assertEqual(return_value.status_code, 400) + self.assertIn('are not supported', return_value.get_data()) + + def test_delete_switch_machine(self): + # delete a switch_machine successfully + url = '/switches/2/machines/1' + return_value = self.delete(url) + self.assertEqual(return_value.status_code, 200) if __name__ == '__main__': diff --git a/compass/tests/api/test_auth.py b/compass/tests/api/test_auth.py deleted file mode 100644 index 0998371b..00000000 --- a/compass/tests/api/test_auth.py +++ /dev/null @@ -1,126 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import os -import simplejson as json -import time -import unittest2 - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - -from compass.api import app -from compass.api import auth -from compass.api import login_manager - -from compass.db import database -from compass.db.model import User - -from compass.utils import flags -from compass.utils import logsetting - - -login_manager.init_app(app) - - -class AuthTestCase(unittest2.TestCase): - DATABASE_URL = 'sqlite://' - USER_CREDENTIALS = {"email": "admin@abc.com", "password": "admin"} - - def setUp(self): - super(AuthTestCase, self).setUp() - logsetting.init() - database.init(self.DATABASE_URL) - database.create_db() - - self.test_client = app.test_client() - - def tearDown(self): - database.drop_db() - super(AuthTestCase, self).tearDown() - - def test_login_logout(self): - url = '/login' - # a. successfully login - data = self.USER_CREDENTIALS - return_value = self.test_client.post(url, data=data, - follow_redirects=True) - - self.assertIn("Logged in successfully!", return_value.get_data()) - - url = '/logout' - return_value = self.test_client.get(url, follow_redirects=True) - self.assertIn("You have logged out!", return_value.get_data()) - - def test_login_failed(self): - - url = '/login' - # a. Failed to login with incorrect user info - data_list = [{"email": "xxx", "password": "admin"}, - {"email": "admin@abc.com", "password": "xxx"}] - for data in data_list: - return_value = self.test_client.post(url, data=data, - follow_redirects=True) - self.assertIn("Wrong username or password!", - return_value.get_data()) - - # b. Inactive user - User.query.filter_by(email="admin@abc.com").update({"active": False}) - - data = {"email": "admin@abc.com", "password": "admin"} - return_value = self.test_client.post(url, data=data, - follow_redirects=True) - self.assertIn("This username is disabled!", return_value.get_data()) - - def test_get_token(self): - url = '/token' - - # a. Failed to get token by posting incorrect user email - req_data = json.dumps({"email": "xxx", "password": "admin"}) - return_value = self.test_client.post(url, data=req_data) - self.assertEqual(401, return_value.status_code) - - # b. Success to get token - req_data = json.dumps(self.USER_CREDENTIALS) - return_value = self.test_client.post(url, data=req_data) - resp = json.loads(return_value.get_data()) - self.assertIsNotNone(resp['token']) - - def test_header_loader(self): - # Get Token - url = '/token' - req_data = json.dumps(self.USER_CREDENTIALS) - return_value = self.test_client.post(url, data=req_data) - token = json.loads(return_value.get_data())['token'] - user_id = auth.get_user_info_from_token(token, 50) - self.assertEqual(1, user_id) - - # Test on token expiration. - # Sleep 5 seconds but only allow token lifetime of 2 seconds - time.sleep(5) - user_id = auth.get_user_info_from_token(token, 2) - self.assertIsNone(user_id) - - # Get None user from the incorrect token - result = auth.get_user_info_from_token("xxx", 50) - self.assertIsNone(result) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/apicommand/run_server.py b/compass/tests/apicommand/run_server.py deleted file mode 100755 index ba4e23ea..00000000 --- a/compass/tests/apicommand/run_server.py +++ /dev/null @@ -1,297 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -"""run fake flask server for test.""" -import copy -import os -import simplejson as json -import sys - - -curr_dir = os.path.dirname(os.path.realpath(__file__)) -compass_dir = os.path.dirname(os.path.dirname(os.path.dirname(curr_dir))) -sys.path.append(compass_dir) - - -from compass.api import app -from compass.db import database -from compass.db.model import Adapter -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.db.model import ClusterState -from compass.db.model import HostState -from compass.db.model import Machine -from compass.db.model import Role -from compass.db.model import Switch -from compass.db.model import SwitchConfig -from compass.utils import util - - -def setupDb(): - """setup database.""" - SECURITY_CONFIG = { - "security": { - "server_credentials": { - "username": "root", - "password": "root"}, - "service_credentials": { - "username": "service", - "password": "admin"}, - "console_credentials": { - "username": "console", - "password": "admin"} - } - } - - NET_CONFIG = { - "networking": { - "interfaces": { - "management": { - "ip_start": "10.120.8.100", - "ip_end": "10.120.8.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth0", - "promisc": 1 - }, - "tenant": { - "ip_start": "192.168.10.100", - "ip_end": "192.168.10.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth1", - "promisc": 0 - }, - "public": { - "ip_start": "12.145.68.100", - "ip_end": "12.145.68.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth2", - "promisc": 0 - }, - "storage": { - "ip_start": "172.29.8.100", - "ip_end": "172.29.8.200", - "netmask": "255.255.255.0", - "gateway": "", - "nic": "eth3", - "promisc": 0 - } - }, - "global": { - "nameservers": "8.8.8.8", - "search_path": "ods.com", - "gateway": "192.168.1.1", - "proxy": "http://127.0.0.1:3128", - "ntp_server": "127.0.0.1" - } - } - } - - PAR_CONFIG = { - "partition": "/home 20%;/tmp 10%;/var 30%;" - } - - HOST_CONFIG = { - "networking": { - "interfaces": { - "management": { - "ip": "%s" - }, - "tenant": { - "ip": "%s" - } - } - }, - "roles": ["base"] - } - - print "Setting up DB ..." - with database.session() as session: - # populate switch_config - switch_config = SwitchConfig(ip='192.168.1.10', filter_port='1') - session.add(switch_config) - - # populate role table - role = Role(name='compute', target_system='openstack') - session.add(role) - - # Populate one adapter to DB - adapter = Adapter(name='Centos_openstack', os='Centos', - target_system='openstack') - session.add(adapter) - - #Populate switches info to DB - switches = [Switch(ip="192.168.2.1", - credential={"version": "2c", - "community": "public"}, - vendor="huawei", - state="under_monitoring"), - Switch(ip="192.168.2.2", - credential={"version": "2c", - "community": "public"}, - vendor="huawei", - state="under_monitoring"), - Switch(ip="192.168.2.3", - credential={"version": "2c", - "community": "public"}, - vendor="huawei", - state="under_monitoring"), - Switch(ip="192.168.2.4", - credential={"version": "2c", - "community": "public"}, - vendor="huawei", - state="under_monitoring")] - session.add_all(switches) - - # Populate machines info to DB - machines = [ - Machine(mac='00:0c:27:88:0c:a1', port='1', vlan='1', - switch_id=1), - Machine(mac='00:0c:27:88:0c:a2', port='2', vlan='1', - switch_id=1), - Machine(mac='00:0c:27:88:0c:a3', port='3', vlan='1', - switch_id=1), - Machine(mac='00:0c:27:88:0c:b1', port='1', vlan='1', - switch_id=2), - Machine(mac='00:0c:27:88:0c:b2', port='2', vlan='1', - switch_id=2), - Machine(mac='00:0c:27:88:0c:b3', port='3', vlan='1', - switch_id=2), - Machine(mac='00:0c:27:88:0c:c1', port='1', vlan='1', - switch_id=3), - Machine(mac='00:0c:27:88:0c:c2', port='2', vlan='1', - switch_id=3), - Machine(mac='00:0c:27:88:0c:c3', port='3', vlan='1', - switch_id=3), - Machine(mac='00:0c:27:88:0c:d1', port='1', vlan='1', - switch_id=4), - Machine(mac='00:0c:27:88:0c:d2', port='2', vlan='1', - switch_id=4), - ] - - session.add_all(machines) - # Popluate clusters into DB - """ - a. cluster #1: a new machine will be added to it. - b. cluster #2: a failed machine needs to be re-deployed. - c. cluster #3: a new cluster with 3 hosts will be deployed. - """ - clusters_networking_config = [ - {"networking": - {"interfaces": {"management": {"ip_start": "10.120.1.100", - "ip_end": "10.120.1.200"}, - "tenant": {"ip_start": "192.168.1.100", - "ip_end": "192.168.1.200"}, - "public": {"ip_start": "12.145.1.100", - "ip_end": "12.145.1.200"}, - "storage": {"ip_start": "172.29.1.100", - "ip_end": "172.29.1.200"}}}}, - {"networking": - {"interfaces": {"management": {"ip_start": "10.120.2.100", - "ip_end": "10.120.2.200"}, - "tenant": {"ip_start": "192.168.2.100", - "ip_end": "192.168.2.200"}, - "public": {"ip_start": "12.145.2.100", - "ip_end": "12.145.2.200"}, - "storage": {"ip_start": "172.29.2.100", - "ip_end": "172.29.2.200"}}}} - ] - cluster_names = ['cluster_01', 'cluster_02'] - for name, networking_config in zip(cluster_names, - clusters_networking_config): - nconfig = copy.deepcopy(NET_CONFIG) - util.merge_dict(nconfig, networking_config) - c = Cluster( - name=name, adapter_id=1, - security_config=json.dumps(SECURITY_CONFIG['security']), - networking_config=json.dumps(nconfig['networking']), - partition_config=json.dumps(PAR_CONFIG['partition'])) - session.add(c) - # Populate hosts to each cluster - host_mips = ['10.120.1.100', '10.120.1.101', '10.120.1.102', - '10.120.2.100', '10.120.2.101', '10.120.2.102'] - host_tips = ['192.168.1.100', '192.168.1.101', '192.168.1.102', - '192.168.2.100', '192.168.2.101', '192.168.2.102'] - - hosts_config = [] - for mip, tip in zip(host_mips, host_tips): - config = copy.deepcopy(HOST_CONFIG) - config['networking']['interfaces']['management']['ip'] = mip - config['networking']['interfaces']['tenant']['ip'] = tip - hosts_config.append(json.dumps(config)) - - hosts = [ - ClusterHost(hostname='host_01', machine_id=1, cluster_id=1, - config_data=hosts_config[0]), - ClusterHost(hostname='host_02', machine_id=2, cluster_id=1, - config_data=hosts_config[1]), - ClusterHost(hostname='host_03', machine_id=3, cluster_id=1, - config_data=hosts_config[2]), - ClusterHost(hostname='host_01', machine_id=4, cluster_id=2, - config_data=hosts_config[3]), - ClusterHost(hostname='host_02', machine_id=5, cluster_id=2, - config_data=hosts_config[4]), - ClusterHost(hostname='host_03', machine_id=6, cluster_id=2, - config_data=hosts_config[5]) - ] - session.add_all(hosts) - - # Populate cluster state and host state - cluster_states = [ - ClusterState(id=1, state="READY", progress=1.0, - message="Successfully!"), - ClusterState(id=2, state="ERROR", progress=0.5, - message="Failed!") - ] - session.add_all(cluster_states) - - host_states = [ - HostState(id=1, state="READY", progress=1.0, - message="Successfully!"), - HostState(id=2, state="READY", progress=1.0, - message="Successfully!"), - HostState(id=3, state="READY", progress=1.0, - message="Successfully!"), - HostState(id=4, state="ERROR", progress=0.5, - message="Failed!"), - HostState(id=5, state="READY", progress=1.0, - message="Successfully!"), - HostState(id=6, state="ERROR", progress=1.0, - message="Failed!") - ] - session.add_all(host_states) - - -if __name__ == '__main__': - db_url, port = sys.argv[1:] - print db_url - try: - database.init(db_url) - database.create_db() - except Exception as error: - print "=====> Failed to create database" - print error - - try: - setupDb() - except Exception as error: - print "setupDb=====>Failed to setup database" - print error - - print "Starting server ....." - print "port is ", port - app.run(use_reloader=False, host="0.0.0.0", port=port) diff --git a/compass/tests/apicommand/test_csvdeploy.py b/compass/tests/apicommand/test_csvdeploy.py deleted file mode 100755 index fa603211..00000000 --- a/compass/tests/apicommand/test_csvdeploy.py +++ /dev/null @@ -1,171 +0,0 @@ -#!/usr/bin/env python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test deploy from csv file.""" -import mock -import os -import shutil -import signal -import simplejson as json -import socket -import subprocess -import sys -import tempfile -import time -import unittest2 - - -curr_dir = os.path.dirname(os.path.realpath(__file__)) -api_cmd_path = '/'.join(( - os.path.dirname(os.path.dirname(os.path.dirname(curr_dir))), 'bin')) -sys.path.append(api_cmd_path) - - -import csvdeploy - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.db import database -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.utils import flags -from compass.utils import logsetting - -from compass.apiclient.restful import Client - - -class ApiTestCase(unittest2.TestCase): - def setUp(self): - super(ApiTestCase, self).setUp() - # Create database file - try: - self.db_dir = tempfile.mkdtemp() - self.db_file = '/'.join((self.db_dir, 'app.db')) - except Exception: - sys.exit(2) - - database_url = '/'.join(('sqlite://', self.db_file)) - # Get a free random port for app server - - try: - tmp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - tmp_socket.bind(('', 0)) - self.port = tmp_socket.getsockname()[-1] - tmp_socket.close() - time.sleep(10) - except socket.error: - sys.exit(1) - - cmd = '%s run_server.py %s %d' % ( - sys.executable, database_url, self.port) - self.proc = subprocess.Popen(cmd, shell=True, - stderr=subprocess.PIPE, - preexec_fn=os.setsid, - cwd=curr_dir) - time.sleep(5) - - # Initial database - try: - database.init(database_url) - except Exception as error: - print "Exception when initializing database: %s" % error - - def tearDown(self): - super(ApiTestCase, self).tearDown() - - database.ENGINE.dispose() - database.init('sqlite://') - os.killpg(self.proc.pid, signal.SIGTERM) - try: - if os.path.exists(self.db_dir): - shutil.rmtree(self.db_dir) - except Exception: - sys.exit(1) - - -class TestAPICommand(ApiTestCase): - CSV_IMPORT_DIR = '/'.join((curr_dir, 'test_files')) - - def setUp(self): - super(TestAPICommand, self).setUp() - self.deploy_return_val = { - 'status': 'accepted', - 'deployment': {'cluster': {'cluster_id': 1, - 'url': '/clusters/1/progress'}, - 'hosts': [{'host_id': 1, - 'url': '/cluster_hosts/1/progress'}]}} - - def tearDown(self): - # Remove the resulting output file from the test case. - try: - os.remove(os.path.join(self.CSV_IMPORT_DIR, 'progress.csv')) - except OSError: - pass - super(TestAPICommand, self).tearDown() - - def test_start(self): - """test start deploy from csv.""" - Client.deploy_hosts = mock.Mock( - return_value=(202, self.deploy_return_val)) - csvdeploy.write_progress_to_file = mock.Mock() - url = "http://127.0.0.1:%d" % self.port - csvdeploy.start(self.CSV_IMPORT_DIR, url) - clusters = csvdeploy.get_csv('cluster.csv', - csv_dir=self.CSV_IMPORT_DIR) - with database.session() as session: - for csv_cluster in clusters: - cluster_id = csv_cluster['id'] - cluster = session.query( - Cluster - ).filter_by(id=cluster_id).first() - self.assertIsNotNone(cluster) - self.assertEqual(csv_cluster['name'], cluster.name) - self.assertDictEqual(csv_cluster['security_config'], - json.loads(cluster.security_config)) - self.maxDiff = None - self.assertDictEqual(csv_cluster['networking_config'], - json.loads(cluster.networking_config)) - self.assertEqual(csv_cluster['partition_config'], - json.loads(cluster.partition_config)) - self.assertEqual(csv_cluster['adapter_id'], cluster.adapter_id) - self.maxDiff = None - - hosts = csvdeploy.get_csv('cluster_host.csv', - csv_dir=self.CSV_IMPORT_DIR) - for csv_host in hosts: - cluster_id = csv_host['cluster_id'] - hostname = csv_host['hostname'] - host_in_db = session.query(ClusterHost)\ - .filter_by(cluster_id=cluster_id, - hostname=hostname).first() - self.assertIsNotNone(host_in_db) - self.assertEqual(csv_host['hostname'], host_in_db.hostname) - self.assertEqual(csv_host['machine_id'], host_in_db.machine_id) - self.assertDictEqual(csv_host['config_data'], - json.loads(host_in_db.config_data)) - self.maxDiff = None - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/apicommand/test_files/adapter.csv b/compass/tests/apicommand/test_files/adapter.csv deleted file mode 100644 index 5cf79dda..00000000 --- a/compass/tests/apicommand/test_files/adapter.csv +++ /dev/null @@ -1,2 +0,0 @@ -id,name,os,target_system -1,Centos_openstack,Centos,openstack diff --git a/compass/tests/apicommand/test_files/cluster.csv b/compass/tests/apicommand/test_files/cluster.csv deleted file mode 100644 index 430f5614..00000000 --- a/compass/tests/apicommand/test_files/cluster.csv +++ /dev/null @@ -1,4 +0,0 @@ -id,name,security_config.server_credentials.username,security_config.server_credentials.password,security_config.service_credentials.username,security_config.service_credentials.password,security_config.console_credentials.username,security_config.console_credentials.password,networking_config.interfaces.management.nic,networking_config.interfaces.management.netmask,networking_config.interfaces.management.promisc,networking_config.interfaces.management.ip_end,networking_config.interfaces.management.gateway,networking_config.interfaces.management.ip_start,networking_config.interfaces.storage.nic,networking_config.interfaces.storage.netmask,networking_config.interfaces.storage.promisc,networking_config.interfaces.storage.ip_end,networking_config.interfaces.storage.gateway,networking_config.interfaces.storage.ip_start,networking_config.interfaces.public.nic,networking_config.interfaces.public.netmask,networking_config.interfaces.public.promisc,networking_config.interfaces.public.ip_end,networking_config.interfaces.public.gateway,networking_config.interfaces.public.ip_start,networking_config.interfaces.tenant.nic,networking_config.interfaces.tenant.netmask,networking_config.interfaces.tenant.promisc,networking_config.interfaces.tenant.ip_end,networking_config.interfaces.tenant.gateway,networking_config.interfaces.tenant.ip_start,networking_config.global.nameservers,networking_config.global.ntp_server,networking_config.global.gateway,networking_config.global.ha_vip,networking_config.global.proxy,networking_config.global.search_path,partition_config,adapter_id,state -1,cluster_01,root,root,service,admin,console,admin,eth0,255.255.255.0,1,10.120.1.200,None,10.120.1.100,eth3,255.255.255.0,0,172.29.1.200,None,172.29.1.100,eth2,255.255.255.0,0,12.145.1.200,None,12.145.1.100,eth1,255.255.255.0,0,192.168.1.200,None,192.168.1.100,8.8.8.8,127.0.0.1,192.168.1.1,None,http://127.0.0.1:3128,ods.com,"/home 20%;/tmp 10%;/var 30%;",1,READY -2,cluster_02,root,root,service,admin,console,admin,eth0,255.255.255.0,1,10.120.2.200,None,10.120.2.100,eth3,255.255.255.0,0,172.29.2.200,None,172.29.2.100,eth2,255.255.255.0,0,12.145.2.200,None,12.145.2.100,eth1,255.255.255.0,0,192.168.2.200,None,192.168.2.100,8.8.8.8,127.0.0.1,192.168.1.1,None,http://127.0.0.1:3128,ods.com,"/home 20%;/tmp 10%;/var 30%;",1,ERROR -3,cluster_03,root,admin,service,admin,console,admin,eth0,255.255.255.0,1,10.120.3.200,None,10.120.3.100,eth3,255.255.255.0,0,172.29.3.200,None,172.29.3.100,eth2,255.255.255.0,0,12.145.3.200,None,12.145.3.100,eth1,255.255.255.0,0,192.168.3.200,None,192.168.3.100,8.8.8.8,120.0.0.1,192.168.1.1,None,http://localhost:3128,ods.com,"/home 40%;/tmp 20%;/var 30%;",1,None diff --git a/compass/tests/apicommand/test_files/cluster_host.csv b/compass/tests/apicommand/test_files/cluster_host.csv deleted file mode 100644 index 874cd8d0..00000000 --- a/compass/tests/apicommand/test_files/cluster_host.csv +++ /dev/null @@ -1,12 +0,0 @@ -id,cluster_id,hostname,machine_id,config_data.networking.interfaces.management.ip,config_data.networking.interfaces.tenant.ip,config_data.roles,state,deploy_action -1,1,host_01,1,10.120.1.100,192.168.1.100,['base'],READY,0 -2,1,host_02,2,10.120.1.101,192.168.1.101,['base'],READY,0 -3,1,host_03,3,10.120.1.102,192.168.1.102,['base'],READY,0 -4,2,host_01,4,10.120.2.100,192.168.2.100,['base'],ERROR,1 -5,2,host_02,5,10.120.2.101,192.168.2.101,['base'],READY,0 -6,2,host_03,6,10.120.2.102,192.168.2.102,['base'],ERROR,1 -7,3,host_01,7,10.120.3.100,192.168.3.100,['base'],None,1 -8,3,host_02,8,10.120.3.101,192.168.3.102,['base'],None,1 -9,3,host_03,9,10.120.3.102,192.168.3.102,['base'],None,1 -10,1,host_04,10,10.120.1.103,192.168.1.103,['base'],None,1 -11,2,host_04,11,10.120.2.104,192.168.2.104,['base'],None,1 diff --git a/compass/tests/apicommand/test_files/machine.csv b/compass/tests/apicommand/test_files/machine.csv deleted file mode 100644 index b02d95fe..00000000 --- a/compass/tests/apicommand/test_files/machine.csv +++ /dev/null @@ -1,12 +0,0 @@ -id,mac,port,vlan,switch_id -1,00:0c:27:88:0c:a1,1,1,1 -2,00:0c:27:88:0c:a2,2,1,1 -3,00:0c:27:88:0c:a3,3,1,1 -4,00:0c:27:88:0c:b1,1,1,2 -5,00:0c:27:88:0c:b2,2,1,2 -6,00:0c:27:88:0c:b3,3,1,2 -7,00:0c:27:88:0c:c1,1,1,3 -8,00:0c:27:88:0c:c2,2,1,3 -9,00:0c:27:88:0c:c3,3,1,3 -10,00:0c:27:88:0c:d1,1,1,4 -11,00:0c:27:88:0c:d2,2,1,4 diff --git a/compass/tests/apicommand/test_files/role.csv b/compass/tests/apicommand/test_files/role.csv deleted file mode 100644 index cc611bea..00000000 --- a/compass/tests/apicommand/test_files/role.csv +++ /dev/null @@ -1,2 +0,0 @@ -id,name,target_system,description -1,compute,openstack,None diff --git a/compass/tests/apicommand/test_files/switch.csv b/compass/tests/apicommand/test_files/switch.csv deleted file mode 100644 index 40af787c..00000000 --- a/compass/tests/apicommand/test_files/switch.csv +++ /dev/null @@ -1,5 +0,0 @@ -id,ip,credential_data.version,credential_data.community -1,192.168.2.1,2c,public -2,192.168.2.2,2c,public -3,192.168.2.3,2c,public -4,192.168.2.4,2c,public diff --git a/compass/tests/apicommand/test_files/switch_config.csv b/compass/tests/apicommand/test_files/switch_config.csv deleted file mode 100644 index 405bcf0e..00000000 --- a/compass/tests/apicommand/test_files/switch_config.csv +++ /dev/null @@ -1,3 +0,0 @@ -id,ip,filter_port -1,192.168.1.10,1 -2,192.168.1.11,2 diff --git a/compass/tests/config_management/installers/test_os_installer.py b/compass/tests/config_management/installers/test_os_installer.py deleted file mode 100755 index e02eb28f..00000000 --- a/compass/tests/config_management/installers/test_os_installer.py +++ /dev/null @@ -1,88 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test os installer module. - - .. moduleauthor:: Xiaodong Wang -""" -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.config_management.installers import os_installer -from compass.utils import flags -from compass.utils import logsetting - - -class DummyInstaller(os_installer.Installer): - """dummy installer.""" - - NAME = 'dummy' - - def __init__(self): - super(DummyInstaller, self).__init__() - - -class Dummy2Installer(os_installer.Installer): - """another dummy installer.""" - - NAME = 'dummy' - - def __init__(self): - super(Dummy2Installer, self).__init__() - - -class TestInstallerFunctions(unittest2.TestCase): - """test installer functions.""" - - def setUp(self): - super(TestInstallerFunctions, self).setUp() - logsetting.init() - self.installers_backup_ = os_installer.INSTALLERS - os_installer.INSTALLERS = {} - - def tearDown(self): - os_installer.INSTALLERS = self.installers_backup_ - super(TestInstallerFunctions, self).tearDown() - - def test_found_installer(self): - """test found installer.""" - os_installer.register(DummyInstaller) - intaller = os_installer.get_installer_by_name(DummyInstaller.NAME) - self.assertIsInstance(intaller, DummyInstaller) - - def test_notfound_unregistered_installer(self): - """test not found unregistered installer.""" - self.assertRaises(KeyError, os_installer.get_installer_by_name, - DummyInstaller.NAME) - - def test_multi_registered_installer(self): - """test register multi installers with the same name.""" - os_installer.register(DummyInstaller) - self.assertRaises(KeyError, os_installer.register, Dummy2Installer) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/config_management/installers/test_package_installer.py b/compass/tests/config_management/installers/test_package_installer.py deleted file mode 100755 index eeab3c88..00000000 --- a/compass/tests/config_management/installers/test_package_installer.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test package_installer module - - .. moduleauthor:: Xiaodong Wang -""" -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.config_management.installers import package_installer -from compass.utils import flags -from compass.utils import logsetting - - -class DummyInstaller(package_installer.Installer): - """dummy installer.""" - - NAME = 'dummy' - - def __init__(self): - pass - - -class Dummy2Installer(package_installer.Installer): - """another dummy installer.""" - NAME = 'dummy' - - def __init__(self): - pass - - -class TestInstallerFunctions(unittest2.TestCase): - """test installer functions.""" - - def setUp(self): - super(TestInstallerFunctions, self).setUp() - logsetting.init() - self.installers_backup_ = package_installer.INSTALLERS - package_installer.INSTALLERS = {} - - def tearDown(self): - package_installer.INSTALLERS = self.installers_backup_ - super(TestInstallerFunctions, self).tearDown() - - def test_found_installer(self): - """test found installer""" - package_installer.register(DummyInstaller) - intaller = package_installer.get_installer_by_name( - DummyInstaller.NAME) - self.assertIsInstance(intaller, DummyInstaller) - - def test_notfound_unregistered_installer(self): - """test not found unregistered installer.""" - self.assertRaises(KeyError, package_installer.get_installer_by_name, - DummyInstaller.NAME) - - def test_multi_registered_installer(self): - """test register multi installers with the same name.""" - package_installer.register(DummyInstaller) - self.assertRaises(KeyError, package_installer.register, - Dummy2Installer) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/config_management/providers/__init__.py b/compass/tests/config_management/providers/__init__.py deleted file mode 100644 index 4ee55a4c..00000000 --- a/compass/tests/config_management/providers/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. diff --git a/compass/tests/config_management/providers/test_config_provider.py b/compass/tests/config_management/providers/test_config_provider.py deleted file mode 100755 index de5f3c52..00000000 --- a/compass/tests/config_management/providers/test_config_provider.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -"""test config provider module. - - .. moduleauthor:: Xiaodong Wang -""" -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.config_management.providers import config_provider -from compass.utils import flags -from compass.utils import logsetting - - -class DummyProvider(config_provider.ConfigProvider): - """Dummy provider.""" - - NAME = 'dummy' - - def __init__(self): - super(DummyProvider, self).__init__() - - -class Dummy2Provider(config_provider.ConfigProvider): - """another dummy provider.""" - - NAME = 'dummy' - - def __init__(self): - super(Dummy2Provider, self).__init__() - - -class TestProviderRegisterFunctions(unittest2.TestCase): - """test provider register.""" - - def setUp(self): - super(TestProviderRegisterFunctions, self).setUp() - logsetting.init() - self.config_provider_backup_ = config_provider.PROVIDERS - config_provider.PROVIDERS = {} - - def tearDown(self): - config_provider.PROVIDERS = self.config_provider_backup_ - super(TestProviderRegisterFunctions, self).tearDown() - - def test_found_provider(self): - """test found provider.""" - config_provider.register_provider(DummyProvider) - provider = config_provider.get_provider_by_name( - DummyProvider.NAME) - self.assertIsInstance(provider, DummyProvider) - - def test_notfound_unregistered_provider(self): - """test notfound unregistered provider.""" - self.assertRaises(KeyError, config_provider.get_provider_by_name, - DummyProvider.NAME) - - def test_multi_registered_provider(self): - """tst register multi provider with the same name.""" - config_provider.register_provider(DummyProvider) - self.assertRaises(KeyError, config_provider.register_provider, - Dummy2Provider) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/config_management/utils/1 b/compass/tests/config_management/utils/1 deleted file mode 100644 index 3808fb33..00000000 --- a/compass/tests/config_management/utils/1 +++ /dev/null @@ -1,300 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Module to set the hosts configs from cluster config. - - .. moduleauthor:: Xiaodong Wang -""" -import copy -import logging - -from compass.config_management.utils import config_reference -from compass.utils import util - - -class ConfigMapping(object): - """Class to merge cluster config ref to host config ref by path list.""" - - def __init__(self, path_list, from_upper_keys={}, - from_lower_keys={}, to_key='.', - override=False, override_conditions={}, - value=None): - """Constructor - - :param path_list: list of path to merge from cluster ref to host refs - :type path_list: list of str - :param from_upper_keys: kwargs from cluster ref for value callback. - :type from_upper_keys: dict of kwargs name to path in cluster ref - :param from_lower_keys: kwargs from host refs for value callback. - :type from_lower_keys: dict of kwargs name to path in host refs. - :param to_key: the path in host refs to be merged to. - :type to_key: str - :param override: if the path in host ref can be overridden. - :type override: callback or bool - :param override_conditions: kwargs from host ref for override callback - :type override_conditions: dict of kwargs name to path in host ref - :param value: the value to be set in host refs. - :type value: callback or any type - """ - self.path_list_ = path_list - self.from_upper_keys_ = from_upper_keys - self.from_lower_keys_ = from_lower_keys - self.to_key_ = to_key - self.override_ = override - self.override_conditions_ = override_conditions - self.value_ = value - self.is_valid() - - def __repr__(self): - return ( - '%s[path_list=%s,from_upper_keys=%s,' - 'from_lower_keys=%s,to_key=%s,override=%s,' - 'override_conditions=%s,value=%s]' - ) % ( - self.__class__.__name__, - self.path_list_, self.from_upper_keys_, - self.from_lower_keys_, self.to_key_, - self.override_, self.override_conditions_, - self.value_) - - def _is_valid_path_list(self): - """Check path_list are valid.""" - for i, path in enumerate(self.path_list_): - if not isinstance(path, str): - raise TypeError( - 'path_list[%d] type is %s while ' - 'expected type is str: %s' % ( - i, type(path), path)) - - def _is_valid_from_upper_keys(self): - """Check from_upper_keys are valid.""" - for mapping_key, from_upper_key in self.from_upper_keys_.items(): - if not isinstance(from_upper_key, str): - raise TypeError( - 'from_upper_keys[%s] type is %s' - 'while expected type is str: %s' % ( - mapping_key, type(from_upper_key), from_upper_key)) - - if '*' in from_upper_key: - raise KeyError( - 'from_upper_keys[%s] %s contains *' % ( - mapping_key, from_upper_key)) - - def _is_valid_from_lower_keys(self): - """Check from_lower_keys are valid.""" - for mapping_key, from_lower_key in self.from_lower_keys_.items(): - if not isinstance(from_lower_key, str): - raise TypeError( - 'from_lower_keys[%s] type' - 'is %s while expected type is str: %s' % ( - mapping_key, type(from_lower_key), from_lower_key)) - - if '*' in from_lower_key: - raise KeyError( - 'from_lower_keys[%s] %s contains *' % ( - mapping_key, from_lower_key)) - - def _is_valid_from_keys(self): - """Check from keys are valid.""" - self._is_valid_from_upper_keys() - self._is_valid_from_lower_keys() - upper_keys = set(self.from_upper_keys_.keys()) - lower_keys = set(self.from_lower_keys_.keys()) - intersection = upper_keys.intersection(lower_keys) - if intersection: - raise KeyError( - 'there is intersection between from_upper_keys %s' - ' and from_lower_keys %s: %s' % ( - upper_keys, lower_keys, intersection)) - - def _is_valid_to_key(self): - """Check to_key is valid.""" - if '*' in self.to_key_: - raise KeyError('to_key %s contains *' % self.to_key_) - - def _is_valid_override_conditions(self): - """Check override conditions are valid.""" - override_items = self.override_conditions_.items() - for mapping_key, override_condition in override_items: - if not util.is_instance(override_condition, [str, unicode]): - raise TypeError( - 'override_conditions[%s] type is %s ' - 'while expected type is [str, unicode]: %s' % ( - mapping_key, type(override_condition), - override_condition)) - - if '*' in override_condition: - raise KeyError( - 'override_conditions[%s] %s contains *' % ( - mapping_key, override_condition)) - - def is_valid(self): - """Check ConfigMapping instance is valid.""" - self._is_valid_path_list() - self._is_valid_from_keys() - self._is_valid_to_key() - self._is_valid_override_conditions() - - def _get_upper_sub_refs(self, upper_ref): - """get sub_refs from upper_ref.""" - upper_refs = [] - for path in self.path_list_: - upper_refs.extend(upper_ref.ref_items(path)) - - return upper_refs - - def _get_mapping_from_upper_keys(self, ref_key, sub_ref): - """Get upper config mapping from from_upper_keys.""" - sub_configs = {} - for mapping_key, from_upper_key in self.from_upper_keys_.items(): - if from_upper_key in sub_ref: - sub_configs[mapping_key] = sub_ref[from_upper_key] - else: - logging.info('%s ignore from_upper_key %s in %s', - self, from_upper_key, ref_key) - return sub_configs - - def _get_mapping_from_lower_keys(self, ref_key, lower_sub_refs): - """Get lower config mapping from from_lower_keys.""" - sub_configs = {} - for mapping_key, from_lower_key in self.from_lower_keys_.items(): - sub_configs[mapping_key] = {} - - for lower_key, lower_sub_ref in lower_sub_refs.items(): - for mapping_key, from_lower_key in self.from_lower_keys_.items(): - if from_lower_key in lower_sub_ref: - sub_configs[mapping_key][lower_key] = ( - lower_sub_ref[from_lower_key]) - else: - logging.error( - '%s ignore from_lower_key %s in %s lower_key %s', - self, from_lower_key, ref_key, lower_key) - - return sub_configs - - def _get_values(self, ref_key, sub_ref, lower_sub_refs, sub_configs): - """Get values to set to lower configs.""" - if self.value_ is None: - lower_values = {} - for lower_key in lower_sub_refs.keys(): - lower_values[lower_key] = copy.deepcopy(sub_ref.config) - - return lower_values - - if not callable(self.value_): - lower_values = {} - for lower_key in lower_sub_refs.keys(): - lower_values[lower_key] = copy.deepcopy(self.value_) - - return lower_values - - return self.value_(sub_ref, ref_key, lower_sub_refs, - self.to_key_, **sub_configs) - - def _get_override(self, ref_key, sub_ref): - """Get override from ref_key, ref from ref_key.""" - if not callable(self.override_): - return bool(self.override_) - - override_condition_configs = {} - override_items = self.override_conditions_.items() - for mapping_key, override_condition in override_items: - if override_condition in sub_ref: - override_condition_configs[mapping_key] = \ - sub_ref[override_condition] - else: - logging.info('%s no override condition %s in %s', - self, override_condition, ref_key) - - return self.override_(sub_ref, ref_key, - **override_condition_configs) - - def merge(self, upper_ref, lower_refs): - """merge upper config to lower configs.""" - upper_sub_refs = self._get_upper_sub_refs(upper_ref) - - for ref_key, sub_ref in upper_sub_refs: - sub_configs = self._get_mapping_from_upper_keys(ref_key, sub_ref) - - lower_sub_refs = {} - for lower_key, lower_ref in lower_refs.items(): - lower_sub_refs[lower_key] = lower_ref.setdefault(ref_key) - - lower_sub_configs = self._get_mapping_from_lower_keys( - ref_key, lower_sub_refs) - - util.merge_dict(sub_configs, lower_sub_configs) - - values = self._get_values( - ref_key, sub_ref, lower_sub_refs, sub_configs) - - logging.debug('%s set values %s to %s', - ref_key, self.to_key_, values) - for lower_key, lower_sub_ref in lower_sub_refs.items(): - if lower_key not in values: - logging.error('no key %s in %s', lower_key, values) - continue - - value = values[lower_key] - lower_to_ref = lower_sub_ref.setdefault(self.to_key_) - override = self._get_override(self.to_key_, lower_to_ref) - lower_to_ref.update(value, override) - - -class ConfigMerger(object): - """Class to merge clsuter config to host configs.""" - - def __init__(self, mappings): - """Constructor - - :param mappings: list of :class:`ConfigMapping` instance - """ - self.mappings_ = mappings - self.is_valid() - - def __repr__(self): - return '%s[mappings=%s]' % (self.__class__.__name__, self.mappings_) - - def is_valid(self): - """Check ConfigMerger instance is valid.""" - if not isinstance(self.mappings_, list): - raise TypeError( - '%s mapping type is %s while expect type is list: %s' % ( - self.__class__.__name__, type(self.mappings_), - self.mappings_)) - - def merge(self, upper_config, lower_configs): - """Merge cluster config to host configs. - - :param upper_config: cluster configuration to merge from. - :type upper_config: dict - :param lower_configs: host configurations to merge to. - :type lower_configs: dict of host id to host config as dict - """ - upper_ref = config_reference.ConfigReference(upper_config) - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - - for mapping in self.mappings_: - logging.debug('apply merging from the rule %s', mapping) - mapping.merge(upper_ref, lower_refs) - - for lower_key, lower_config in lower_configs.items(): - lower_configs[lower_key] = config_reference.get_clean_config( - lower_config) - - logging.debug('merged upper config\n%s\nto lower configs:\n%s', - upper_config, lower_configs) diff --git a/compass/tests/config_management/utils/__init__.py b/compass/tests/config_management/utils/__init__.py deleted file mode 100644 index 4ee55a4c..00000000 --- a/compass/tests/config_management/utils/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. diff --git a/compass/tests/config_management/utils/test_config_filter.py b/compass/tests/config_management/utils/test_config_filter.py deleted file mode 100755 index 6f5bef1a..00000000 --- a/compass/tests/config_management/utils/test_config_filter.py +++ /dev/null @@ -1,168 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test config_filter module. - - .. moduleauthor:: Xiaodong Wang -""" -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.config_management.utils import config_filter -from compass.utils import flags -from compass.utils import logsetting - - -class TestConfigFilter(unittest2.TestCase): - """test config filter class.""" - - def setUp(self): - super(TestConfigFilter, self).setUp() - logsetting.init() - self.config_ = { - '1': '1', - '2': { - '22': '22', - '33': { - '333': '333', - '44': '444' - } - }, - '3': {'33': '44'} - } - - def tearDown(self): - super(TestConfigFilter, self).tearDown() - - def test_init(self): - config_filter.ConfigFilter( - allows={ - 'abc': config_filter.AllowRule(), - 'def': config_filter.AllowRule() - }, - denies={ - 'def': config_filter.DenyRule(), - 'ghi': config_filter.DenyRule() - }) - config_filter.ConfigFilter( - allows={ - u'abc': config_filter.AllowRule(), - u'def': config_filter.AllowRule() - }, - denies={ - u'def': config_filter.DenyRule(), - u'ghi': config_filter.DenyRule() - }) - - def test_init_allows(self): - # allows type should be a dict of string to AllowRule. - self.assertRaises( - TypeError, config_filter.ConfigFilter, - allows=['abd', 'abc']) - self.assertRaises( - TypeError, config_filter.ConfigFilter, - allows='abc') - self.assertRaises( - TypeError, config_filter.ConfigFilter, - allows={'abc': 'bdc'}) - - def test_init_denies(self): - # denies type should be dict of string to DenyRule. - self.assertRaises( - TypeError, config_filter.ConfigFilter, - denies=['abd', 'abc']) - self.assertRaises( - TypeError, config_filter.ConfigFilter, - denies='abc') - self.assertRaises( - TypeError, config_filter.ConfigFilter, - denies={'abc': 'bdc'}) - - def test_allows_asterisks(self): - """test allows rules.""" - # keys in allows will be copied to dest. - # if '*' in allows, all keys will be copied to dest. - allows = { - '*': config_filter.AllowRule(), - '3': config_filter.AllowRule(), - '5': config_filter.AllowRule() - } - configfilter = config_filter.ConfigFilter(allows) - filtered_config = configfilter.filter(self.config_) - self.assertEqual(filtered_config, self.config_) - - def test_allows_path(self): - allows = { - '/1': config_filter.AllowRule(), - '2/22': config_filter.AllowRule(), - '5': config_filter.AllowRule() - } - expected_config = {'1': '1', '2': {'22': '22'}} - configfilter = config_filter.ConfigFilter(allows) - filtered_config = configfilter.filter(self.config_) - self.assertEqual(filtered_config, expected_config) - - def test_allows_asterrisks_in_path(self): - allows = { - '*/33': config_filter.AllowRule() - } - expected_config = {'2': {'33': {'333': '333', - '44': '444'}}, - '3': {'33': '44'}} - configfilter = config_filter.ConfigFilter(allows) - filtered_config = configfilter.filter(self.config_) - self.assertEqual(filtered_config, expected_config) - - def test_denies(self): - """test denies rules.""" - # keys in denies list will be removed from filtered config. - denies = { - '/1': config_filter.DenyRule(), - '2/22': config_filter.DenyRule(), - '2/33/333': config_filter.DenyRule(), - '5': config_filter.DenyRule() - } - expected_config = {'2': {'33': {'44': '444'}}, '3': {'33': '44'}} - configfilter = config_filter.ConfigFilter(denies=denies) - filtered_config = configfilter.filter(self.config_) - self.assertEqual(filtered_config, expected_config) - - def test_denies_asterisks(self): - denies = {'*': config_filter.DenyRule()} - configfilter = config_filter.ConfigFilter(denies=denies) - filtered_config = configfilter.filter(self.config_) - self.assertIsNone(filtered_config) - - def tet_deneis_asterisks_in_path(self): - denies = {'*/33': config_filter.DenyRule()} - expected_config = {'1': '1', '2': {'22': '22'}} - configfilter = config_filter.ConfigFilter(denies=denies) - filtered_config = configfilter.filter(self.config_) - self.assertEqual(filtered_config, expected_config) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/config_management/utils/test_config_merger.py b/compass/tests/config_management/utils/test_config_merger.py deleted file mode 100755 index 8dc1554a..00000000 --- a/compass/tests/config_management/utils/test_config_merger.py +++ /dev/null @@ -1,578 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test config merger module. - - .. moduleauthor:: Xiaodong Wang -""" -import os -import unittest2 - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.config_management.utils import config_merger -from compass.config_management.utils import config_reference -from compass.utils import flags -from compass.utils import logsetting - - -class TestConfigMapping(unittest2.TestCase): - """test config mapping class.""" - - def setUp(self): - super(TestConfigMapping, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestConfigMapping, self).tearDown() - - def test_init(self): - # path_list should be list of string. - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6']) - config_merger.ConfigMapping( - path_list=[u'1/2/3', u'/4/5/6']) - self.assertRaises( - TypeError, - config_merger.ConfigMapping, path_list={'1/2/3': '4'}) - self.assertRaises( - TypeError, config_merger.ConfigMapping, path_list='1234') - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=[{'1/2/3': '4'}]) - - def test_init_from_upper_keys(self): - # from_upper_keys should be dict of string to string. - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6'], from_upper_keys={'4': '4'}) - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6'], from_upper_keys={u'4': u'4'}) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - from_upper_keys=['4']) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - from_upper_keys='4') - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - from_upper_keys={4: '4'}) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - from_upper_keys={'4': 4}) - - def test_init_from_lower_keys(self): - # from_lower_keys should be dict of string to string. - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6'], from_lower_keys={'4': '4'}) - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6'], from_lower_keys={u'4': u'4'}) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - from_lower_keys=['4']) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - from_lower_keys='4') - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - from_lower_keys={4: '4'}) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - from_lower_keys={'4': 4}) - - def test_init_overlap_upper_keys_lower_keys(self): - # there should be overlap between from_upper_keys and from_lower_keys. - self.assertRaises( - KeyError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - from_upper_keys={'1': '1', '2': '2'}, - from_lower_keys={'1': '1', '3': '3'}) - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6'], - from_upper_keys={'1': '1', '2': '2'}, - from_lower_keys={'3': '3', '4': '4'}) - - def test_init_to_key(self): - # to_key type should be string. - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6'], - to_key='hello') - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6'], - to_key=u'hello') - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - to_key=['hello']) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - to_key=123) - - def test_init_to_key_no_asterrisks(self): - # to_key should not contains '*'. - self.assertRaises( - KeyError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - to_key='abc*def') - - def test_init_override_conditions(self): - # override_conditions type should be dict of string to string. - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6'], - override_conditions={'hello': 'hi'}) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - override_conditions=['hello', 'hi']) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - override_conditions='hello') - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - override_conditions={5: 'hi'}) - self.assertRaises( - TypeError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - override_conditions={'hello': 5}) - - def test_init_override_conditions_no_asterrisks(self): - # the value in each override_conditions key value pair - # should not contains '*'. - self.assertRaises( - KeyError, config_merger.ConfigMapping, - path_list=['1/2/3', '/4/5/6'], - override_conditions={'hello': 'hi*hi'}) - - def test_merge(self): - # the key in path_list will be copied - # from upper config to lower configs. - upper_config = { - 'key': 'abc', - 'key2': 'def' - } - upper_ref = config_reference.ConfigReference(upper_config) - lower_configs = { - 1: {}, 2: {}, 3: {} - } - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - - merger = config_merger.ConfigMapping( - path_list=['key']) - merger.merge(upper_ref, lower_refs) - self.assertEqual( - lower_configs, - {1: {'key': 'abc'}, 2: {'key': 'abc'}, 3: {'key': 'abc'}}) - - def test_merge_all_matching_keys_copied(self): - # all the keys matching the pattern will be copied - # from upper config to lower configs. - upper_config = { - 'key': 'abc', - 'key2': 'def' - } - upper_ref = config_reference.ConfigReference(upper_config) - lower_configs = { - 1: {}, 2: {}, 3: {} - } - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - - merger = config_merger.ConfigMapping( - path_list=['key*']) - merger.merge(upper_ref, lower_refs) - self.assertEqual( - lower_configs, - { - 1: {'key': 'abc', 'key2': 'def'}, - 2: {'key': 'abc', 'key2': 'def'}, - 3: {'key': 'abc', 'key2': 'def'} - } - ) - - def test_merge_value_set_explictly(self): - # key in lower configs are set to expected value. - upper_config = { - 'key': 'abc', - 'key2': 'def' - } - upper_ref = config_reference.ConfigReference(upper_config) - lower_configs = { - 1: {}, 2: {}, 3: {} - } - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - - merger = config_merger.ConfigMapping( - path_list=['key'], value='def') - merger.merge(upper_ref, lower_refs) - self.assertEqual( - lower_configs, - { - 1: {'key': 'def'}, - 2: {'key': 'def'}, - 3: {'key': 'def'} - } - ) - - def test_merge_value_set_by_callback(self): - # key in lower config is called a callback to expected value . - upper_config = { - 'key': 'abc', - 'key2': 'def' - } - upper_ref = config_reference.ConfigReference(upper_config) - lower_configs = { - 1: {}, 2: {}, 3: {} - } - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - - def _merge_value(sub_ref, ref_key, lower_sub_refs, to_key): - values = {} - for lower_key, lower_sub_ref in lower_sub_refs.items(): - values[lower_key] = '%s.%s' % (sub_ref.config, lower_key) - - return values - - merger = config_merger.ConfigMapping( - path_list=['key'], value=_merge_value) - merger.merge(upper_ref, lower_refs) - self.assertEqual( - lower_configs, - { - 1: {'key': 'abc.1'}, - 2: {'key': 'abc.2'}, - 3: {'key': 'abc.3'} - } - ) - - def test_merge_to_key(self): - # set lower configs expected key from the key in upper config. - upper_config = { - 'key': 'abc', - 'key2': 'def' - } - upper_ref = config_reference.ConfigReference(upper_config) - lower_configs = { - 1: {}, 2: {}, 3: {} - } - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - - def _merge_value(sub_ref, ref_key, lower_sub_refs, to_key): - values = {} - for lower_key, lower_sub_ref in lower_sub_refs.items(): - values[lower_key] = '%s.%s' % (sub_ref.config, lower_key) - - return values - - merger = config_merger.ConfigMapping( - path_list=['key'], value=_merge_value, to_key='/key2') - merger.merge(upper_ref, lower_refs) - self.assertEqual( - lower_configs, - { - 1: {'key': None, 'key2': 'abc.1'}, - 2: {'key': None, 'key2': 'abc.2'}, - 3: {'key': None, 'key2': 'abc.3'} - } - ) - - def test_merge_from_upper_and_lower_configs(self): - # set lower configs from some keys of upper config and lower configs. - upper_config = { - 'key': 'abc', - 'key_prefix': 'A', - 'key_suffix': 'B' - } - upper_ref = config_reference.ConfigReference(upper_config) - lower_configs = { - 1: {'name': 'hello'}, 2: {'name': 'hi'}, 3: {'name': 'today'} - } - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - - def _merge_value2( - sub_ref, ref_key, lower_sub_refs, to_key, - prefix='', suffix='', names={} - ): - values = {} - for lower_key, lower_sub_ref in lower_sub_refs.items(): - values[lower_key] = '%s%s%s' % ( - prefix, names.get(lower_key, ''), suffix) - - return values - - merger = config_merger.ConfigMapping( - path_list=['key'], value=_merge_value2, - from_upper_keys={'prefix': '/key_prefix', 'suffix': '/key_suffix'}, - from_lower_keys={'names': '/name'}) - merger.merge(upper_ref, lower_refs) - self.assertEqual( - lower_configs, - { - 1: {'name': 'hello', 'key': 'AhelloB'}, - 2: {'name': 'hi', 'key': 'AhiB'}, - 3: {'name': 'today', 'key': 'AtodayB'} - } - ) - - def test_merge_multikey_to_same_tokey_nooverride(self): - # mutli key in upper config writes the same dest key, the later one - # will be ignored if override is False. - upper_config = { - 'key1': 'abc', - 'key2': 'bcd' - } - upper_ref = config_reference.ConfigReference(upper_config) - lower_configs = { - 1: {}, 2: {}, 3: {} - } - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - merger = config_merger.ConfigMapping( - path_list=['key1', 'key2'], to_key='/key', override=False) - merger.merge(upper_ref, lower_refs) - self.assertEqual( - lower_configs, - { - 1: {'key': 'abc', 'key1': None, 'key2': None}, - 2: {'key': 'abc', 'key1': None, 'key2': None}, - 3: {'key': 'abc', 'key1': None, 'key2': None} - } - ) - - def test_merge_multikey_to_sam_tokey_override(self): - # if multi key in upper config writes the same dest key, - # the later one will override the former one if override is True. - upper_config = { - 'key1': 'abc', - 'key2': 'bcd' - } - upper_ref = config_reference.ConfigReference(upper_config) - lower_configs = { - 1: {}, 2: {}, 3: {} - } - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - merger = config_merger.ConfigMapping( - path_list=['key1', 'key2'], to_key='/key', override=True) - merger.merge(upper_ref, lower_refs) - self.assertEqual( - lower_configs, - { - 1: {'key': 'bcd', 'key1': None, 'key2': None}, - 2: {'key': 'bcd', 'key1': None, 'key2': None}, - 3: {'key': 'bcd', 'key1': None, 'key2': None} - } - ) - - def test_merge_override_callback(self): - # override param can be set from callback. - upper_config = { - 'key1': 'abc', - 'key2': 'bcd', - 'key3': 'def', - 'key_prefix': 'b', - 'key_suffix': 'd' - } - upper_ref = config_reference.ConfigReference(upper_config) - lower_configs = { - 1: {}, 2: {}, 3: {} - } - lower_refs = {} - for lower_key, lower_config in lower_configs.items(): - lower_refs[lower_key] = config_reference.ConfigReference( - lower_config) - - def _generate_override( - sub_ref, ref_key, lower_ref, to_key, prefix='', suffix='' - ): - return ( - sub_ref.config.startswith(prefix) and - sub_ref.config.endswith(suffix) - ) - - merger = config_merger.ConfigMapping( - path_list=['key1', 'key2', 'key3'], to_key='/key', - override=_generate_override, - override_conditions={ - 'prefix': '/key_prefix', 'suffix': '/key_suffix' - } - ) - merger.merge(upper_ref, lower_refs) - self.assertEqual( - lower_configs, - { - 1: {'key': 'bcd', 'key1': None, 'key2': None, 'key3': None}, - 2: {'key': 'bcd', 'key1': None, 'key2': None, 'key3': None}, - 3: {'key': 'bcd', 'key1': None, 'key2': None, 'key3': None} - } - ) - - -class TestConfigMerger(unittest2.TestCase): - """test config merger class.""" - - def setUp(self): - super(TestConfigMerger, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestConfigMerger, self).tearDown() - - def test_init(self): - # mappings should be list of ConfigMapping. - config_merger.ConfigMerger(mappings=[]) - config_merger.ConfigMerger( - mappings=[ - config_merger.ConfigMapping( - path_list=['1/2/3', '/4/5/6']) - ] - ) - self.assertRaises( - TypeError, config_merger.ConfigMerger, - mapping={'hello': config_merger.ConfigMapping(path_list=[])}) - self.assertRaises( - TypeError, config_merger.ConfigMerger, - mapping=config_merger.ConfigMapping(path_list=[])) - self.assertRaises( - TypeError, config_merger.ConfigMerger, - mapping='config_merger.ConfigMapping(path_list=[])') - self.assertRaises( - TypeError, config_merger.ConfigMerger, - mapping=[{'hello': config_merger.ConfigMapping(path_list=[])}]) - self.assertRaises( - TypeError, config_merger.ConfigMerger, - mapping=['config_merger.ConfigMapping(path_list=[])']) - - def test_merge(self): - # if multi ConfigMapping updates the same key and no override is set - # for the later one, the later one will be ignored. - config = { - 'key1': 'abc', - 'key2': 'bcd' - } - lower_configs = { - 1: {}, 2: {}, 3: {} - } - merger = config_merger.ConfigMerger( - mappings=[ - config_merger.ConfigMapping( - path_list=['key1'], to_key='/mkey'), - config_merger.ConfigMapping( - path_list=['key2'], to_key='/mkey') - ] - ) - merger.merge(config, lower_configs) - self.assertEqual( - lower_configs, - {1: {'mkey': 'abc'}, 2: {'mkey': 'abc'}, 3: {'mkey': 'abc'}} - ) - - def test_merge_multi_mapping_to_same_tokey(self): - # if multi ConfigMapping updates the same key and override is set - # for the later one, the later one will override the former one. - config = { - 'key1': 'abc', - 'key2': 'bcd' - } - lower_configs = { - 1: {}, 2: {}, 3: {} - } - merger = config_merger.ConfigMerger( - mappings=[ - config_merger.ConfigMapping( - path_list=['key1'], to_key='/mkey'), - config_merger.ConfigMapping( - path_list=['key2'], to_key='/mkey', - override=True) - ] - ) - merger.merge(config, lower_configs) - self.assertEqual( - lower_configs, - {1: {'mkey': 'bcd'}, 2: {'mkey': 'bcd'}, 3: {'mkey': 'bcd'}} - ) - - def test_merge_override_callback(self): - # override param can be callback. - config = { - 'key1': 'abc', - 'key2': 'bcd' - } - lower_configs = { - 1: {}, 2: {}, 3: {} - } - - def _merge_value(sub_ref, ref_key, lower_sub_refs, to_key): - values = {} - for lower_key, lower_sub_ref in lower_sub_refs.items(): - values[lower_key] = None - - return values - - merger = config_merger.ConfigMerger( - mappings=[ - config_merger.ConfigMapping( - path_list=['key1'], - value=_merge_value, - to_key='/mkey') - ] - ) - merger.merge(config, lower_configs) - self.assertEqual( - lower_configs, - {1: None, 2: None, 3: None} - ) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/config_management/utils/test_config_merger_callbacks.py b/compass/tests/config_management/utils/test_config_merger_callbacks.py deleted file mode 100755 index 07845f67..00000000 --- a/compass/tests/config_management/utils/test_config_merger_callbacks.py +++ /dev/null @@ -1,767 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test config merger callbacks module. - - .. moduleauthor:: Xiaodong Wang -""" -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.config_management.utils import config_merger_callbacks -from compass.config_management.utils import config_reference -from compass.utils import flags -from compass.utils import logsetting - - -class TestAssignRoles(unittest2.TestCase): - """test assign roles.""" - - def setUp(self): - super(TestAssignRoles, self).setUp() - logsetting.init() - self.roles_ = ['control', 'api', 'compute'] - self.maxs_ = {'control': 1, 'api': 1, 'compute': -1} - self.default_min_ = 1 - - def tearDown(self): - super(TestAssignRoles, self).tearDown() - - def test_assign_roles_allinone_roles_empty(self): - """test assign roles all in one node.""" - lower_configs = { - 1: {'roles': []}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=self.maxs_, - default_min=self.default_min_) - self.assertEqual(assigned, {1: ['control', 'api', 'compute']}) - - def test_assign_roles_allinone_no_roles(self): - lower_configs = { - 1: {}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=self.maxs_, default_min=self.default_min_) - self.assertEqual(assigned, {1: ['control', 'api', 'compute']}) - - def test_assign_roles_allinone_roles_sorted(self): - lower_configs = { - 1: {'roles': ['api', 'control', 'compute']}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=self.maxs_, default_min=self.default_min_) - self.assertEqual(assigned, {1: ['control', 'api', 'compute']}) - - def test_assign_roles_allinone_roles_set_additional_roles(self): - lower_configs = { - 1: {'roles': ['control', 'api', 'compute', 'mysql']}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=self.maxs_, default_min=self.default_min_) - self.assertEqual(assigned, {1: ['control', 'api', 'compute', 'mysql']}) - - def test_assign_roles_allinone_roles_set_less_roles(self): - lower_configs = { - 1: {'roles': ['control', 'api']}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=self.maxs_, default_min=self.default_min_) - self.assertEqual(assigned, {1: ['control', 'api']}) - - def test_assign_roles_allinone_exclusives(self): - exclusives = ['control'] - lower_configs = { - 1: {'roles': []}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - ValueError, config_merger_callbacks.assign_roles, - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=self.maxs_, default_min=self.default_min_, - exclusives=exclusives) - - def test_assign_roles_allinone_bundles(self): - lower_configs = { - 1: {'roles': []}, - } - exclusives = ['control'] - bundles = [['control', 'api', 'compute']] - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=self.maxs_, default_min=self.default_min_, - exclusives=exclusives, bundles=bundles) - self.assertEqual(assigned, {1: ['control', 'api', 'compute']}) - - def test_assign_roles_allinone_bundles_noenough_hosts(self): - exclusives = ['control'] - bundles = [['control', 'api']] - lower_configs = { - 1: {'roles': []}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - ValueError, config_merger_callbacks.assign_roles, - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=self.maxs_, default_min=self.default_min_, - exclusives=exclusives, bundles=bundles) - - def test_assign_roles_allinone_maxes_mins_noenough_hosts(self): - lower_configs = { - 1: {'roles': []}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - maxs = {'control': 1, 'api': 2, 'compute': -1} - mins = {'control': 1, 'api': 2} - default_min = 0 - self.assertRaises( - ValueError, config_merger_callbacks.assign_roles, - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=maxs, mins=mins, - default_min=default_min) - - def test_assign_roles_allinone_maxes_mins(self): - lower_configs = { - 1: {'roles': []}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - maxs = {'control': 1, 'api': 2, 'compute': -1} - mins = {'control': 1, 'api': 0} - default_min = 0 - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=maxs, mins=mins, default_min=default_min) - self.assertEqual(assigned, {1: ['control']}) - - def test_assign_roles(self): - """test assign roles.""" - lower_configs = { - 1: {'roles': ['control']}, - 2: {'roles': ['api', 'compute']}, - 3: {'roles': []}, - 4: {}, - 5: {}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - exclusives = ['control'] - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=self.maxs_, - default_min=self.default_min_, - exclusives=exclusives) - self.assertEqual(assigned, {1: ['control'], - 2: ['api', 'compute'], - 3: ['compute'], - 4: ['compute'], - 5: ['compute']}) - - def test_assign_roles_multihosts_one_role(self): - default_min = 2 - maxs = {'control': 1, 'api': 2, 'compute': 2} - exclusives = ['control'] - lower_configs = { - 1: {'roles': ['control']}, - 2: {'roles': ['api', 'compute']}, - 3: {'roles': []}, - 4: {}, - 5: {}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=self.roles_, - maxs=maxs, default_min=default_min, - exclusives=exclusives) - self.assertEqual(assigned, {1: ['control'], - 2: ['api', 'compute'], - 3: ['control'], - 4: ['api'], - 5: ['compute']}) - - def test_assign_roles_bundles(self): - roles = ['control', 'api', 'compute', 'mysql'] - maxs = {'control': 1, 'api': 2, 'compute': -1, 'mysql': 2} - exclusives = ['control'] - bundles = [['control', 'api']] - lower_configs = { - 1: {}, - 2: {}, - 3: {}, - 4: {}, - 5: {}, - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=roles, - maxs=maxs, default_min=self.default_min_, - exclusives=exclusives, bundles=bundles) - self.assertEqual(assigned, {1: ['control', 'api'], - 2: ['compute'], - 3: ['mysql'], - 4: ['mysql'], - 5: ['compute']}) - - def test_assign_roles_multi_default_roles(self): - roles = ['control', 'api', 'compute', 'mysql'] - maxs = {'control': 1, 'api': 2, 'compute': -1, 'mysql': -2} - exclusives = ['control'] - bundles = [['control', 'api']] - lower_configs = { - 1: {}, - 2: {}, - 3: {}, - 4: {}, - 5: {}, - 6: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=roles, - maxs=maxs, default_min=self.default_min_, - exclusives=exclusives, bundles=bundles) - self.assertEqual(assigned, {1: ['control', 'api'], - 2: ['compute'], - 3: ['mysql'], - 4: ['mysql'], - 5: ['compute'], - 6: ['mysql']}) - - def test_assign_roles_hosts_portion_by_default_roles(self): - roles = ['control', 'api', 'compute', 'mysql'] - maxs = {'control': 1, 'api': 2, 'compute': -1, 'mysql': -1} - exclusives = ['control'] - bundles = [['control', 'api']] - lower_configs = { - 1: {}, - 2: {}, - 3: {}, - 4: {}, - 5: {}, - 6: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_roles( - None, None, lower_refs, 'roles', roles=roles, - maxs=maxs, default_min=self.default_min_, - exclusives=exclusives, bundles=bundles) - self.assertEqual(assigned, {1: ['control', 'api'], - 2: ['compute'], - 3: ['mysql'], - 4: ['compute'], - 5: ['mysql'], - 6: ['compute']}) - - def test_assign_roles_by_host_number_one_host(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - default = { - 'roles': ['control', 'api', 'compute'], - 'maxs': {'control': 1, 'api': 1, 'compute': -1}, - 'default_min': 1, - 'exclusives': ['control'] - } - policy_by_host_numbers = { - '1': { - 'bundles': [['control', 'api', 'compute']] - }, - '2': { - 'bundles': [['control', 'api']] - }, - } - assigned = config_merger_callbacks.assign_roles_by_host_numbers( - None, None, lower_refs, 'roles', - policy_by_host_numbers=policy_by_host_numbers, - default=default) - self.assertEqual(assigned, {1: ['control', 'api', 'compute']}) - - def test_assign_roles_by_host_number_two_hosts(self): - lower_configs = { - 1: {}, - 2: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - default = { - 'roles': ['control', 'api', 'compute'], - 'maxs': {'control': 1, 'api': 1, 'compute': -1}, - 'default_min': 1, - 'exclusives': ['control'] - } - policy_by_host_numbers = { - '1': { - 'bundles': [['control', 'api', 'compute']] - }, - '2': { - 'bundles': [['control', 'api']] - }, - } - assigned = config_merger_callbacks.assign_roles_by_host_numbers( - None, None, lower_refs, 'roles', - policy_by_host_numbers=policy_by_host_numbers, - default=default) - self.assertEqual(assigned, {1: ['control', 'api'], 2: ['compute']}) - - def test_assign_roles_by_host_number_host_number_not_found(self): - lower_configs = { - 1: {}, - 2: {}, - 3: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - default = { - 'roles': ['control', 'api', 'compute'], - 'maxs': {'control': 1, 'api': 1, 'compute': -1}, - 'default_min': 1, - 'exclusives': ['control'] - } - policy_by_host_numbers = { - '1': { - 'bundles': [['control', 'api', 'compute']] - }, - '2': { - 'bundles': [['control', 'api']] - }, - } - assigned = config_merger_callbacks.assign_roles_by_host_numbers( - None, None, lower_refs, 'roles', - policy_by_host_numbers=policy_by_host_numbers, - default=default) - self.assertEqual( - assigned, {1: ['control'], 2: ['api'], 3: ['compute']}) - - def test_assign_roles_by_host_number_host_number_host_number_int(self): - default = { - 'roles': ['control', 'api', 'compute'], - 'maxs': {'control': 1, 'api': 1, 'compute': -1}, - 'default_min': 1, - 'exclusives': ['control'] - } - policy_by_host_numbers = { - 1: { - 'bundles': [['control', 'api', 'compute']] - }, - 2: { - 'bundles': [['control', 'api']] - }, - } - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - ValueError, config_merger_callbacks.assign_roles_by_host_numbers, - None, None, lower_refs, 'roles', - policy_by_host_numbers=policy_by_host_numbers, - default=default) - - -class TestAssignIPs(unittest2.TestCase): - """test assign ips.""" - - def setUp(self): - super(TestAssignIPs, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestAssignIPs, self).tearDown() - - def test_assign_ips_validate(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - # ip_start and ip_end param should be the correct format. - self.assertRaises( - ValueError, config_merger_callbacks.assign_ips, - None, None, lower_refs, 'ip', - ip_start='') - self.assertRaises( - ValueError, config_merger_callbacks.assign_ips, - None, None, lower_refs, 'ip', - ip_start='100') - self.assertRaises( - ValueError, config_merger_callbacks.assign_ips, - None, None, lower_refs, 'ip', - ip_end='') - self.assertRaises( - ValueError, config_merger_callbacks.assign_ips, - None, None, lower_refs, 'ip', - ip_end='100') - - def test_assign_ip_ip_start_ip_end_relation(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - ValueError, config_merger_callbacks.assign_ips, - None, None, lower_refs, 'ip', - ip_start='192.168.100.100', ip_end='192.168.100.99') - assigned = config_merger_callbacks.assign_ips( - None, None, lower_refs, 'ip', - ip_start='192.168.100.100', ip_end='192.168.100.100') - self.assertEqual(assigned, {1: '192.168.100.100'}) - - def test_assign_ips_multi_hosts_noenough_ips(self): - lower_configs = { - 1: {}, 2: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - ValueError, config_merger_callbacks.assign_ips, - None, None, lower_refs, 'ip', - ip_start='192.168.100.100', ip_end='192.168.100.100') - - def test_assign_ips_multi_hosts(self): - lower_configs = { - 1: {}, 2: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_ips( - None, None, lower_refs, 'ip', - ip_start='192.168.100.100', ip_end='192.168.100.101') - self.assertEqual( - assigned, {1: '192.168.100.100', 2: '192.168.100.101'}) - - -class TestAssignFromPattern(unittest2.TestCase): - """test assign value from pattern.""" - - def setUp(self): - super(TestAssignFromPattern, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestAssignFromPattern, self).tearDown() - - def test_pattern(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_from_pattern( - None, None, lower_refs, 'pattern', pattern='hello') - self.assertEqual(assigned, {1: 'hello'}) - - def test_pattern_upper_keys(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_from_pattern( - None, None, lower_refs, 'pattern', - upper_keys=['clustername'], pattern='%(clustername)s', - clustername='mycluster') - self.assertEqual(assigned, {1: 'mycluster'}) - - def test_pattern_lower_keys(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_from_pattern( - None, None, lower_refs, 'pattern', - lower_keys=['hostname'], pattern='%(hostname)s', - hostname={1: 'myhost'}) - self.assertEqual(assigned, {1: 'myhost'}) - - def test_pattern_upper_keys_lower_keys(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_from_pattern( - None, None, lower_refs, 'pattern', - upper_keys=['clustername'], lower_keys=['hostname'], - pattern='%(hostname)s.%(clustername)s', - hostname={1: 'myhost'}, clustername='mycluster') - self.assertEqual(assigned, {1: 'myhost.mycluster'}) - - def test_pattern_upper_keys_lower_keys_overlap(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - KeyError, config_merger_callbacks.assign_from_pattern, - None, None, lower_refs, 'pattern', - upper_keys=['clustername'], - lower_keys=['clustername', 'hostname'], - pattern='%(hostname)s.%(clustername)s', - hostname={1: 'myhost'}, clustername='mycluster') - - def test_pattern_extra_keys(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - KeyError, config_merger_callbacks.assign_from_pattern, - None, None, lower_refs, 'pattern', - upper_keys=['clustername', 'clusterid'], - lower_keys=['hostname', 'hostid'], - pattern='%(hostname)s.%(clustername)s', - hostname={1: 'myhost'}, clustername='mycluster') - - def test_pattern_lower_key_not_dict(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - KeyError, config_merger_callbacks.assign_from_pattern, - None, None, lower_refs, 'pattern', - upper_keys=['clustername'], - lower_keys=['hostname'], - pattern='%(hostname)s.%(clustername)s', - hostname='myhost', clustername='mycluster') - - def test_pattern_extra_kwargs(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_from_pattern( - None, None, lower_refs, 'pattern', - upper_keys=['clustername'], - lower_keys=['hostname'], - pattern='%(hostname)s.%(clustername)s', - hostname={1: 'myhost'}, clustername='mycluster', - hostid={1: 'myhost'}, clusterid=1) - self.assertEqual(assigned, {1: 'myhost.mycluster'}) - - def test_pattern_extra_key_in_pattern(self): - lower_configs = { - 1: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - KeyError, config_merger_callbacks.assign_from_pattern, - None, None, lower_refs, 'pattern', - upper_keys=['clustername'], - lower_keys=['hostname'], - pattern='%(hostid)s.%(clusterid)s', - hostname={1: 'myhost'}, clustername='mycluster') - - -class TestNoProxy(unittest2.TestCase): - """test assign noproxy.""" - - def setUp(self): - super(TestNoProxy, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestNoProxy, self).tearDown() - - def test_noproxy(self): - lower_configs = { - 1: {}, - 2: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - assigned = config_merger_callbacks.assign_noproxy( - None, None, lower_refs, 'noproxy', - default=['127.0.0.1', 'compass', '10.145.88.3'], - clusterid=1, noproxy_pattern='%(hostname)s.%(clusterid)s,%(ip)s', - hostnames={1: 'host1', 2: 'host2'}, - ips={1: '10.145.88.1', 2: '10.145.88.2'}) - self.assertEqual( - assigned, { - 1: ( - '127.0.0.1,compass,10.145.88.3,' - 'host1.1,10.145.88.1,host2.1,10.145.88.2' - ), - 2: ( - '127.0.0.1,compass,10.145.88.3,' - 'host1.1,10.145.88.1,host2.1,10.145.88.2' - ) - }) - - def test_noproxy_noclusterid(self): - lower_configs = { - 1: {}, - 2: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - KeyError, config_merger_callbacks.assign_noproxy, - None, None, lower_refs, 'noproxy', - default=['127.0.0.1', 'compass', '10.145.88.3'], - noproxy_pattern='%(hostname)s.%(clusterid)s,%(ip)s', - hostnames={1: 'host1', 2: 'host2'}, - ips={1: '10.145.88.1', 2: '10.145.88.2'}) - - def test_noproxy_nohostname_ips(self): - lower_configs = { - 1: {}, - 2: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - KeyError, config_merger_callbacks.assign_noproxy, - None, None, lower_refs, 'noproxy', - default=['127.0.0.1', 'compass', '10.145.88.3'], - noproxy_pattern='%(hostname)s.%(clusterid)s,%(ip)s', - clusterid=1, hostnames={1: 'host1'}, - ips={1: '10.145.88.1'}) - - def test_noproxy_extra_keys_in_pattern(self): - lower_configs = { - 1: {}, - 2: {} - } - lower_refs = {} - for hostid, config in lower_configs.items(): - lower_refs[hostid] = config_reference.ConfigReference(config) - self.assertRaises( - KeyError, config_merger_callbacks.assign_noproxy, - None, None, lower_refs, 'noproxy', - default=['127.0.0.1', 'compass', '10.145.88.3'], - noproxy_pattern='%(hostname)s.%(clustername)s,%(ip)s', - clusterid=1, hostnames={1: 'host1', 2: 'host2'}, - ips={1: '10.145.88.1', 2: '10.145.88.2'}) - - -class TestOverrideIfEmpty(unittest2.TestCase): - """test override if empty.""" - - def setUp(self): - super(TestOverrideIfEmpty, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestOverrideIfEmpty, self).tearDown() - - def test_lower_config_none(self): - lower_config = None - lower_ref = config_reference.ConfigReference(lower_config) - override = config_merger_callbacks.override_if_empty( - None, None, lower_ref, 'override') - self.assertTrue(override) - - def test_lower_config_empty(self): - lower_config = '' - lower_ref = config_reference.ConfigReference(lower_config) - override = config_merger_callbacks.override_if_empty( - None, None, lower_ref, 'override') - self.assertTrue(override) - lower_config = [] - lower_ref = config_reference.ConfigReference(lower_config) - override = config_merger_callbacks.override_if_empty( - None, None, lower_ref, 'override') - self.assertTrue(override) - lower_config = {} - lower_ref = config_reference.ConfigReference(lower_config) - override = config_merger_callbacks.override_if_empty( - None, None, lower_ref, 'override') - self.assertTrue(override) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/config_management/utils/test_config_reference.py b/compass/tests/config_management/utils/test_config_reference.py deleted file mode 100755 index 6b4f1826..00000000 --- a/compass/tests/config_management/utils/test_config_reference.py +++ /dev/null @@ -1,353 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test config reference module. - - .. moduleauthor:: Xiaodong Wang -""" -import copy -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.config_management.utils import config_reference -from compass.utils import flags -from compass.utils import logsetting -from compass.utils import util - - -class TestCleanConfig(unittest2.TestCase): - """test clean_config function.""" - - def setUp(self): - super(TestCleanConfig, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestCleanConfig, self).tearDown() - - def test_config_empty(self): - """test config is empty.""" - self.assertIsNone(config_reference.get_clean_config(None)) - self.assertIsNone(config_reference.get_clean_config({})) - self.assertEqual([], config_reference.get_clean_config([])) - self.assertEqual('', config_reference.get_clean_config('')) - - def test_recursive_empty_dict(self): - """test config is recursively empty.""" - self.assertIsNone(config_reference.get_clean_config({'test': {}})) - self.assertIsNone(config_reference.get_clean_config({'test': None})) - - def test_nromal_dict(self): - """test config is normal dict.""" - config_list = [ - {'abc': 'abc'}, - {'abc': [1, 2, 3]}, - {'abc': {'1': '123'}}, - [1, 2, 3], - 'abc', - ] - for config in config_list: - self.assertEqual(config, config_reference.get_clean_config(config)) - - def test_partial_clean(self): - """test config is partial cleaned.""" - config_and_cleans = [ - ({'abc': 1, 'bcd': None}, {'abc': 1}), - ({'abc': 1, 'bcd': {}}, {'abc': 1}), - ({'abc': 1, 'bcd': {'m': {}}}, {'abc': 1}), - ({'abc': 1, 'b': {'m': {}, 'n': 2}}, {'abc': 1, 'b': {'n': 2}}), - ] - for config, expected_config in config_and_cleans: - self.assertEqual( - expected_config, - config_reference.get_clean_config(config)) - - -class TestConfigReference(unittest2.TestCase): - """test config reference class.""" - - def setUp(self): - super(TestConfigReference, self).setUp() - logsetting.init() - self.config_ = {'1': {'2': 3, '10': {}}, '4': [5, 6, 7], '8': 8} - self.ref_ = config_reference.ConfigReference(self.config_) - - def tearDown(self): - super(TestConfigReference, self).tearDown() - - def test_init(self): - """test init function.""" - # create ConfigReference instance. - self.assertEqual(self.ref_.config, self.config_) - self.assertEqual(id(self.ref_.config), id(self.config_)) - - def test_init_with_parent(self): - # create ConfigReference instance with parent param. - # it will add a key value pair in parent config if not exists. - config2 = {'5': {'6': 6}} - ref2 = config_reference.ConfigReference(config2['5'], self.ref_, '5') - expected_config = copy.deepcopy(self.config_) - util.merge_dict(expected_config, config2) - self.assertEqual(self.config_, expected_config) - self.assertEqual(id(self.config_['5']), id(ref2.config)) - self.assertEqual(id(ref2.config), id(config2['5'])) - - def test_init_with_parent_update(self): - # create ConfigReference instance with parent param. - # it will update the key value pair in parent config if it exists. - config3 = {'5': {'7': 7}} - ref3 = config_reference.ConfigReference(config3['5'], self.ref_, '5') - expected_config = copy.deepcopy(self.config_) - util.merge_dict(expected_config, config3) - self.assertEqual(self.config_, expected_config) - self.assertEqual(id(self.config_['5']), id(ref3.config)) - self.assertEqual(id(ref3.config), id(config3['5'])) - - def test_init_config_keys(self): - # config key should be string. - config_reference.ConfigReference(1) - config_reference.ConfigReference('1') - config_reference.ConfigReference([1, 2]) - config_reference.ConfigReference({'1': 2}) - config_reference.ConfigReference({u'1': 2}) - self.assertRaises( - TypeError, config_reference.ConfigReference, {1: 2}) - - def test_init_parent_type(self): - # parent instance should be of ConfigReference. - self.assertRaises( - TypeError, config_reference.ConfigReference, - {'1': 2}, parent=object()) - - def test_init_parent_key_type(self): - # parent key should be string. - self.assertRaises( - TypeError, config_reference.ConfigReference, - {'1': 2}, parent=self.ref_, parent_key=6) - - def test_ref_noexist_key(self): - # raise KeyError when accessing noexist key. - self.assertRaises(KeyError, self.ref_.ref, '') - self.assertRaises(KeyError, self.ref_.ref, '/1/2/4') - - def test_ref_dot_key(self): - # . key returns the same reference. - self.assertEqual(id(self.ref_.ref('.')), id(self.ref_)) - self.assertEqual(self.ref_.ref('.').config, self.config_) - - def test_ref_double_dot_key(self): - # .. key returns the same reference if ref itself - # is the top level reference. - self.assertEqual(id(self.ref_.ref('..')), id(self.ref_)) - self.assertEqual(self.ref_.ref('..').config, self.config_) - - def test_ref_slash_key(self): - # / key returns the same reference if the ref itself is - # the top level reference. - self.assertEqual(id(self.ref_.ref('/')), id(self.ref_)) - self.assertEqual(self.ref_.ref('/').config, self.config_) - - def test_ref_key(self): - # ref() returns the reference of the . - self.assertEqual(self.ref_.ref('1').config, self.config_['1']) - self.assertEqual(self.ref_.ref('1/2').config, - self.config_['1']['2']) - self.assertEqual(self.ref_.ref('1/2/.').config, - self.config_['1']['2']) - self.assertEqual(self.ref_.ref('1/2/..').config, - self.config_['1']) - self.assertEqual(self.ref_.ref('1/2//').config, - self.config_['1']['2']) - self.assertEqual(self.ref_.ref('/1').config, - self.config_['1']) - self.assertEqual(self.ref_.ref('/1/2').config, - self.config_['1']['2']) - - def test_ref_key_in_parent(self): - # from sub ref, we can get the reference of it parent or root. - subref = self.ref_.ref('1') - self.assertEqual(id(subref.ref('..')), id(self.ref_)) - self.assertEqual(subref.ref('..').config, self.config_) - self.assertEqual(id(subref.ref('../..')), id(self.ref_)) - self.assertEqual(subref.ref('../..').config, self.config_) - self.assertEqual(id(subref.ref('/')), id(self.ref_)) - self.assertEqual(subref.ref('/').config, self.config_) - self.assertEqual(subref.ref('2').config, self.config_['1']['2']) - self.assertEqual(subref.ref('2/..').config, self.config_['1']) - self.assertEqual(subref.ref('/4').config, self.config_['4']) - - def test_ref_key_not_exist(self): - subref = self.ref_.ref('1') - self.assertRaises(KeyError, subref.ref, '/4/5') - self.assertRaises(KeyError, subref.ref, '/9') - - def test_ref_key_not_exist_and_create(self): - # create sub reference if key does not exists and - # create_if_not_exist param is True. - subref2 = self.ref_.ref('9', True) - self.assertEqual(self.ref_.ref('9'), subref2) - - def test_refs(self): - """test refs function.""" - # ref_keys will return all matching refs. - refkeys = self.ref_.ref_keys('1') - self.assertEqual(set(refkeys), set(['1'])) - - def test_refs_asterisks(self): - refkeys = self.ref_.ref_keys('/1/*') - self.assertEqual(set(refkeys), set(['/1/2', '/1/10'])) - refkeys = self.ref_.ref_keys('*') - self.assertEqual(set(refkeys), set(['1', '4', '8'])) - refkeys = self.ref_.ref_keys('8*') - self.assertEqual(set(refkeys), set(['8'])) - - def test_refs_empty_key(self): - # ref keys will raise KeyError if the param is empty. - self.assertRaises(KeyError, self.ref_.ref_keys, '') - - def test_contains(self): - """test contains function.""" - self.assertIn('/1/2', self.ref_) - self.assertIn('1/10/', self.ref_) - self.assertIn('4/', self.ref_) - self.assertIn('/1/2/..', self.ref_) - self.assertNotIn('/1/3/7', self.ref_) - self.assertNotIn('/1/2/3/..', self.ref_) - - def test_getitem(self): - """test getitem function.""" - self.assertEqual(self.ref_['1'], self.config_['1']) - self.assertEqual(self.ref_['1/2'], self.config_['1']['2']) - self.assertEqual(self.ref_['/1'], self.config_['1']) - self.assertEqual(self.ref_['1/2/../../4'], self.config_['4']) - - def test_setitem(self): - """test setitem function.""" - self.ref_['/1/2'] = '6' - self.assertEqual(self.config_['1']['2'], '6') - self.assertEqual(self.ref_['/1/2'], '6') - self.ref_['1/10/5'] = 7 - self.assertEqual(self.config_['1']['10']['5'], 7) - self.assertEqual(self.ref_['1/10/5'], 7) - self.ref_['3/6/8'] = [1, 3, 5] - self.assertEqual(self.config_['3']['6']['8'], [1, 3, 5]) - self.assertEqual(self.ref_['3/6/8'], [1, 3, 5]) - - def test_del(self): - """test del function.""" - del self.ref_['/8'] - self.assertNotIn('8', self.config_) - del self.ref_['1/2'] - self.assertNotIn('2', self.config_['1']) - del self.ref_['1'] - self.assertNotIn('1', self.config_) - - def test_del_noexist_key(self): - # del nonexist key will raise KeyError - self.assertRaises(KeyError, self.ref_.__delitem__, '9') - - def test_len(self): - ref = config_reference.ConfigReference({}) - self.assertEqual(len(ref), 0) - ref = config_reference.ConfigReference({'1': '2', '2': '4'}) - self.assertEqual(len(ref), 2) - ref = config_reference.ConfigReference( - {'1': {'2': '3', '4': '5'}, '2': '4'}) - self.assertEqual(len(ref), 4) - - def test_bool(self): - ref = config_reference.ConfigReference({}) - self.assertFalse(ref) - ref = config_reference.ConfigReference({'1': 1}) - self.assertTrue(ref) - - def test_get(self): - """test get function.""" - self.assertEqual(self.ref_.get('1/2'), self.config_['1']['2']) - self.assertIsNone(self.ref_.get('1/3')) - self.assertEqual(self.ref_.get('1/3', 3), 3) - self.assertNotIn('3', self.config_['1']) - - def test_setdefault(self): - """test setdefault function.""" - self.assertEqual(self.ref_.setdefault('1/2').config, - self.config_['1']['2']) - self.assertIsNone(self.ref_.setdefault('1/3').config) - self.assertEqual(self.ref_.setdefault('1/4', 4).config, 4) - self.assertEqual(4, self.config_['1']['4']) - - def test_update(self): - """test update function.""" - expected_config = copy.deepcopy(self.config_) - config2 = {'9': 9, '10': {'10': 10}} - util.merge_dict(expected_config, config2) - self.ref_.update(config2) - self.assertEqual(self.ref_.config, expected_config) - - def test_update_nooverride(self): - # if override is False and ref config is not None, ignore the update. - expected_config = copy.deepcopy(self.config_) - self.ref_.update(10, False) - self.assertEqual(self.config_, expected_config) - - def test_update_override(self): - # if override is True, it will force update the config. - self.ref_.update(10) - self.assertEqual(self.ref_.config, 10) - - def test_iter(self): - """test iter function.""" - items = dict(self.ref_.items()) - self.assertEqual({ - '1': {'2': 3, '10': {}}, - '1/2': 3, - '1/10': {}, - '4': [5, 6, 7], - '8': 8}, items) - self.assertEqual( - set(self.ref_.keys()), - set(['1', '1/2', '1/10', '4', '8'])) - - def test_match(self): - config = {'1': {'2': 'abcdef'}, '3': ['efg', 'hij', 'k']} - ref = config_reference.ConfigReference(config) - self.assertTrue(ref.match({'1/2': 'abcdef'})) - self.assertFalse(ref.match({'1/2': 'abceef'})) - self.assertTrue(ref.match({'1/2': '[a-z]+'})) - self.assertFalse(ref.match({'1/2': '[0-9]+'})) - self.assertTrue(ref.match({'3': 'efg'})) - self.assertFalse(ref.match({'3': 'm'})) - self.assertTrue(ref.match({'3': 'hij'})) - - def test_filter(self): - config = {'1': {'2': 'abcdef', '4': 4}, '3': ['efg', 'hij', 'k']} - ref = config_reference.ConfigReference(config) - self.assertEqual(ref.filter(['1/2', '1/4', '5']), - {'1/2': 'abcdef', '1/4': 4}) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/config_management/utils/test_config_translator.py b/compass/tests/config_management/utils/test_config_translator.py deleted file mode 100755 index b3d76083..00000000 --- a/compass/tests/config_management/utils/test_config_translator.py +++ /dev/null @@ -1,568 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test config translator module. - - .. moduleauthor:: Xiaodong Wang -""" -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.config_management.utils import config_reference -from compass.config_management.utils import config_translator -from compass.utils import flags -from compass.utils import logsetting - - -class TestKeyTranslator(unittest2.TestCase): - """test key translator class.""" - - def setUp(self): - super(TestKeyTranslator, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestKeyTranslator, self).tearDown() - - def test_init(self): - # translated_keys should be callback or list of string or callback. - config_translator.KeyTranslator( - translated_keys=['/a/b/c', '/d/e']) - config_translator.KeyTranslator( - translated_keys=[u'/a/b/c', u'/d/e']) - config_translator.KeyTranslator( - translated_keys=(lambda sub_ref, ref_key: [])) - config_translator.KeyTranslator( - translated_keys=[lambda sub_ref, ref_key: '/d/e']) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys='/a/b/c') - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys={'/a/b/c': 'd/e'}) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=[5, 6, 7]) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=[('5', '6')]) - - def test_init_translated_keys_noasterrisks(self): - # the key in translated key should not contain '*'. - self.assertRaises( - KeyError, config_translator.KeyTranslator, - translated_keys=['/a/*/b']) - - def test_init_from_keys(self): - # the from keys should be dict of string to string. - config_translator.KeyTranslator( - translated_keys=['/a/b/c', '/d/e'], from_keys={'m': '/m/n'}) - config_translator.KeyTranslator( - translated_keys=['/a/b/c', '/d/e'], from_keys={u'm': u'/m/n'}) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_keys=['m']) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_keys='m') - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_keys={5: 'm'}) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_keys={'m': 5}) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_keys={'m': ['/m/n']}) - - def test_init_from_keys_noasterisks(self): - # the value of the from_keys should not contain '*'. - self.assertRaises( - KeyError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_keys={'m': '/m/*/n'}) - - def test_init_from_values(self): - # from_values should be dict of string to string. - config_translator.KeyTranslator( - translated_keys=['/a/b/c'], from_values={'m': '/m'}) - config_translator.KeyTranslator( - translated_keys=['/a/b/c'], from_values={u'm': u'/m'}) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_values=['m']) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_values='m') - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_values={5: 'm'}) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_keys={'m': 5}) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_values={'m': ['/m/n']}) - - def test_init_from_values_noasterisks(self): - # the value of the from_values should not contain '*'. - self.assertRaises( - KeyError, config_translator.KeyTranslator, - translated_keys=['/a/b/c'], from_values={'m': '/m/*/n'}) - - def test_init_override_conditions(self): - # override_conditions should be dict of string to string - config_translator.KeyTranslator( - translated_keys=['1/2/3', '/4/5/6'], - override_conditions={'hello': 'hi'}) - config_translator.KeyTranslator( - translated_keys=['1/2/3', '/4/5/6'], - override_conditions={u'hello': u'hi'}) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['1/2/3', '/4/5/6'], - override_conditions=['hello', 'hi']) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['1/2/3', '/4/5/6'], - override_conditions='hello') - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['1/2/3', '/4/5/6'], - override_conditions={5: 'hi'}) - self.assertRaises( - TypeError, config_translator.KeyTranslator, - translated_keys=['1/2/3', '/4/5/6'], - override_conditions={'hello': 5}) - - def test_init_override_conditions_noasterisks(self): - # the value in override_conditions should not contains '*'. - self.assertRaises( - KeyError, config_translator.KeyTranslator, - translated_keys=['1/2/3', '/4/5/6'], - override_conditions={'hello': 'hi*hi'}) - - def test_translate(self): - # test get translated keys. - # only keys in translated_keys is set in translted config. - config = { - 'key1': 'abc', - 'key2': 'bcd', - 'key3': 'mnq' - } - ref = config_reference.ConfigReference(config) - translated_config = {} - translated_ref = config_reference.ConfigReference(translated_config) - translator = config_translator.KeyTranslator( - translated_keys=['key2', 'key3']) - translator.translate(ref, 'key1', translated_ref) - self.assertEqual(translated_config, {'key2': 'abc', 'key3': 'abc'}) - - def test_translate_translated_keys_callback(self): - # translated_keys can be callback to dynamically - # get the translated_keys. - config = { - 'key1': 'abc', - 'key2': 'bcd', - 'key3': 'mnq' - } - ref = config_reference.ConfigReference(config) - translated_config = {} - translated_ref = config_reference.ConfigReference(translated_config) - translator = config_translator.KeyTranslator( - translated_keys=( - lambda sub_ref, ref_key: ['m%s' % ref_key, 'n%s' % ref_key])) - translator.translate(ref, 'key*', translated_ref) - self.assertEqual( - translated_config, { - 'mkey1': 'abc', 'mkey2': 'bcd', 'mkey3': 'mnq', - 'nkey1': 'abc', 'nkey2': 'bcd', 'nkey3': 'mnq', - } - ) - - def test_translate_translated_keys_each_key_callback(self): - # each translated key can be a callback to dynamically - # get the translated key. - config = { - 'key1': 'abc', - 'key2': 'bcd', - 'key3': 'mnq' - } - ref = config_reference.ConfigReference(config) - translated_config = {} - translated_ref = config_reference.ConfigReference(translated_config) - translator = config_translator.KeyTranslator( - translated_keys=['key1', (lambda sub_ref, ref_key: 'mkey2')]) - translator.translate(ref, 'key1', translated_ref) - self.assertEqual( - translated_config, {'key1': 'abc', 'mkey2': 'abc'}) - - def test_translate_from_keys(self): - # generate translated_keys from some keys from config. - config = { - 'key': 'abc', - 'key_suffix': 'A', - 'key_prefix': 'B' - } - - def _generate_key(sub_ref, ref_key, prefix='', suffix=''): - return '%s%s%s' % (prefix, ref_key, suffix) - - def _generate_keys(sub_ref, ref_key, prefix='', suffix=''): - return ['%s%s%s' % (prefix, ref_key, suffix)] - - ref = config_reference.ConfigReference(config) - translated_config = {} - translated_ref = config_reference.ConfigReference(translated_config) - translator = config_translator.KeyTranslator( - translated_keys=[_generate_key], - from_keys={'prefix': '/key_prefix', 'suffix': '/key_suffix'}) - translator.translate(ref, 'key', translated_ref) - self.assertEqual(translated_config, {'BkeyA': 'abc'}) - translated_config = {} - translated_ref = config_reference.ConfigReference(translated_config) - translator = config_translator.KeyTranslator( - translated_keys=_generate_keys, - from_keys={'prefix': '/key_prefix', 'suffix': '/key_suffix'}) - translator.translate(ref, 'key', translated_ref) - self.assertEqual(translated_config, {'BkeyA': 'abc'}) - - def test_translate_translated_value(self): - # translated_value can be set explictly. - config = { - 'key': 'abc', - 'key_suffix': 'A', - 'key_prefix': 'B' - } - ref = config_reference.ConfigReference(config) - translated_config = {} - translated_ref = config_reference.ConfigReference(translated_config) - translator = config_translator.KeyTranslator( - translated_keys=['mnq'], - translated_value='mnq') - translator.translate(ref, 'key', translated_ref) - self.assertEqual(translated_config, {'mnq': 'mnq'}) - - def test_translated_value_by_callback_none(self): - # translated value can be generated from callback. - # the value will be ignored when generated translated_value is None. - config = { - 'key': 'abc', - } - ref = config_reference.ConfigReference(config) - translated_config = {} - translated_ref = config_reference.ConfigReference(translated_config) - - def _generate_none( - sub_ref, ref_key, translated_sub_ref, translated_key - ): - return None - - translator = config_translator.KeyTranslator( - translated_keys=['mnq'], - translated_value=_generate_none) - translator.translate(ref, 'key', translated_ref) - self.assertEqual(translated_config, {'mnq': None}) - - def test_translate_translated_value_by_callback(self): - # translated_value can be set from some field of config. - config = { - 'key': 'abc', - 'key_suffix': 'A', - 'key_prefix': 'B' - } - ref = config_reference.ConfigReference(config) - translated_config = {} - translated_ref = config_reference.ConfigReference(translated_config) - - def _generate_value( - sub_ref, ref_key, translated_sub_ref, translated_key, - prefix='', suffix='' - ): - return '%s%s%s' % (prefix, sub_ref.config, suffix) - - translator = config_translator.KeyTranslator( - translated_keys=['mnq'], - translated_value=_generate_value, - from_values={'prefix': '/key_prefix', 'suffix': '/key_suffix'}) - translator.translate(ref, 'key', translated_ref) - self.assertEqual(translated_config, {'mnq': 'BabcA'}) - - def test_translate_nooverride(self): - # the translated key will be ignored when the key has already existed - # in translated config and override is False. - config = { - 'key': 'abc', - } - ref = config_reference.ConfigReference(config) - translated_config = {'mnq': 'mnq'} - translated_ref = config_reference.ConfigReference(translated_config) - translator = config_translator.KeyTranslator( - translated_keys=['mnq'], override=False) - translator.translate(ref, 'key', translated_ref) - self.assertEqual(translated_config, {'mnq': 'mnq'}) - - def test_translate_override(self): - # the translated config will be overrided if override param is True. - config = { - 'key': 'abc', - } - ref = config_reference.ConfigReference(config) - translated_config = {'mnq': 'mnq'} - translated_ref = config_reference.ConfigReference(translated_config) - translator = config_translator.KeyTranslator( - translated_keys=['mnq'], override=True) - translator.translate(ref, 'key', translated_ref) - self.assertEqual(translated_config, {'mnq': 'abc'}) - - def test_translate_override_by_callback(self): - # override param can be set from callback. - config = { - 'key': 'abc', - } - ref = config_reference.ConfigReference(config) - translated_config = {'klm': 'klm', 'mnq': 'mnq'} - translated_ref = config_reference.ConfigReference(translated_config) - - def _generate_override( - sub_ref, ref_key, - translated_sub_ref, translated_key - ): - return translated_key == 'klm' - - translator = config_translator.KeyTranslator( - translated_keys=['klm', 'mnq'], override=_generate_override) - translator.translate(ref, 'key', translated_ref) - self.assertEqual(translated_config, {'klm': 'abc', 'mnq': 'mnq'}) - - def test_translate_override_conditions(self): - # override param can be set from some config fields. - config = { - 'key': 'abc', - 'key_suffix': 'A', - 'key_prefix': 'B' - } - ref = config_reference.ConfigReference(config) - translated_config = {'BmA': 'BmA', 'mnq': 'mnq'} - translated_ref = config_reference.ConfigReference(translated_config) - - def _generate_override2( - sub_ref, ref_key, - translated_sub_ref, translated_key, prefix='', suffix='', - ): - return ( - translated_key.startswith(prefix) and - translated_key.endswith(suffix)) - - translator = config_translator.KeyTranslator( - translated_keys=['BmA', 'mnq'], - override=_generate_override2, - override_conditions={ - 'prefix': '/key_prefix', 'suffix': '/key_suffix' - } - ) - translator.translate(ref, 'key', translated_ref) - self.assertEqual(translated_config, {'BmA': 'abc', 'mnq': 'mnq'}) - - -class TestConfigTranslatorFunctions(unittest2.TestCase): - """test config translator class.""" - - def setUp(self): - super(TestConfigTranslatorFunctions, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestConfigTranslatorFunctions, self).tearDown() - - def test_init(self): - # mapping should be dict of string to list of KeyTranslator. - config_translator.ConfigTranslator( - mapping={ - 'key1': [config_translator.KeyTranslator( - translated_keys=['abc'] - )] - } - ) - config_translator.ConfigTranslator( - mapping={ - u'key1': [config_translator.KeyTranslator( - translated_keys=['abc'] - )] - } - ) - self.assertRaises( - TypeError, config_translator.ConfigTranslator, - mapping=[config_translator.KeyTranslator(translated_keys=['abc'])] - ) - self.assertRaises( - TypeError, config_translator.ConfigTranslator, - mapping=config_translator.KeyTranslator(translated_keys=['abc']) - ) - self.assertRaises( - TypeError, config_translator.ConfigTranslator, - mapping={ - 'abc': config_translator.KeyTranslator(translated_keys=['abc']) - } - ) - self.assertRaises( - TypeError, config_translator.ConfigTranslator, - mapping={ - 1: [config_translator.KeyTranslator(translated_keys=['abc'])] - } - ) - self.assertRaises( - TypeError, config_translator.ConfigTranslator, - mapping={ - 'abc': [ - { - 'm': config_translator.KeyTranslator( - translated_keys=['abc']) - } - ] - } - ) - - def test_translate(self): - """test translate config.""" - config = { - 'key1': 'abc', - 'key2': 'bcd' - } - translator = config_translator.ConfigTranslator( - mapping={ - 'key1': [ - config_translator.KeyTranslator( - translated_keys=['mkey1'] - ) - ], - 'key2': [ - config_translator.KeyTranslator( - translated_keys=['mkey2'], - translated_value='mkey2' - ), - config_translator.KeyTranslator( - translated_keys=['mkey2'], - translated_value='nkey2' - ) - ] - } - ) - translated_config = translator.translate(config) - self.assertEqual(translated_config, - {'mkey1': 'abc', 'mkey2': 'mkey2'}) - - def test_translate_nooverride(self): - # the later KeyTranslator will be ignored if the former one - # has already set the value. - config = { - 'key1': 'abc', - 'key2': 'bcd' - } - translator = config_translator.ConfigTranslator( - mapping={ - 'key1': [ - config_translator.KeyTranslator( - translated_keys=['mkey1'] - ) - ], - 'key2': [ - config_translator.KeyTranslator( - translated_keys=['mkey2'], - translated_value='mkey2' - ), - config_translator.KeyTranslator( - translated_keys=['mkey2'], - translated_value='nkey2', - override=False - ) - ] - } - ) - translated_config = translator.translate(config) - self.assertEqual(translated_config, - {'mkey1': 'abc', 'mkey2': 'mkey2'}) - - def test_translate_override(self): - # the later KeyTranslator will override the former one - # if override is set. - config = { - 'key1': 'abc', - 'key2': 'bcd' - } - translator = config_translator.ConfigTranslator( - mapping={ - 'key1': [ - config_translator.KeyTranslator( - translated_keys=['mkey1'] - ) - ], - 'key2': [ - config_translator.KeyTranslator( - translated_keys=['mkey2'], - translated_value='mkey2' - ), - config_translator.KeyTranslator( - translated_keys=['mkey2'], - translated_value='nkey2', - override=True - ) - ] - } - ) - translated_config = translator.translate(config) - self.assertEqual(translated_config, - {'mkey1': 'abc', 'mkey2': 'nkey2'}) - - def test_translated_generated_value_none(self): - # When the generated value is None, - # the translated key will be ignored. - config = { - 'key1': 'abc', - 'key2': 'bcd' - } - - def _generate_none( - sub_ref, ref_key, translated_sub_ref, translated_key - ): - return None - - translator = config_translator.ConfigTranslator( - mapping={ - 'key1': [ - config_translator.KeyTranslator( - translated_keys=['mkey1'], - translated_value=_generate_none - ) - ] - } - ) - translated_config = translator.translate(config) - self.assertEqual(translated_config, - None) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/config_management/utils/test_config_translator_callbacks.py b/compass/tests/config_management/utils/test_config_translator_callbacks.py deleted file mode 100644 index a2e40b01..00000000 --- a/compass/tests/config_management/utils/test_config_translator_callbacks.py +++ /dev/null @@ -1,103 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test config_filter module. - - .. moduleauthor:: Xiaodong Wang -""" -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.config_management.utils import config_reference -from compass.config_management.utils import config_translator_callbacks -from compass.utils import flags -from compass.utils import logsetting - - -class TestGetKeyFromPattern(unittest2.TestCase): - """test get key from pattern.""" - - def setUp(self): - super(TestGetKeyFromPattern, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestGetKeyFromPattern, self).tearDown() - - def test_get_key_from_pattern(self): - key = config_translator_callbacks.get_key_from_pattern( - None, '/networking/interfaces/management/ip', - to_pattern='macaddress-%(nic)s', - nic='eth0') - self.assertEqual(key, 'macaddress-eth0') - - def test_get_key_from_pattern_extra_keys_in_to_pattern(self): - self.assertRaises( - KeyError, config_translator_callbacks.get_key_from_pattern, - None, '/networking/interfaces/management/ip', - to_pattern='macaddress-%(nic)s') - - -class TestAddValue(unittest2.TestCase): - """test add value.""" - - def setUp(self): - super(TestAddValue, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestAddValue, self).tearDown() - - def test_add_value_if_not_exist(self): - config = 'hello' - ref = config_reference.ConfigReference(config) - translated_config = None - translated_ref = config_reference.ConfigReference(translated_config) - new_value = config_translator_callbacks.add_value( - ref, None, translated_ref, None) - self.assertEqual(new_value, ['hello']) - - def test_add_value(self): - config = 'hello' - ref = config_reference.ConfigReference(config) - translated_config = ['hi'] - translated_ref = config_reference.ConfigReference(translated_config) - new_value = config_translator_callbacks.add_value( - ref, None, translated_ref, None) - self.assertEqual(new_value, ['hi', 'hello']) - - def test_ignore_add_value(self): - config = 'hello' - ref = config_reference.ConfigReference(config) - translated_config = ['hi'] - translated_ref = config_reference.ConfigReference(translated_config) - new_value = config_translator_callbacks.add_value( - ref, None, translated_ref, None, condition=False) - self.assertEqual(new_value, ['hi']) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/config_management/installers/plugins/__init__.py b/compass/tests/db/__init__.py similarity index 100% rename from compass/config_management/installers/plugins/__init__.py rename to compass/tests/db/__init__.py diff --git a/compass/tests/db/api/__init__.py b/compass/tests/db/api/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/compass/tests/db/api/base.py b/compass/tests/db/api/base.py new file mode 100644 index 00000000..8a63f697 --- /dev/null +++ b/compass/tests/db/api/base.py @@ -0,0 +1,62 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import datetime +import logging +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from compass.db.api import adapter_holder as adapter_api +from compass.db.api import database +from compass.db.api import metadata_holder as metadata_api +from compass.db.api import switch +from compass.db.api import user as user_api +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting + + +class BaseTest(unittest2.TestCase): + """Base Class for unit test.""" + + def setUp(self): + super(BaseTest, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + adapter_api.load_adapters() + metadata_api.load_metadatas() + self.user_object = ( + user_api.get_user_object( + setting.COMPASS_ADMIN_EMAIL + ) + ) + + def tearDown(self): + super(BaseTest, self).setUp() + reload(setting) + database.drop_db() diff --git a/compass/tests/db/api/data/adapter/ceph.conf b/compass/tests/db/api/data/adapter/ceph.conf new file mode 100644 index 00000000..6b6c8139 --- /dev/null +++ b/compass/tests/db/api/data/adapter/ceph.conf @@ -0,0 +1,3 @@ +NAME = 'ceph' +PARENT = 'general' +DISTRIBUTED_SYSTEM = 'ceph' diff --git a/compass/tests/db/api/data/adapter/chef_ceph.conf b/compass/tests/db/api/data/adapter/chef_ceph.conf new file mode 100644 index 00000000..9051b4db --- /dev/null +++ b/compass/tests/db/api/data/adapter/chef_ceph.conf @@ -0,0 +1,7 @@ +NAME = 'ceph(chef)' +DSPLAY_NAME = 'ceph(ceph)' +PARENT = 'ceph' +PACKAGE_INSTALLER = 'chef_installer' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/compass/tests/db/api/data/adapter/chef_openstack.conf b/compass/tests/db/api/data/adapter/chef_openstack.conf new file mode 100644 index 00000000..b523815c --- /dev/null +++ b/compass/tests/db/api/data/adapter/chef_openstack.conf @@ -0,0 +1,7 @@ +NAME = 'openstack_icehouse' +DISPLAY_NAME = 'OpenStack Icehouse' +PARENT = 'openstack' +PACKAGE_INSTALLER = 'chef_installer' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/compass/tests/db/api/data/adapter/general.conf b/compass/tests/db/api/data/adapter/general.conf new file mode 100644 index 00000000..4d8cb371 --- /dev/null +++ b/compass/tests/db/api/data/adapter/general.conf @@ -0,0 +1 @@ +NAME = 'general' diff --git a/compass/tests/db/api/data/adapter/openstack.conf b/compass/tests/db/api/data/adapter/openstack.conf new file mode 100644 index 00000000..2f948fb0 --- /dev/null +++ b/compass/tests/db/api/data/adapter/openstack.conf @@ -0,0 +1,4 @@ +NAME = 'openstack' +PARENT = 'general' +DISTRIBUTED_SYSTEM = 'openstack' +SUPPORTED_OSES = ['CentOS6.5', 'Ubuntu12.04'] diff --git a/compass/tests/db/api/data/adapter/os_only.conf b/compass/tests/db/api/data/adapter/os_only.conf new file mode 100644 index 00000000..96295538 --- /dev/null +++ b/compass/tests/db/api/data/adapter/os_only.conf @@ -0,0 +1,5 @@ +NAME = 'os_only' +PARENT = 'general' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/compass/tests/db/api/data/distributed_system/ceph.conf b/compass/tests/db/api/data/distributed_system/ceph.conf new file mode 100644 index 00000000..674b8248 --- /dev/null +++ b/compass/tests/db/api/data/distributed_system/ceph.conf @@ -0,0 +1,3 @@ +NAME = 'ceph' +PARENT = 'general' +DEPLOYABLE = True diff --git a/compass/tests/db/api/data/distributed_system/general.conf b/compass/tests/db/api/data/distributed_system/general.conf new file mode 100644 index 00000000..655beb06 --- /dev/null +++ b/compass/tests/db/api/data/distributed_system/general.conf @@ -0,0 +1,2 @@ +NAME = 'general' +PARENT = '' diff --git a/compass/tests/db/api/data/distributed_system/openstack.conf b/compass/tests/db/api/data/distributed_system/openstack.conf new file mode 100644 index 00000000..d4a14a2e --- /dev/null +++ b/compass/tests/db/api/data/distributed_system/openstack.conf @@ -0,0 +1,3 @@ +NAME ='openstack' +PARENT = 'general' +DEPLOYABLE = True diff --git a/compass/tests/db/api/data/flavor/openstack_chef.conf b/compass/tests/db/api/data/flavor/openstack_chef.conf new file mode 100644 index 00000000..ca449fe9 --- /dev/null +++ b/compass/tests/db/api/data/flavor/openstack_chef.conf @@ -0,0 +1,16 @@ +ADAPTER_NAME = 'openstack_icehouse' +FLAVORS = [{ + 'flavor': 'allinone', + 'display_name': 'allinone', + 'template': 'allinone.tmpl', + 'roles': ['allinone-compute'] +}, { + 'flavor': 'multiroles', + 'display_name': 'multiroles', + 'template': 'multiroles.tmpl', + 'roles': [ + 'os-compute-worker', 'os-network', 'os-block-storage-worker', + 'os-image', 'os-compute-vncproxy', 'os-controller', + 'os-ops-messaging', 'os-ops-database', 'ha-proxy' + ] +}] diff --git a/compass/tests/db/api/data/os/centos.conf b/compass/tests/db/api/data/os/centos.conf new file mode 100644 index 00000000..d67f12a1 --- /dev/null +++ b/compass/tests/db/api/data/os/centos.conf @@ -0,0 +1,2 @@ +NAME = 'CentOS' +PARENT = 'general' diff --git a/compass/tests/db/api/data/os/centos6.5.conf b/compass/tests/db/api/data/os/centos6.5.conf new file mode 100644 index 00000000..75d4eb17 --- /dev/null +++ b/compass/tests/db/api/data/os/centos6.5.conf @@ -0,0 +1,3 @@ +NAME = 'CentOS-6.5-x86_64' +PARENT = 'CentOS' +DEPLOYABLE = True diff --git a/compass/tests/db/api/data/os/general.conf b/compass/tests/db/api/data/os/general.conf new file mode 100644 index 00000000..655beb06 --- /dev/null +++ b/compass/tests/db/api/data/os/general.conf @@ -0,0 +1,2 @@ +NAME = 'general' +PARENT = '' diff --git a/compass/tests/db/api/data/os/ubuntu.conf b/compass/tests/db/api/data/os/ubuntu.conf new file mode 100644 index 00000000..2207329e --- /dev/null +++ b/compass/tests/db/api/data/os/ubuntu.conf @@ -0,0 +1,2 @@ +NAME = 'Ubuntu' +PARENT = 'general' diff --git a/compass/tests/db/api/data/os/ubuntu12.04.conf b/compass/tests/db/api/data/os/ubuntu12.04.conf new file mode 100644 index 00000000..db810061 --- /dev/null +++ b/compass/tests/db/api/data/os/ubuntu12.04.conf @@ -0,0 +1,3 @@ +NAME = 'Ubuntu-12.04-x86_64' +PARENT = 'Ubuntu' +DEPLOYABLE = True diff --git a/compass/tests/db/api/data/os_field/dns.conf b/compass/tests/db/api/data/os_field/dns.conf new file mode 100644 index 00000000..b97b1544 --- /dev/null +++ b/compass/tests/db/api/data/os_field/dns.conf @@ -0,0 +1,2 @@ +NAME = 'dns' +VALIDATOR = is_valid_dns diff --git a/compass/tests/db/api/data/os_field/gateway.conf b/compass/tests/db/api/data/os_field/gateway.conf new file mode 100644 index 00000000..f9a3139e --- /dev/null +++ b/compass/tests/db/api/data/os_field/gateway.conf @@ -0,0 +1,2 @@ +NAME = 'gateway' +VALIDATOR = is_valid_gateway diff --git a/compass/tests/db/api/data/os_field/general.conf b/compass/tests/db/api/data/os_field/general.conf new file mode 100644 index 00000000..4d8cb371 --- /dev/null +++ b/compass/tests/db/api/data/os_field/general.conf @@ -0,0 +1 @@ +NAME = 'general' diff --git a/compass/tests/db/api/data/os_field/general_list.conf b/compass/tests/db/api/data/os_field/general_list.conf new file mode 100644 index 00000000..9b37cb99 --- /dev/null +++ b/compass/tests/db/api/data/os_field/general_list.conf @@ -0,0 +1,2 @@ +NAME = 'general_list' +FIELD_TYPE = list diff --git a/compass/tests/db/api/data/os_field/ip.conf b/compass/tests/db/api/data/os_field/ip.conf new file mode 100644 index 00000000..4f532098 --- /dev/null +++ b/compass/tests/db/api/data/os_field/ip.conf @@ -0,0 +1,2 @@ +NAME = 'ip' +VALIDATOR = is_valid_ip diff --git a/compass/tests/db/api/data/os_field/netmask.conf b/compass/tests/db/api/data/os_field/netmask.conf new file mode 100644 index 00000000..2dab8690 --- /dev/null +++ b/compass/tests/db/api/data/os_field/netmask.conf @@ -0,0 +1,2 @@ +NAME = 'netmask' +VALIDATOR = is_valid_netmask diff --git a/compass/tests/db/api/data/os_field/network.conf b/compass/tests/db/api/data/os_field/network.conf new file mode 100644 index 00000000..c7f627f3 --- /dev/null +++ b/compass/tests/db/api/data/os_field/network.conf @@ -0,0 +1,2 @@ +NAME = 'network' +VALIDATOR = is_valid_network diff --git a/compass/tests/db/api/data/os_field/password.conf b/compass/tests/db/api/data/os_field/password.conf new file mode 100644 index 00000000..bdb026e5 --- /dev/null +++ b/compass/tests/db/api/data/os_field/password.conf @@ -0,0 +1,3 @@ +NAME = 'password' +VALIDATOR = is_valid_password +DESCRIPTION = 'password' diff --git a/compass/tests/db/api/data/os_field/percentage.conf b/compass/tests/db/api/data/os_field/percentage.conf new file mode 100644 index 00000000..2e61c899 --- /dev/null +++ b/compass/tests/db/api/data/os_field/percentage.conf @@ -0,0 +1,3 @@ +NAME = 'percentage' +FIELD_TYPE = int +VALIDATOR = is_valid_percentage diff --git a/compass/tests/db/api/data/os_field/size.conf b/compass/tests/db/api/data/os_field/size.conf new file mode 100644 index 00000000..b3b686e8 --- /dev/null +++ b/compass/tests/db/api/data/os_field/size.conf @@ -0,0 +1,2 @@ +NAME = 'size' +VALIDATOR = is_valid_size diff --git a/compass/tests/db/api/data/os_field/username.conf b/compass/tests/db/api/data/os_field/username.conf new file mode 100644 index 00000000..79907b1a --- /dev/null +++ b/compass/tests/db/api/data/os_field/username.conf @@ -0,0 +1,3 @@ +NAME = 'username' +VALIDATOR = is_valid_username +DESCRIPTION = 'username' diff --git a/compass/tests/db/api/data/os_installer/cobbler.conf b/compass/tests/db/api/data/os_installer/cobbler.conf new file mode 100644 index 00000000..240c490f --- /dev/null +++ b/compass/tests/db/api/data/os_installer/cobbler.conf @@ -0,0 +1,9 @@ +NAME = 'cobbler' +INSTANCE_NAME = 'cobbler' +SETTINGS = { + 'cobbler_url': 'http://127.0.0.1/cobbler_api', + 'credentials': { + 'username': 'cobbler', + 'password': 'cobbler' + } +} diff --git a/compass/tests/db/api/data/os_metadata/general.conf b/compass/tests/db/api/data/os_metadata/general.conf new file mode 100644 index 00000000..6acc43db --- /dev/null +++ b/compass/tests/db/api/data/os_metadata/general.conf @@ -0,0 +1,169 @@ +OS = 'general' +METADATA = { + 'general': { + '_self': { + 'required_in_whole_config': True + }, + 'language': { + '_self': { + 'field': 'general', + 'default_value': 'EN', + 'options': ['EN', 'CN'], + 'mapping_to': 'language' + } + }, + 'timezone': { + '_self': { + 'field': 'general', + 'default_value': 'UTC', + 'options': [ + 'America/New_York', 'America/Chicago', + 'America/Los_Angeles', 'Asia/Shanghai', + 'Asia/Tokyo', 'Europe/Paris', + 'Europe/London', 'Europe/Moscow', + 'Europe/Rome', 'Europe/Madrid', + 'Europe/Berlin', 'UTC' + ], + 'mapping_to': 'timezone' + } + }, + 'http_proxy': { + '_self': { + 'field': 'general', + 'default_value': 'http://127.0.0.1:3128', + 'options': [ + 'http://127.0.0.1:3128' + ], + 'mapping_to': 'http_proxy' + } + }, + 'https_proxy': { + '_self': { + 'field': 'general', + 'default_value': 'http://127.0.0.1:3128', + 'options': [ + 'http://127.0.0.1:3128' + ], + 'mapping_to': 'https_proxy' + } + }, + 'no_proxy': { + '_self': { + 'field': 'general_list', + 'default_value': [ + '127.0.0.1', + 'compass' + ], + 'options': [ + '127.0.0.1', + 'compass' + ], + 'mapping_to': 'no_proxy' + } + }, + 'ntp_server': { + '_self': { + 'is_required': True, + 'field': 'general', + 'default_value': '127.0.0.1', + 'options': [ + '127.0.0.1' + ], + 'mapping_to': 'ntp_server' + } + }, + 'dns_servers': { + '_self': { + 'is_required': True, + 'field': 'general_list', + 'default_value': [ + '127.0.0.1', + ], + 'options': [ + '127.0.0.1' + ], + 'mapping_to': 'nameservers' + } + }, + 'domain': { + '_self': { + 'field': 'general', + 'is_required' : True, + 'default_value': 'ods.com', + 'options': ['ods.com'], + } + }, + 'search_path': { + '_self': { + 'field': 'general_list', + 'default_value': [ + 'ods.com' + ], + 'options': ['ods.com'], + 'mapping_to': 'search_path' + } + }, + 'default_gateway': { + '_self': { + 'is_required': True, + 'field': 'ip', + 'default_value': '127.0.0.1', + 'mapping_to': 'gateway' + } + } + }, + 'server_credentials': { + '_self': { + 'required_in_whole_config': True, + 'mapping_to': 'server_credentials' + }, + 'username': { + '_self': { + 'is_required': True, + 'default_value': 'root', + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'default_value': 'root', + 'field': 'password', + 'mapping_to': 'password' + } + } + }, + 'partition': { + '_self': { + 'required_in_whole_config': True, + 'options': ['/boot', 'swap', '/var', '/home'], + 'mapping_to': 'partition' + }, + '$partition': { + '_self': { + 'validator': is_valid_partition + }, + 'max_size': { + '_self': { + 'field': 'size', + 'mapping_to': 'max_vol_size' + }, + }, + 'percentage': { + '_self': { + 'field': 'percentage', + 'default_value': 10, + 'mapping_to': 'vol_percentage' + } + }, + 'size': { + '_self': { + 'field': 'size', + 'default_value': '1G', + 'mapping_to': 'vol_size' + }, + } + } + } +} diff --git a/compass/tests/db/api/data/package_field/anytype.conf b/compass/tests/db/api/data/package_field/anytype.conf new file mode 100644 index 00000000..dd65c593 --- /dev/null +++ b/compass/tests/db/api/data/package_field/anytype.conf @@ -0,0 +1,2 @@ +NAME = 'anytype' +FIELD_TYPE = object diff --git a/compass/tests/db/api/data/package_field/dns.conf b/compass/tests/db/api/data/package_field/dns.conf new file mode 100644 index 00000000..b97b1544 --- /dev/null +++ b/compass/tests/db/api/data/package_field/dns.conf @@ -0,0 +1,2 @@ +NAME = 'dns' +VALIDATOR = is_valid_dns diff --git a/compass/tests/db/api/data/package_field/gateway.conf b/compass/tests/db/api/data/package_field/gateway.conf new file mode 100644 index 00000000..f9a3139e --- /dev/null +++ b/compass/tests/db/api/data/package_field/gateway.conf @@ -0,0 +1,2 @@ +NAME = 'gateway' +VALIDATOR = is_valid_gateway diff --git a/compass/tests/db/api/data/package_field/general.conf b/compass/tests/db/api/data/package_field/general.conf new file mode 100644 index 00000000..4d8cb371 --- /dev/null +++ b/compass/tests/db/api/data/package_field/general.conf @@ -0,0 +1 @@ +NAME = 'general' diff --git a/compass/tests/db/api/data/package_field/ip.conf b/compass/tests/db/api/data/package_field/ip.conf new file mode 100644 index 00000000..0389cef9 --- /dev/null +++ b/compass/tests/db/api/data/package_field/ip.conf @@ -0,0 +1,2 @@ +NAME = 'ip address' +VALIDATOR = is_valid_ip diff --git a/compass/tests/db/api/data/package_field/netmask.conf b/compass/tests/db/api/data/package_field/netmask.conf new file mode 100644 index 00000000..2dab8690 --- /dev/null +++ b/compass/tests/db/api/data/package_field/netmask.conf @@ -0,0 +1,2 @@ +NAME = 'netmask' +VALIDATOR = is_valid_netmask diff --git a/compass/tests/db/api/data/package_field/network.conf b/compass/tests/db/api/data/package_field/network.conf new file mode 100644 index 00000000..c7f627f3 --- /dev/null +++ b/compass/tests/db/api/data/package_field/network.conf @@ -0,0 +1,2 @@ +NAME = 'network' +VALIDATOR = is_valid_network diff --git a/compass/tests/db/api/data/package_field/password.conf b/compass/tests/db/api/data/package_field/password.conf new file mode 100644 index 00000000..bdb026e5 --- /dev/null +++ b/compass/tests/db/api/data/package_field/password.conf @@ -0,0 +1,3 @@ +NAME = 'password' +VALIDATOR = is_valid_password +DESCRIPTION = 'password' diff --git a/compass/tests/db/api/data/package_field/percentage.conf b/compass/tests/db/api/data/package_field/percentage.conf new file mode 100644 index 00000000..2e61c899 --- /dev/null +++ b/compass/tests/db/api/data/package_field/percentage.conf @@ -0,0 +1,3 @@ +NAME = 'percentage' +FIELD_TYPE = int +VALIDATOR = is_valid_percentage diff --git a/compass/tests/db/api/data/package_field/roles.conf b/compass/tests/db/api/data/package_field/roles.conf new file mode 100644 index 00000000..a0319ed2 --- /dev/null +++ b/compass/tests/db/api/data/package_field/roles.conf @@ -0,0 +1,3 @@ +NAME = 'roles' +FIELD_TYPE = list +DESCRIPTION = 'roles' diff --git a/compass/tests/db/api/data/package_field/size.conf b/compass/tests/db/api/data/package_field/size.conf new file mode 100644 index 00000000..b3b686e8 --- /dev/null +++ b/compass/tests/db/api/data/package_field/size.conf @@ -0,0 +1,2 @@ +NAME = 'size' +VALIDATOR = is_valid_size diff --git a/compass/tests/db/api/data/package_field/username.conf b/compass/tests/db/api/data/package_field/username.conf new file mode 100644 index 00000000..79907b1a --- /dev/null +++ b/compass/tests/db/api/data/package_field/username.conf @@ -0,0 +1,3 @@ +NAME = 'username' +VALIDATOR = is_valid_username +DESCRIPTION = 'username' diff --git a/compass/tests/db/api/data/package_installer/chef-icehouse.conf b/compass/tests/db/api/data/package_installer/chef-icehouse.conf new file mode 100644 index 00000000..ed820f05 --- /dev/null +++ b/compass/tests/db/api/data/package_installer/chef-icehouse.conf @@ -0,0 +1,8 @@ +NAME = 'chef_installer' +INSTANCE_NAME = 'chef_installer' +SETTINGS = { + 'chef_url': 'https://127.0.0.1', + 'key_dir': '', + 'client_name': '', + 'databags': ['user_passwords', 'db_passwords', 'service_passwords', 'secrets'] +} diff --git a/compass/tests/db/api/data/package_metadata/openstack.conf b/compass/tests/db/api/data/package_metadata/openstack.conf new file mode 100644 index 00000000..161fe42a --- /dev/null +++ b/compass/tests/db/api/data/package_metadata/openstack.conf @@ -0,0 +1,71 @@ +ADAPTER = 'openstack' +METADATA = { + 'security': { + '_self': { + 'required_in_whole_config': True, + }, + 'service_credentials': { + '_self': { + 'mapping_to': 'service_credentials' + }, + '$service': { + 'username': { + '_self': { + 'is_required': True, + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'field': 'password', + 'mapping_to': 'password' + } + } + } + }, + 'console_credentials': { + '$console': { + 'username': { + '_self': { + 'is_required': True, + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'field': 'password', + 'mapping_to': 'password' + } + } + } + } + }, + 'network_mapping': { + '_self': { + 'required_in_whole_config': True, + }, + '$interface_type': { + '_self': { + 'is_required': True, + 'field': 'anytype', + 'autofill_callback': autofill_network_mapping, + }, + 'interface': { + '_self': { + 'is_required': True, + 'field': 'general', + } + }, + 'subnet': { + '_self': { + 'is_required': False, + 'field': 'general' + } + } + } + } +} diff --git a/compass/tests/db/api/data/role/openstack_chef.conf b/compass/tests/db/api/data/role/openstack_chef.conf new file mode 100644 index 00000000..245f4cea --- /dev/null +++ b/compass/tests/db/api/data/role/openstack_chef.conf @@ -0,0 +1,44 @@ +ADAPTER_NAME = 'openstack_icehouse' +ROLES = [{ + 'role': 'os-compute-worker', + 'display_name': 'compute node', + 'description': 'compute node' +}, { + 'role': 'os-network', + 'display_name': 'network node', + 'description': 'network node' +}, { + 'role': 'os-block-storage-worker', + 'display_name': 'storage node', + 'description': 'storage node' +}, { + 'role': 'os-image', + 'display_name': 'image node', + 'description': 'image node' +}, { + 'role': 'os-compute-vncproxy', + 'display_name': 'vnc proxy node', + 'description': 'vnc proxy node' +}, { + 'role': 'os-controller', + 'display_name': 'controller node', + 'description': 'controller node' +}, { + 'role': 'os-ops-messaging', + 'display_name': 'message queue node', + 'description': 'message queue node' +}, { + 'role': 'os-ops-database', + 'display_name': 'database node', + 'description': 'database node' +}, { + 'role': 'ha-proxy', + 'display_name': 'ha proxy node', + 'description': 'ha proxy node', + 'optional': True +}, { + 'role': 'allinone-compute', + 'display_name': 'all in one compute', + 'description': 'all in one compute', + 'optional': True +}] diff --git a/compass/tests/db/api/test_adapter_holder.py b/compass/tests/db/api/test_adapter_holder.py new file mode 100644 index 00000000..1be6273a --- /dev/null +++ b/compass/tests/db/api/test_adapter_holder.py @@ -0,0 +1,149 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import datetime +import logging +import mock +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from base import BaseTest +from compass.db.api import adapter as adapter_api +from compass.db.api import adapter_holder as adapter +from compass.db.api import database +from compass.db.api import metadata as metadata_api +from compass.db.api import metadata_holder as metadata +from compass.db.api import user as user_api +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import util + + +class AdapterTestCase(unittest2.TestCase): + """Adapter base test case.""" + + def setUp(self): + super(AdapterTestCase, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + self.user_object = ( + user_api.get_user_object( + setting.COMPASS_ADMIN_EMAIL + ) + ) + + mock_config = mock.Mock() + self.backup_adapter_configs = util.load_configs + util.load_configs = mock_config + configs = [{ + 'NAME': 'openstack_test', + 'DISLAY_NAME': 'Test OpenStack Icehouse', + 'PACKAGE_INSTALLER': 'chef_installer', + 'OS_INSTALLER': 'cobbler', + 'SUPPORTED_OS_PATTERNS': ['(?i)centos.*', '(?i)ubuntu.*'], + 'DEPLOYABLE': True + }] + util.load_configs.return_value = configs + with database.session() as session: + adapter_api.add_adapters_internal(session) + adapter.load_adapters() + self.adapter_object = adapter.list_adapters(self.user_object) + for adapter_obj in self.adapter_object: + if adapter_obj['name'] == 'openstack_icehouse': + self.adapter_id = adapter_obj['id'] + break + + def tearDown(self): + super(AdapterTestCase, self).tearDown() + util.load_configs = self.backup_adapter_configs + reload(setting) + database.drop_db() + + +class TestListAdapters(AdapterTestCase): + """Test list adapters.""" + + def setUp(self): + super(TestListAdapters, self).setUp() + + def tearDown(self): + super(TestListAdapters, self).tearDown() + + def test_list_adapters(self): + adapters = adapter.list_adapters( + self.user_object + ) + result = [] + for item in adapters: + result.append(item['name']) + expects = [ + 'openstack_icehouse', + 'os_only', + 'ceph(chef)', + 'openstack_test' + ] + self.assertIsNotNone(adapters) + for expect in expects: + self.assertIn(expect, result) + + +class TestGetAdapter(AdapterTestCase): + """Test get adapter.""" + + def setUp(self): + super(TestGetAdapter, self).setUp() + + def tearDown(self): + super(TestGetAdapter, self).tearDown() + + def test_get_adapter(self): + get_adapter = adapter.get_adapter( + self.user_object, + self.adapter_id + ) + name = None + for k, v in get_adapter.items(): + if k == 'name': + name = v + self.assertIsNotNone(get_adapter) + self.assertEqual(name, 'openstack_icehouse') + + def test_adapter_not_exist(self): + self.assertRaises( + exception.RecordNotExists, + adapter.get_adapter, + self.user_object, + 99 + ) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/db/api/test_cluster.py b/compass/tests/db/api/test_cluster.py new file mode 100644 index 00000000..2a46e14c --- /dev/null +++ b/compass/tests/db/api/test_cluster.py @@ -0,0 +1,1981 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import datetime +import logging +import mock +import os +import sys +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from base import BaseTest +from compass.db.api import adapter as adapter_api +from compass.db.api import adapter_holder as adapter +from compass.db.api import cluster +from compass.db.api import database +from compass.db.api import host +from compass.db.api import machine +from compass.db.api import metadata as metadata_api +from compass.db.api import metadata_holder as metadata +from compass.db.api import network +from compass.db.api import switch +from compass.db.api import user as user_api +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import util + + +class ClusterTestCase(unittest2.TestCase): + """Cluster base test case.""" + + def setUp(self): + super(ClusterTestCase, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + adapter.load_adapters() + metadata.load_metadatas() + + self.user_object = ( + user_api.get_user_object( + setting.COMPASS_ADMIN_EMAIL + ) + ) + self.adapter_id = None + self.os_id = None + self.flavor_id = None + self.cluster_id = None + + # get adapter information + list_adapters = adapter.list_adapters(self.user_object) + for list_adapter in list_adapters: + for supported_os in list_adapter['supported_oses']: + self.os_id = supported_os['os_id'] + break + if list_adapter['flavors']: + details = list_adapter['flavors'] + for detail in details: + if detail['display_name'] == 'allinone': + roles = detail['roles'] + for role in roles: + self.adapter_id = role['adapter_id'] + self.flavor_id = role['flavor_id'] + break + + # add cluster + cluster_names = ['test_cluster1', 'test_cluster2'] + for cluster_name in cluster_names: + cluster.add_cluster( + self.user_object, + adapter_id=self.adapter_id, + os_id=self.os_id, + flavor_id=self.flavor_id, + name=cluster_name + ) + clusters = cluster.list_clusters(self.user_object) + self.roles = None + for list_cluster in clusters: + for item in list_cluster['flavor']['roles']: + self.roles = item + if list_cluster['name'] == 'test_cluster1': + self.cluster_id = list_cluster['id'] + break + + self.package_configs = { + 'security': { + 'service_credentials': { + '$service': { + 'username': 'root', + 'password': 'root' + } + }, + 'console_credentials': { + '$console': { + 'username': 'root', + 'password': 'root' + } + } + }, + 'network_mapping': { + '$interface_type': { + 'interface': 'eth0', + 'subnet': '10.145.88.0/23' + } + } + } + + self.os_configs = { + 'general': { + 'language': 'EN', + 'timezone': 'UTC', + 'http_proxy': 'http://127.0.0.1:3128', + 'https_proxy': 'http://127.0.0.1:3128', + 'no_proxy': [ + '127.0.0.1', + 'compass' + ], + 'ntp_server': '127.0.0.1', + 'dns_servers': [ + '127.0.0.1' + ], + 'domain': 'ods.com', + 'search_path': [ + 'ods.com' + ], + 'default_gateway': '127.0.0.1', + }, + 'server_credentials': { + 'username': 'root', + 'password': 'root', + }, + 'partition': { + '/var': { + 'max_size': '100G', + 'percentage': 10, + 'size': '1G' + } + } + } + # add cluster config + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + # add switch + switch.add_switch( + self.user_object, + ip='172.29.8.40' + ) + switches = switch.list_switches(self.user_object) + self.switch_id = None + for item in switches: + self.switch_id = item['id'] + macs = ['28:6e:d4:46:c4:25', '00:0c:29:bf:eb:1d'] + for mac in macs: + switch.add_switch_machine( + self.user_object, + self.switch_id, + mac=mac, + port='1' + ) + # get machine information + machines = machine.list_machines(self.user_object) + self.machine_ids = [] + for item in machines: + self.machine_ids.append(item['id']) + + # add cluster host + name = ['newname1', 'newname2'] + for i in range(0, 2): + cluster.add_cluster_host( + self.user_object, + self.cluster_id, + machine_id=self.machine_ids[i], + name=name[i] + ) + self.host_id = [] + self.clusterhost_id = [] + clusterhosts = cluster.list_clusterhosts(self.user_object) + for clusterhost in clusterhosts: + self.host_id.append(clusterhost['host_id']) + self.clusterhost_id.append(clusterhost['clusterhost_id']) + + # add log file + file_names = ['log_file1', 'log_file2'] + for file_name in file_names: + cluster.add_cluster_host_log_history( + self.user_object, + self.cluster_id, + self.host_id[0], + filename=file_name + ) + + # add subnet + subnets = ['10.145.88.0/23', '192.168.100.0/23'] + for subnet in subnets: + network.add_subnet( + self.user_object, + subnet=subnet + ) + list_subnet = network.list_subnets( + self.user_object + ) + self.subnet_ids = [] + for item in list_subnet: + self.subnet_ids.append(item['id']) + + # add host network + host.add_host_network( + self.user_object, + self.host_id[0], + interface='eth0', + ip='10.145.88.0', + subnet_id=self.subnet_ids[0], + is_mgmt=True + ) + host.add_host_network( + self.user_object, + self.host_id[0], + interface='eth1', + ip='10.145.88.10', + subnet_id=self.subnet_ids[0], + is_promiscuous=True + ) + host.list_host_networks( + self.user_object, + self.host_id[0] + ) + + def tearDown(self): + super(ClusterTestCase, self).tearDown() + + +class TestListClusters(ClusterTestCase): + """Test list clusters.""" + + def setUp(self): + super(TestListClusters, self).setUp() + + def tearDown(self): + super(TestListClusters, self).tearDown() + + def test_list_clusters(self): + clusters = cluster.list_clusters(self.user_object) + result = [] + for list_cluster in clusters: + result.append(list_cluster['name']) + expects = ['test_cluster1', 'test_cluster2'] + self.assertIsNotNone(clusters) + for expect in expects: + self.assertIn(expect, result) + + +class TestGetCluster(ClusterTestCase): + """Test get cluster.""" + + def setUp(self): + super(TestGetCluster, self).setUp() + + def tearDown(self): + super(TestGetCluster, self).tearDown() + + def test_get_cluster(self): + get_cluster = cluster.get_cluster( + self.user_object, + self.cluster_id + ) + self.assertIsNotNone(get_cluster) + self.assertEqual(get_cluster['name'], 'test_cluster1') + + def test_non_exsit_cluster_id(self): + self.assertRaises( + exception.RecordNotExists, + cluster.get_cluster, + self.user_object, + 99 + ) + + +class TestAddCluster(ClusterTestCase): + """Test add cluster.""" + + def setUp(self): + super(TestAddCluster, self).setUp() + + def tearDown(self): + super(TestAddCluster, self).tearDown() + + def test_add_cluster(self): + cluster.add_cluster( + self.user_object, + adapter_id=self.adapter_id, + os_id=self.os_id, + flavor_id=self.flavor_id, + name='test_add_cluster' + ) + add_clusters = cluster.list_clusters(self.user_object) + result = [] + for add_cluster in add_clusters: + result.append(add_cluster['name']) + self.assertIn('test_add_cluster', result) + + +class TestUpdateCluster(ClusterTestCase): + """Test update cluster.""" + + def setUp(self): + super(TestUpdateCluster, self).setUp() + + def tearDown(self): + super(TestUpdateCluster, self).tearDown() + + def test_update_cluster(self): + cluster.update_cluster( + self.user_object, + self.cluster_id, + name='test_update_cluster' + ) + update_cluster = cluster.get_cluster( + self.user_object, + self.cluster_id + ) + self.assertEqual(update_cluster['name'], 'test_update_cluster') + + def test_is_cluster_editable(self): + # state is INSTALLING + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.update_cluster, + self.user_object, + self.cluster_id, + name='cluster_editable' + ) + + #reinstall + self.assertRaises( + exception.Forbidden, + cluster.update_cluster, + self.user_object, + self.cluster_id, + reinstall_distributed_system=True + ) + + +class TestDelCluster(ClusterTestCase): + """Test delete cluster.""" + + def setUp(self): + super(TestDelCluster, self).setUp() + + def tearDown(self): + super(TestDelCluster, self).setUp() + + def test_del_cluster(self): + cluster.del_cluster( + self.user_object, + self.cluster_id + ) + del_clusters = cluster.list_clusters(self.user_object) + cluster_ids = [] + for del_cluster in del_clusters: + cluster_ids.append(del_cluster['id']) + self.assertNotIn(self.cluster_id, cluster_ids) + + def test_is_cluster_editable(self): + #state is INSTALLING + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.del_cluster, + self.user_object, + self.cluster_id, + ) + + +class TestGetClusterConfig(ClusterTestCase): + """Test get cluster config.""" + + def setUp(self): + super(TestGetClusterConfig, self).setUp() + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + + def tearDown(self): + super(TestGetClusterConfig, self).tearDown() + + def test_get_cluster_config(self): + cluster_config = cluster.get_cluster_config( + self.user_object, + self.cluster_id + ) + package_config = cluster_config['package_config'] + os_config = cluster_config['os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + +class TestGetClusterDeployedConfig(ClusterTestCase): + + def setUp(self): + super(TestGetClusterDeployedConfig, self).setUp() + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_id[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_id[0]] + } + ) + cluster.update_cluster_deployed_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + + def tearDown(self): + super(TestGetClusterDeployedConfig, self).tearDown() + + def test_get_cluster_deployed_config(self): + configs = cluster.get_cluster_deployed_config( + self.user_object, + self.cluster_id + ) + os_config = configs['deployed_os_config'] + package_config = configs['deployed_package_config'] + self.assertItemsEqual(os_config, self.os_configs) + self.assertItemsEqual(package_config, self.package_configs) + + +class TestGetClusterMetadata(ClusterTestCase): + """Test get cluster metadata.""" + + def setUp(self): + super(TestGetClusterMetadata, self).setUp() + + def tearDown(self): + super(TestGetClusterMetadata, self).tearDown() + + def test_get_cluster_metadata(self): + cluster_metadata = cluster.get_cluster_metadata( + self.user_object, + self.cluster_id + ) + results = [] + for k, v in cluster_metadata.items(): + results.append(k) + expected = ['os_config', 'package_config'] + self.assertIsNotNone(cluster_metadata) + for result in results: + self.assertIn(result, expected) + + +class TestUpdateClusterConfig(ClusterTestCase): + """Test update cluster config.""" + + def setUp(self): + super(TestUpdateClusterConfig, self).setUp() + + def tearDown(self): + super(TestUpdateClusterConfig, self).tearDown() + + def test_update_cluster_config(self): + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + put_os_config=self.os_configs, + put_package_config=self.package_configs + ) + update_cluster_config = cluster.get_cluster_config( + self.user_object, + self.cluster_id + ) + package_config = update_cluster_config['package_config'] + os_config = update_cluster_config['os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + +class TestPatchClusterConfig(ClusterTestCase): + """Test patch cluster config.""" + + def setUp(self): + super(TestPatchClusterConfig, self).setUp() + + def tearDown(self): + super(TestPatchClusterConfig, self).tearDown() + + def test_patch_cluster_config(self): + patch_cluster_config = cluster.patch_cluster_config( + self.user_object, + self.cluster_id, + package_config=self.package_configs, + os_config=self.os_configs + ) + package_config = patch_cluster_config['package_config'] + os_config = patch_cluster_config['os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + +class TestDelClusterConfig(ClusterTestCase): + """Test delete a cluster config.""" + + def setUp(self): + super(TestDelClusterConfig, self).setUp() + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + + def tearDown(self): + super(TestDelClusterConfig, self).tearDown() + + def test_del_cluster_config(self): + cluster.del_cluster_config( + self.user_object, + self.cluster_id + ) + del_cluster_config = cluster.get_cluster_config( + self.user_object, + self.cluster_id + ) + configs = [] + for k, v in del_cluster_config.items(): + if k == 'package_config' or k == 'os_config': + configs.append(v) + for config in configs: + self.assertEqual(config, {}) + + def test_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.del_cluster_config, + self.user_object, + self.cluster_id + ) + + +class TestListClusterHosts(ClusterTestCase): + """Test list cluster hosts.""" + + def setUp(self): + super(TestListClusterHosts, self).setUp() + + def tearDown(self): + super(TestListClusterHosts, self).tearDown() + + def test_list_cluster_hosts(self): + list_cluster_hosts = cluster.list_cluster_hosts( + self.user_object, + self.cluster_id + ) + results = [] + expected = ['28:6e:d4:46:c4:25', '00:0c:29:bf:eb:1d'] + for item in list_cluster_hosts: + results.append(item['mac']) + for result in results: + self.assertIn(result, expected) + + +class TestListClusterhosts(ClusterTestCase): + """Test list clusterhosts.""" + + def setUp(self): + super(TestListClusterhosts, self).setUp() + + def tearDown(self): + super(TestListClusterhosts, self).tearDown() + + def test_list_clusterhosts(self): + list_clusterhosts = cluster.list_clusterhosts(self.user_object) + results = [] + expected = ['28:6e:d4:46:c4:25', '00:0c:29:bf:eb:1d'] + for item in list_clusterhosts: + results.append(item['mac']) + for result in results: + self.assertIn(result, expected) + + +class TestGetClusterHost(ClusterTestCase): + """Test get cluster host.""" + + def setUp(self): + super(TestGetClusterHost, self).setUp() + + def tearDown(self): + super(TestGetClusterHost, self).tearDown() + + def test_get_cluster_host(self): + get_cluster_host = cluster.get_cluster_host( + self.user_object, + self.cluster_id, + self.host_id[1] + ) + self.assertEqual(get_cluster_host['mac'], '00:0c:29:bf:eb:1d') + + +class TestGetClusterhost(ClusterTestCase): + """Test get clusterhost.""" + + def setUp(self): + super(TestGetClusterhost, self).setUp() + + def tearDown(self): + super(TestGetClusterhost, self).tearDown() + + def test_get_clusterhost(self): + get_clusterhost = cluster.get_clusterhost( + self.user_object, + self.clusterhost_id[1] + ) + self.assertEqual(get_clusterhost['mac'], '00:0c:29:bf:eb:1d') + + +class TestAddClusterHost(ClusterTestCase): + """Test add cluster host.""" + + def setUp(self): + super(TestAddClusterHost, self).setUp() + switch.add_switch_machine( + self.user_object, + self.switch_id, + mac='00:0c:29:5b:ee:eb', + port='1' + ) + machines = machine.list_machines(self.user_object) + self.add_machine_id = None + for item in machines: + if item['mac'] == '00:0c:29:5b:ee:eb': + self.add_machine_id = item['id'] + + def tearDown(self): + super(TestAddClusterHost, self).tearDown() + + def test_add_cluster_host(self): + # add a cluster_host + cluster.add_cluster_host( + self.user_object, + self.cluster_id, + machine_id=self.add_machine_id, + name='test_add_cluster_host' + ) + add_cluster_hosts = cluster.list_clusterhosts(self.user_object) + result = [] + for item in add_cluster_hosts: + result.append(item['mac']) + self.assertIn('00:0c:29:5b:ee:eb', result) + + def test_is_cluster_editable(self): + # installing + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.add_cluster_host, + self.user_object, + self.cluster_id, + machine_id=self.add_machine_id + ) + + +class TestUpdateClusterHost(ClusterTestCase): + """Test update cluster host.""" + + def setUp(self): + super(TestUpdateClusterHost, self).setUp() + + def tearDown(self): + super(TestUpdateClusterHost, self).tearDown() + + def test_update_cluster_host(self): + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_id[0], + roles=['allinone-compute'] + ) + update_cluster_hosts = cluster.list_cluster_hosts( + self.user_object, + self.cluster_id + ) + result = None + for item in update_cluster_hosts: + if item['roles']: + result = item['roles'][0]['display_name'] + self.assertEqual(result, 'all in one compute') + + def test_invalid_role(self): + self.assertRaises( + exception.InvalidParameter, + cluster.update_cluster_host, + self.user_object, + self.cluster_id, + self.host_id[0], + roles=['invalid_role'] + ) + + def test_is_cluster_editable(self): + # state is INSTALLING + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.update_cluster_host, + self.user_object, + self.cluster_id, + self.host_id[0], + ) + + +class TestUpdateClusterhost(ClusterTestCase): + """Test update clusterhost.""" + + def setUp(self): + super(TestUpdateClusterhost, self).setUp() + + def tearDown(self): + super(TestUpdateClusterhost, self).tearDown() + + def test_update_clusterhost(self): + cluster.update_clusterhost( + self.user_object, + self.clusterhost_id[0], + roles=['allinone-compute'] + ) + update_clusterhosts = cluster.list_clusterhosts( + self.user_object, + ) + result = None + for item in update_clusterhosts: + if item['roles']: + result = item['roles'][0]['display_name'] + self.assertEqual(result, 'all in one compute') + + def test_invalid_role(self): + self.assertRaises( + exception.InvalidParameter, + cluster.update_clusterhost, + self.user_object, + self.clusterhost_id[0], + roles=['invalid_role'] + ) + + def test_is_cluster_editable(self): + # state is INSTALLING + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.update_clusterhost, + self.user_object, + self.clusterhost_id[0] + ) + + +class TestPatchClusterHost(ClusterTestCase): + + def setUp(self): + super(TestPatchClusterHost, self).setUp() + + def tearDown(self): + super(TestPatchClusterHost, self).tearDown() + + def test_patch_cluster_host(self): + cluster.patch_cluster_host( + self.user_object, + self.cluster_id, + self.host_id[0], + roles=['allinone-compute'] + ) + patch = cluster.list_cluster_hosts( + self.user_object, + self.cluster_id + ) + result = None + for item in patch: + for role in item['roles']: + result = role['display_name'] + self.assertEqual(result, 'all in one compute') + + def test_is_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.patch_cluster_host, + self.user_object, + self.cluster_id, + self.host_id[0] + ) + + +class TestPatchClusterhost(ClusterTestCase): + def setUp(self): + super(TestPatchClusterhost, self).setUp() + + def tearDown(self): + super(TestPatchClusterhost, self).tearDown() + + def test_patch_clusterhost(self): + cluster.patch_clusterhost( + self.user_object, + self.clusterhost_id[0], + roles=['allinone-compute'] + ) + patch = cluster.list_cluster_hosts( + self.user_object, + self.cluster_id + ) + result = None + for item in patch: + for role in item['roles']: + result = role['display_name'] + self.assertEqual(result, 'all in one compute') + + def testi_is_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.patch_clusterhost, + self.user_object, + self.clusterhost_id[0] + ) + + +class TestDelClusterHost(ClusterTestCase): + """test delete cluster host.""" + + def setUp(self): + super(TestDelClusterHost, self).setUp() + + def tearDown(self): + super(TestDelClusterHost, self).tearDown() + + def test_del_cluster_host(self): + cluster.del_cluster_host( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + del_cluster_host = cluster.list_cluster_hosts( + self.user_object, + self.cluster_id + ) + result = [] + for item in del_cluster_host: + result.append(item['hostname']) + self.assertNotIn('newname1', result) + + def test_is_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.del_cluster_host, + self.user_object, + self.cluster_id, + self.host_id[0] + ) + + +class TestDelClusterhost(ClusterTestCase): + """test delete clusterhost.""" + + def setUp(self): + super(TestDelClusterhost, self).setUp() + + def tearDown(self): + super(TestDelClusterhost, self).tearDown() + + def test_del_clusterhost(self): + cluster.del_clusterhost( + self.user_object, + self.clusterhost_id[0] + ) + del_clusterhost = cluster.list_clusterhosts(self.user_object) + result = [] + for item in del_clusterhost: + result.append(item['hostname']) + self.assertNotIn('newname1', result) + + def test_is_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.del_clusterhost, + self.user_object, + self.clusterhost_id[0] + ) + + +class TestGetClusterHostConfig(ClusterTestCase): + """Test get cluster host config.""" + + def setUp(self): + super(TestGetClusterHostConfig, self).setUp() + cluster.update_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + def tearDown(self): + super(TestGetClusterHostConfig, self).tearDown() + + def test_get_cluster_host_config(self): + configs = cluster.get_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + package_config = configs['package_config'] + os_config = configs['os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + +class TestGetClusterhostConfig(ClusterTestCase): + """Test get clusterhost config.""" + + def setUp(self): + super(TestGetClusterhostConfig, self).setUp() + cluster.update_clusterhost_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + def tesrDown(self): + super(TestGetClusterhostConfig, self).tearDown() + + def test_get_clusterhost_config(self): + configs = cluster.get_clusterhost_config( + self.user_object, + self.clusterhost_id[0] + ) + package_config = configs['package_config'] + os_config = configs['os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + +class TestGetClusterHostDeployedConfig(ClusterTestCase): + + def setUp(self): + super(TestGetClusterHostDeployedConfig, self).setUp() + cluster.update_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_id[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_id[0]] + } + ) + cluster.update_cluster_host_deployed_config( + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + def tearDown(self): + super(TestGetClusterHostDeployedConfig, self).tearDown() + + def test_get_cluster_host_deployed_config(self): + configs = cluster.get_cluster_host_deployed_config( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + package_config = configs['deployed_package_config'] + os_config = configs['deployed_os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + +class TestGetClusterhostDeployedConfig(ClusterTestCase): + """Test get clusterhost deployed config.""" + + def setUp(self): + super(TestGetClusterhostDeployedConfig, self).setUp() + cluster.update_clusterhost_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_clusterhost( + self.user_object, + self.clusterhost_id[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_id[0]] + } + ) + cluster.update_clusterhost_deployed_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + def tearDown(self): + super(TestGetClusterhostDeployedConfig, self).tearDown() + + def test_get_clusterhost_deployed_config(self): + configs = cluster.get_clusterhost_deployed_config( + self.user_object, + self.clusterhost_id[0] + ) + package_config = configs['deployed_package_config'] + os_config = configs['deployed_os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + +class TestUpdateClusterHostConfig(ClusterTestCase): + """Test update cluster host config.""" + + def setUp(self): + super(TestUpdateClusterHostConfig, self).setUp() + + def tearDown(self): + super(TestUpdateClusterHostConfig, self).tearDown() + + def test_update_cluster_host_config(self): + cluster.update_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + config = cluster.get_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + package_configs = config['package_config'] + os_configs = config['os_config'] + self.assertItemsEqual(package_configs, self.package_configs) + self.assertItemsEqual(os_configs, self.os_configs) + + def test_is_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.update_cluster_host_config, + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + +class TestUpdateClusterHostDeployedConfig(ClusterTestCase): + """Test update cluster host deployed config.""" + + def setUp(self): + super(TestUpdateClusterHostDeployedConfig, self).setUp() + cluster.update_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_clusterhost( + self.user_object, + self.clusterhost_id[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'clusterhosts': [self.clusterhost_id[0]] + } + ) + + def tearDown(self): + super(TestUpdateClusterHostDeployedConfig, self).tearDown() + + def test_udpate_cluster_host_deployed_config(self): + cluster.update_cluster_host_deployed_config( + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + configs = cluster.get_cluster_host_deployed_config( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + package_config = configs['deployed_package_config'] + os_config = configs['deployed_os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + +class TestUpdateClusterhostConfig(ClusterTestCase): + """Test update clusterhost config.""" + + def setUp(self): + super(TestUpdateClusterhostConfig, self).setUp() + + def tearDown(self): + super(TestUpdateClusterhostConfig, self).tearDown() + + def test_update_clusterhost_config(self): + cluster.update_clusterhost_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + configs = cluster.get_clusterhost_config( + self.user_object, + self.clusterhost_id[0] + ) + package_config = configs['package_config'] + os_config = configs['os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + def test_id_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.update_clusterhost_config, + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + +class TestUpdateClusterhostDeployedConfig(ClusterTestCase): + """Test update clusterhost config.""" + + def setUp(self): + super(TestUpdateClusterhostDeployedConfig, self).setUp() + cluster.update_clusterhost_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_id[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'clusterhosts': [self.clusterhost_id[0]] + } + ) + + def tearDown(self): + super(TestUpdateClusterhostDeployedConfig, self).tearDown() + + def test_update_clusterhost_config(self): + cluster.update_clusterhost_deployed_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + configs = cluster.get_clusterhost_deployed_config( + self.user_object, + self.clusterhost_id[0] + ) + package_config = configs['deployed_package_config'] + os_config = configs['deployed_os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + +class TestPatchClusterHostConfig(ClusterTestCase): + """Test patch cluster host config.""" + + def setUp(self): + super(TestPatchClusterHostConfig, self).setUp() + + def tearDown(self): + super(TestPatchClusterHostConfig, self).tearDown() + + def test_patch_cluster_host_config(self): + cluster.patch_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + configs = cluster.get_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + package_config = configs['package_config'] + os_config = configs['os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + def test_is_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.patch_cluster_host_config, + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + +class TestPatchClusterhostConfig(ClusterTestCase): + """Test patch clusterhost config.""" + + def setUp(self): + super(TestPatchClusterhostConfig, self).setUp() + + def tearDown(self): + super(TestPatchClusterhostConfig, self).tearDown() + + def test_patch_clusterhost_config(self): + cluster.patch_clusterhost_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + config = cluster.get_clusterhost_config( + self.user_object, + self.clusterhost_id[0] + ) + package_config = config['package_config'] + os_config = config['os_config'] + self.assertItemsEqual(package_config, self.package_configs) + self.assertItemsEqual(os_config, self.os_configs) + + def test_is_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.patch_clusterhost_config, + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + +class TestDeleteClusterHostConfig(ClusterTestCase): + """Test delete cluster host config.""" + + def setUp(self): + super(TestDeleteClusterHostConfig, self).setUp() + cluster.update_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + def tearDown(self): + super(TestDeleteClusterHostConfig, self).tearDown() + + def test_delete_cluster_host_config(self): + cluster.delete_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0], + ) + del_cluster_host_config = cluster.get_cluster_host_config( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + configs = [] + for k, v in del_cluster_host_config.items(): + if k == 'package_config': + configs.append(v) + for config in configs: + self.assertEqual(config, {}) + + def test_is_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.delete_cluster_host_config, + self.user_object, + self.cluster_id, + self.host_id[0] + ) + + +class TestDeleteClusterhostConfig(ClusterTestCase): + """Test delete clusterhost config.""" + + def setUp(self): + super(TestDeleteClusterhostConfig, self).setUp() + cluster.update_clusterhost_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + + def tearDown(self): + super(TestDeleteClusterhostConfig, self).setUp() + + def test_delete_clusterhost_config(self): + cluster.delete_clusterhost_config( + self.user_object, + self.clusterhost_id[0] + ) + del_clusterhost_config = cluster.get_clusterhost_config( + self.user_object, + self.clusterhost_id[0] + ) + configs = [] + for k, v in del_clusterhost_config.items(): + if k == 'package_config': + configs.append(v) + for config in configs: + self.assertEqual(config, {}) + + def test_is_cluster_editable(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + cluster.delete_clusterhost_config, + self.user_object, + self.clusterhost_id[0] + ) + + +class TestUpdateClusterHosts(ClusterTestCase): + """Test update cluster hosts.""" + + def setUp(self): + super(TestUpdateClusterHosts, self).setUp() + switch.add_switch_machine( + self.user_object, + self.switch_id, + mac='00:0c:29:5b:ee:eb', + port='1' + ) + machines = machine.list_machines(self.user_object) + self.add_machine_id = None + for item in machines: + if item['mac'] == '00:0c:29:5b:ee:eb': + self.add_machine_id = item['id'] + + def tearDown(self): + super(TestUpdateClusterHosts, self).tearDown() + + def test_update_cluster_hosts(self): + # remove host + cluster.update_cluster_hosts( + self.user_object, + self.cluster_id, + remove_hosts={'hosts': self.host_id[0]} + ) + remove_hosts = cluster.list_cluster_hosts( + self.user_object, + self.cluster_id + ) + result = None + for item in remove_hosts: + result = item + self.assertNotIn(self.host_id[0], result) + + #add host + cluster.update_cluster_hosts( + self.user_object, + self.cluster_id, + add_hosts={'machines': [{'machine_id': self.add_machine_id}]} + ) + add_hosts = cluster.list_cluster_hosts( + self.user_object, + self.cluster_id + ) + result = None + for item in add_hosts: + if item['machine_id'] == self.add_machine_id: + result = item['mac'] + self.assertEqual(result, '00:0c:29:5b:ee:eb') + + +class TestReviewCluster(ClusterTestCase): + """Test review cluster.""" + + def setUp(self): + super(TestReviewCluster, self).setUp() + cluster.update_clusterhost_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_id[0], + roles=['allinone-compute'] + ) + + def tearDown(self): + super(TestReviewCluster, self).tearDown() + + def test_review_cluster(self): + review_cluster = cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_id[0]] + } + ) + cluster_package_config = None + cluster_os_config = None + for k, v in review_cluster['cluster'].items(): + if k == 'package_config': + cluster_package_config = v + if k == 'os_config': + cluster_os_config = v + host_package_config = None + host_package_config = None + for item in review_cluster['hosts']: + for k, v in item.items(): + if k == 'package_config': + host_package_config = v + if k == 'os_config': + host_os_config = v + self.assertItemsEqual(cluster_package_config, self.package_configs) + self.assertItemsEqual(cluster_os_config, self.os_configs) + self.assertItemsEqual(host_package_config, self.package_configs) + self.assertItemsEqual(host_os_config, self.os_configs) + + +class TestDeployedCluster(ClusterTestCase): + """Test deployed cluster.""" + + def setUp(self): + super(TestDeployedCluster, self).setUp() + cluster.update_clusterhost_config( + self.user_object, + self.clusterhost_id[0], + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_id[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_id[0]], + 'clusterhosts': [self.clusterhost_id[0]] + } + ) + + def tearDown(self): + super(TestDeployedCluster, self).tearDown() + + def test_deploy_cluster(self): + from compass.tasks import client as celery_client + celery_client.celery.send_task = mock.Mock() + deploy_cluster = cluster.deploy_cluster( + self.user_object, + self.cluster_id, + deploy={ + 'hosts': [self.host_id[0]], + } + ) + cluster_package_config = None + cluster_os_config = None + for k, v in deploy_cluster['cluster'].items(): + if k == 'package_config': + cluster_package_config = v + if k == 'os_config': + cluster_os_config = v + self.assertItemsEqual(cluster_package_config, self.package_configs) + self.assertItemsEqual(cluster_os_config, self.os_configs) + expecteds = { + 'clusterhost_id': self.clusterhost_id[0], + 'cluster_id': self.cluster_id, + 'hostname': 'newname1', + 'mac': '28:6e:d4:46:c4:25', + 'clustername': 'test_cluster1' + } + result = None + for item in deploy_cluster['hosts']: + result = item + self.assertDictContainsSubset(expecteds, result) + + +class TestGetClusterState(ClusterTestCase): + """Test get cluster state.""" + + def setUp(self): + super(TestGetClusterState, self).setUp() + + def tearDown(self): + super(TestGetClusterState, self).tearDown() + + def test_get_cluster_state(self): + cluster_state = cluster.get_cluster_state( + self.user_object, + self.cluster_id + ) + self.assertEqual(cluster_state['state'], 'UNINITIALIZED') + + +class TestGetClusterHostState(ClusterTestCase): + """Test get cluster host state.""" + + def setUp(self): + super(TestGetClusterHostState, self).setUp() + + def tearDown(self): + super(TestGetClusterHostState, self).tearDown() + + def test_get_cluster_host_state(self): + cluster_host_state = cluster.get_cluster_host_state( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + self.assertEqual(cluster_host_state['state'], 'UNINITIALIZED') + + +class TestGetClusterHostSelfState(ClusterTestCase): + """Test get cluster hosts self state.""" + + def setUp(self): + super(TestGetClusterHostSelfState, self).setUp() + + def tearDown(self): + super(TestGetClusterHostSelfState, self).tearDown() + + def test_get_cluster_host_self_state(self): + cluster_host_self_state = cluster.get_cluster_host_self_state( + self.user_object, + self.cluster_id, + self.host_id + ) + self.assertEqual(cluster_host_self_state['state'], 'UNINITIALIZED') + + +class TestGetClusterhostState(ClusterTestCase): + """Test get clusterhost state.""" + + def setUp(self): + super(TestGetClusterhostState, self).setUp() + + def tearDown(self): + super(TestGetClusterhostState, self).tearDown() + + def test_get_clusterhost_state(self): + clusterhost_state = cluster.get_clusterhost_state( + self.user_object, + self.clusterhost_id[0], + ) + self.assertEqual(clusterhost_state['state'], 'UNINITIALIZED') + + +class TestGetClusterhostSelfState(ClusterTestCase): + """Test get clusterhost state.""" + + def setUp(self): + super(TestGetClusterhostSelfState, self).setUp() + + def tearDown(self): + super(TestGetClusterhostSelfState, self).tearDown() + + def test_get_clusterhost_state(self): + clusterhost_state = cluster.get_clusterhost_self_state( + self.user_object, + self.clusterhost_id[0] + ) + self.assertEqual(clusterhost_state['state'], 'UNINITIALIZED') + + +class TestUpdateClusterHostState(ClusterTestCase): + """Test update cluster host state.""" + + def setUp(self): + super(TestUpdateClusterHostState, self).setUp() + + def tearDown(self): + super(TestUpdateClusterHostState, self).tearDown() + + def test_update_cluster_host_state(self): + cluster.update_cluster_host_state( + self.user_object, + self.cluster_id, + self.host_id, + state='INSTALLING' + ) + update_state = cluster.get_cluster_host_state( + self.user_object, + self.cluster_id, + self.host_id + ) + self.assertEqual(update_state['state'], 'INSTALLING') + + +class TestUpdateClusterhostState(ClusterTestCase): + """Test update clusterhost state.""" + + def setUp(self): + super(TestUpdateClusterhostState, self).setUp() + + def tearDown(self): + super(TestUpdateClusterhostState, self).tearDown() + + def test_update_clusterhost_state(self): + cluster.update_clusterhost_state( + self.user_object, + self.clusterhost_id[0], + state='INSTALLING' + ) + clusterhost_state = cluster.get_clusterhost_state( + self.user_object, + self.clusterhost_id[0] + ) + self.assertEqual(clusterhost_state['state'], 'INSTALLING') + + +class TestUpdateClusterState(ClusterTestCase): + """Test update cluster state.""" + + def setUp(self): + super(TestUpdateClusterState, self).setUp() + + def tearDown(self): + super(TestUpdateClusterState, self).tearDown() + + def test_update_cluster_state(self): + cluster.update_cluster_state( + self.user_object, + self.cluster_id, + state='INSTALLING' + ) + cluster_state = cluster.get_cluster_state( + self.user_object, + self.cluster_id + ) + self.assertEqual(cluster_state['state'], 'INSTALLING') + + +class TestGetClusterHostLogHistories(ClusterTestCase): + """Test get cluster host log histories.""" + + def setUp(self): + super(TestGetClusterHostLogHistories, self).setUp() + + def tearDown(self): + super(TestGetClusterHostLogHistories, self).tearDown() + + def test_get_cluster_host_log_histories(self): + logs = cluster.get_cluster_host_log_histories( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + result = [] + for log in logs: + result.append(log['filename']) + for item in result: + self.assertEqual(result, ['log_file1', 'log_file2']) + + +class TestGetClusterhostLogHistories(ClusterTestCase): + """Test get clusterhost log histories.""" + + def setUp(self): + super(TestGetClusterhostLogHistories, self).setUp() + + def tearDown(self): + super(TestGetClusterhostLogHistories, self).tearDown() + + def test_get_clusterhost_log_histories(self): + logs = cluster.get_clusterhost_log_histories( + self.user_object, + self.clusterhost_id[0], + ) + result = [] + for log in logs: + result.append(log['filename']) + for item in result: + self.assertEqual(result, ['log_file1', 'log_file2']) + + +class TestGetClusterHostLogHistory(ClusterTestCase): + """Test get cluster host log history.""" + + def setUp(self): + super(TestGetClusterHostLogHistory, self).setUp() + + def tearDown(self): + super(TestGetClusterHostLogHistory, self).tearDown() + + def test_get_cluster_host_log_history(self): + log = cluster.get_cluster_host_log_history( + self.user_object, + self.cluster_id, + self.host_id[0], + 'log_file1' + ) + self.assertEqual(log['filename'], 'log_file1') + + +class TestGetClusterhostLogHistory(ClusterTestCase): + """Test get clusterhost log history.""" + + def setUp(self): + super(TestGetClusterhostLogHistory, self).setUp() + + def tearDown(self): + super(TestGetClusterhostLogHistory, self).tearDown() + + def test_get_clusterhost_log_history(self): + log = cluster.get_clusterhost_log_history( + self.user_object, + self.clusterhost_id[0], + 'log_file1' + ) + self.assertEqual(log['filename'], 'log_file1') + + +class TestUpdateClusterHostLogHistory(ClusterTestCase): + """Test update cluster host log history.""" + + def setUp(self): + super(TestUpdateClusterHostLogHistory, self).setUp() + + def tearDown(self): + super(TestUpdateClusterHostLogHistory, self).tearDown() + + def test_update_cluster_host_log_history(self): + cluster.update_cluster_host_log_history( + self.user_object, + self.cluster_id, + self.host_id[0], + 'log_file1', + severity='WARNING', + message='test update cluster host log history.' + ) + update_log = cluster.get_cluster_host_log_history( + self.user_object, + self.cluster_id, + self.host_id[0], + 'log_file1' + ) + self.assertEqual(update_log['severity'], 'WARNING') + + +class TestUpdateClusterhostLogHistory(ClusterTestCase): + """Test update clusterhost log history.""" + + def setUp(self): + super(TestUpdateClusterhostLogHistory, self).setUp() + + def tearDown(self): + super(TestUpdateClusterhostLogHistory, self).tearDown() + + def test_update_clusterhost_log_history(self): + cluster.update_clusterhost_log_history( + self.user_object, + self.clusterhost_id[0], + 'log_file1', + severity='WARNING', + message='test update clusterhost log history.' + ) + update_log = cluster.get_clusterhost_log_history( + self.user_object, + self.clusterhost_id[0], + 'log_file1' + ) + self.assertEqual(update_log['severity'], 'WARNING') + + +class TestAddClusterhostLogHistory(ClusterTestCase): + """Test add clusterhost log history.""" + + def setUp(self): + super(TestAddClusterhostLogHistory, self).setUp() + + def tearDown(self): + super(TestAddClusterhostLogHistory, self).tearDown() + + def test_add_clusterhost_log_history(self): + cluster.add_clusterhost_log_history( + self.user_object, + self.clusterhost_id[0], + filename='add_log_file' + + ) + logs = cluster.get_clusterhost_log_histories( + self.user_object, + self.clusterhost_id[0] + ) + result = [] + for log in logs: + result.append(log['filename']) + self.assertIn('add_log_file', result) + + +class TestAddClusterHostLogHistory(ClusterTestCase): + """Test add cluster host log history.""" + + def setUp(self): + super(TestAddClusterHostLogHistory, self).setUp() + + def tearDown(self): + super(TestAddClusterHostLogHistory, self).tearDown() + + def test_add_cluster_host_log_history(self): + cluster.add_cluster_host_log_history( + self.user_object, + self.cluster_id, + self.host_id[0], + filename='add_log_file' + ) + logs = cluster.get_cluster_host_log_histories( + self.user_object, + self.cluster_id, + self.host_id[0] + ) + result = [] + for log in logs: + result.append(log['filename']) + self.assertIn('add_log_file', result) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/db/api/test_host.py b/compass/tests/db/api/test_host.py new file mode 100644 index 00000000..e13c6b6a --- /dev/null +++ b/compass/tests/db/api/test_host.py @@ -0,0 +1,1319 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import datetime +import logging +import mock +import os +import sys +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from base import BaseTest +from compass.db.api import adapter as adapter_api +from compass.db.api import adapter_holder as adapter +from compass.db.api import cluster +from compass.db.api import database +from compass.db.api import host +from compass.db.api import machine +from compass.db.api import metadata as metadata_api +from compass.db.api import metadata_holder as metadata +from compass.db.api import network +from compass.db.api import switch +from compass.db.api import user as user_api +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import util + + +class HostTestCase(unittest2.TestCase): + """Host case test case.""" + + def setUp(self): + super(HostTestCase, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + adapter.load_adapters() + metadata.load_metadatas() + + self.user_object = ( + user_api.get_user_object( + setting.COMPASS_ADMIN_EMAIL + ) + ) + # get adapter information + list_adapters = adapter.list_adapters(self.user_object) + for list_adapter in list_adapters: + for supported_os in list_adapter['supported_oses']: + self.os_id = supported_os['os_id'] + break + if list_adapter['flavors']: + details = list_adapter['flavors'] + for detail in details: + if detail['display_name'] == 'allinone': + roles = detail['roles'] + for role in roles: + self.adapter_id = role['adapter_id'] + self.flavor_id = role['flavor_id'] + break + + # add cluster + cluster_names = ['test_cluster1', 'test_cluster2'] + for cluster_name in cluster_names: + cluster.add_cluster( + self.user_object, + adapter_id=self.adapter_id, + os_id=self.os_id, + flavor_id=self.flavor_id, + name=cluster_name + ) + clusters = cluster.list_clusters(self.user_object) + self.roles = None + for list_cluster in clusters: + for item in list_cluster['flavor']['roles']: + self.roles = item + if list_cluster['name'] == 'test_cluster1': + self.cluster_id = list_cluster['id'] + break + # add switch + switch.add_switch( + self.user_object, + ip='172.29.8.40' + ) + switches = switch.list_switches(self.user_object) + self.switch_id = None + for item in switches: + self.switch_id = item['id'] + macs = ['28:6e:d4:46:c4:25', '00:0c:29:bf:eb:1d'] + for mac in macs: + switch.add_switch_machine( + self.user_object, + self.switch_id, + mac=mac, + port='1' + ) + # get machine information + machines = machine.list_machines(self.user_object) + self.machine_ids = [] + for item in machines: + self.machine_ids.append(item['id']) + # add cluster host + name = ['newname1', 'newname2'] + for i in range(0, 2): + cluster.add_cluster_host( + self.user_object, + self.cluster_id, + machine_id=self.machine_ids[i], + name=name[i] + ) + self.host_ids = [] + clusterhosts = cluster.list_clusterhosts(self.user_object) + for clusterhost in clusterhosts: + self.host_ids.append(clusterhost['host_id']) + # add subnet + subnets = ['10.145.88.0/23', '192.168.100.0/23'] + for subnet in subnets: + network.add_subnet( + self.user_object, + subnet=subnet + ) + list_subnet = network.list_subnets( + self.user_object + ) + self.subnet_ids = [] + for item in list_subnet: + self.subnet_ids.append(item['id']) + # add host network + host.add_host_network( + self.user_object, + self.host_ids[0], + interface='eth0', + ip='10.145.88.0', + subnet_id=self.subnet_ids[0], + is_mgmt=True + ) + host.add_host_network( + self.user_object, + self.host_ids[1], + interface='eth1', + ip='192.168.100.0', + subnet_id=self.subnet_ids[1], + is_promiscuous=True + ) + # add log history + filenames = ['log1', 'log2'] + for filename in filenames: + host.add_host_log_history( + self.user_object, + self.host_ids[0], + filename=filename + ) + + self.os_configs = { + 'general': { + 'language': 'EN', + 'timezone': 'UTC', + 'http_proxy': 'http://127.0.0.1:3128', + 'https_proxy': 'http://127.0.0.1:3128', + 'no_proxy': [ + '127.0.0.1', + 'compass' + ], + 'ntp_server': '127.0.0.1', + 'dns_servers': [ + '127.0.0.1' + ], + 'domain': 'ods.com', + 'search_path': [ + 'ods.com' + ], + 'default_gateway': '127.0.0.1', + }, + 'server_credentials': { + 'username': 'root', + 'password': 'root', + }, + 'partition': { + '/var': { + 'max_size': '100G', + 'percentage': 10, + 'size': '1G' + } + } + } + self.package_configs = { + 'security': { + 'service_credentials': { + '$service': { + 'username': 'root', + 'password': 'root' + } + }, + 'console_credentials': { + '$console': { + 'username': 'root', + 'password': 'root' + } + } + }, + 'network_mapping': { + '$interface_type': 'eth0' + } + } + + +class TestListHosts(HostTestCase): + """Test list hosts.""" + + def setUp(self): + super(TestListHosts, self).setUp() + + def tearDown(self): + super(TestListHosts, self).tearDown() + + def test_list_hosts(self): + list_hosts = host.list_hosts( + self.user_object + ) + result = [] + for list_host in list_hosts: + result.append(list_host['name']) + for item in result: + self.assertIn(item, ['newname1', 'newname2']) + + +class TestListMachinesOrHosts(HostTestCase): + """Test list machines or hosts.""" + + def setUp(self): + super(TestListMachinesOrHosts, self).setUp() + + def tearDown(self): + super(TestListMachinesOrHosts, self).tearDown() + + def test_list__hosts(self): + list_hosts = host.list_machines_or_hosts( + self.user_object + ) + result = [] + for list_host in list_hosts: + result.append(list_host['name']) + for item in result: + self.assertIn(item, ['newname1', 'newname2']) + + def test_list_machines(self): + host.del_host( + self.user_object, + self.host_ids[0] + ) + host.del_host( + self.user_object, + self.host_ids[1] + ) + list_hosts = host.list_machines_or_hosts( + self.user_object + ) + macs = [] + names = [] + for list_host in list_hosts: + for k, v in list_host.iteritems(): + if k == 'mac': + macs.append(v) + if k == 'name': + names.append(v) + for mac in macs: + self.assertIn(mac, ['28:6e:d4:46:c4:25', '00:0c:29:bf:eb:1d']) + self.assertEqual(names, []) + + +class TestGetHost(HostTestCase): + """Test get host.""" + + def setUp(self): + super(TestGetHost, self).setUp() + + def tearDown(self): + super(TestGetHost, self).tearDown() + + def test_get_host(self): + get_host = host.get_host( + self.user_object, + self.host_ids[0] + ) + self.assertIsNotNone(get_host) + self.assertEqual(get_host['mac'], '28:6e:d4:46:c4:25') + + +class TestGetMachineOrHost(HostTestCase): + """Test get machine or host.""" + + def setUp(self): + super(TestGetMachineOrHost, self).setUp() + + def tearDown(self): + super(TestGetMachineOrHost, self).tearDown() + + def test_get_host(self): + get_host = host.get_machine_or_host( + self.user_object, + self.host_ids[0] + ) + self.assertIsNotNone(get_host) + self.assertEqual(get_host['mac'], '28:6e:d4:46:c4:25') + + def test_get_machine(self): + host.del_host( + self.user_object, + self.host_ids[0] + ) + get_machine = host.get_machine_or_host( + self.user_object, + self.host_ids[0] + ) + name = [] + for k, v in get_machine.items(): + if k == 'name': + name.append(v) + self.assertEqual(name, []) + self.assertEqual(get_machine['mac'], '28:6e:d4:46:c4:25') + + +class TestGetHostClusters(HostTestCase): + """Test get host clusters.""" + + def setUp(self): + super(TestGetHostClusters, self).setUp() + + def tearDown(self): + super(TestGetHostClusters, self).tearDown() + + def test_get_host_clusters(self): + host_clusters = host.get_host_clusters( + self.user_object, + self.host_ids[0] + ) + name = None + for item in host_clusters: + name = item['name'] + self.assertEqual(name, 'test_cluster1') + + +class TestUpdateHost(HostTestCase): + """Test update host.""" + + def setUp(self): + super(TestUpdateHost, self).setUp() + + def tearDown(self): + super(TestUpdateHost, self).tearDown() + + def test_update_host(self): + host.update_host( + self.user_object, + self.host_ids[0], + name='update_test_name' + ) + update_host = host.get_host( + self.user_object, + self.host_ids[0] + ) + self.assertEqual(update_host['name'], 'update_test_name') + + def test_is_host_etitable(self): + host.update_host_state( + self.user_object, + self.host_ids[0], + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + host.update_host, + self.user_object, + self.host_ids[0], + name='invalid' + ) + + def test_invalid_parameter(self): + self.assertRaises( + exception.InvalidParameter, + host.update_host, + self.user_object, + self.host_ids[1], + name='newname1' + ) + + +class TestUpdateHosts(HostTestCase): + """Test update hosts.""" + + def setUp(self): + super(TestUpdateHosts, self).setUp() + + def tearDown(self): + super(TestUpdateHosts, self).tearDown() + + def test_update_hosts(self): + update_hosts = host.update_hosts( + self.user_object, + data=[ + { + 'host_id': self.host_ids[0], + 'name': 'test_update1' + }, + { + 'host_id': self.host_ids[1], + 'name': 'test_update2' + } + ] + ) + results = [] + for update_host in update_hosts: + results.append(update_host['name']) + for result in results: + self.assertIn(result, ['test_update1', 'test_update2']) + + +class TestDelHost(HostTestCase): + """Test delete host.""" + + def setUp(self): + super(TestDelHost, self).setUp() + + def tearDown(self): + super(TestDelHost, self).tearDown() + + def test_del_host(self): + host.del_host( + self.user_object, + self.host_ids[0] + ) + del_host = host.list_hosts( + self.user_object + ) + ids = [] + for item in del_host: + ids.append(item['id']) + self.assertNotIn(self.host_ids[0], ids) + + def test_is_host_editable(self): + host.update_host_state( + self.user_object, + self.host_ids[0], + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + host.del_host, + self.user_object, + self.host_ids[0] + ) + + +class TestGetHostConfig(HostTestCase): + """Test get host config.""" + + def setUp(self): + super(TestGetHostConfig, self).setUp() + host.update_host_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + + def tearDown(self): + super(TestGetHostConfig, self).tearDown() + + def test_get_host_config(self): + os_configs = host.get_host_config( + self.user_object, + self.host_ids[0] + ) + self.assertItemsEqual(self.os_configs, os_configs['os_config']) + + +class TestGetHostDeployedConfig(HostTestCase): + """Test get host deployed config.""" + + def setUp(self): + super(TestGetHostDeployedConfig, self).setUp() + host.update_host_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_ids[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_ids[0]] + } + ) + host.update_host_deployed_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + + def tearDown(self): + super(TestGetHostDeployedConfig, self).tearDown() + + def test_get_host_deployed_config(self): + os_configs = host.get_host_deployed_config( + self.user_object, + self.host_ids[0] + ) + self.assertItemsEqual( + os_configs['deployed_os_config'], + self.os_configs + ) + + +class TestUpdateHostDeployedConfig(HostTestCase): + """Test update host deployed config.""" + + def setUp(self): + super(TestUpdateHostDeployedConfig, self).setUp() + host.update_host_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_ids[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_ids[0]] + } + ) + + def tearDown(self): + super(TestUpdateHostDeployedConfig, self).tearDown() + + def test_update_host_deployed_config(self): + host.update_host_deployed_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + os_configs = host.get_host_deployed_config( + self.user_object, + self.host_ids[0] + ) + self.assertItemsEqual( + os_configs['deployed_os_config'], + self.os_configs + ) + + def test_is_host_editable(self): + host.update_host_state( + self.user_object, + self.host_ids[0], + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + host.update_host_deployed_config, + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + + +class TestUpdateHostConfig(HostTestCase): + """Test update host config.""" + + def setUp(self): + super(TestUpdateHostConfig, self).setUp() + + def tearDown(self): + super(TestUpdateHostConfig, self).tearDown() + + def test_update_host_config(self): + host.update_host_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + os_configs = host.get_host_config( + self.user_object, + self.host_ids[0] + ) + self.assertItemsEqual(self.os_configs, os_configs['os_config']) + + def test_is_host_editable(self): + host.update_host_state( + self.user_object, + self.host_ids[0], + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + host.update_host_config, + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + + +class TestPatchHostConfig(HostTestCase): + """Test patch host config.""" + + def setUp(self): + super(TestPatchHostConfig, self).setUp() + + def tearDown(self): + super(TestPatchHostConfig, self).tearDown() + + def test_patch_host_config(self): + host.patch_host_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + os_configs = host.get_host_config( + self.user_object, + self.host_ids[0] + ) + self.assertItemsEqual(self.os_configs, os_configs['os_config']) + + def test_is_host_editable(self): + host.update_host_state( + self.user_object, + self.host_ids[0], + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + host.patch_host_config, + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + + +class TestDelHostConfig(HostTestCase): + """Test delete host config.""" + + def setUp(self): + super(TestDelHostConfig, self).setUp() + host.update_host_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + + def tearDown(self): + super(TestDelHostConfig, self).tearDown() + + def test_del_host_config(self): + host.del_host_config( + self.user_object, + self.host_ids[0] + ) + os_configs = host.get_host_config( + self.user_object, + self.host_ids[0] + ) + self.assertEqual(os_configs['os_config'], {}) + + def test_is_host_editable(self): + host.update_host_state( + self.user_object, + self.host_ids[0], + state='INSTALLING' + ) + self.assertRaises( + exception.Forbidden, + host.del_host_config, + self.user_object, + self.host_ids[0] + ) + + +class TestListHostNetworks(HostTestCase): + """Test list host networks.""" + + def setUp(self): + super(TestListHostNetworks, self).setUp() + host.add_host_network( + self.user_object, + self.host_ids[0], + interface='eth1', + ip='10.145.88.10', + subnet_id=self.subnet_ids[0], + is_promiscuous=True + ) + + def tearDown(self): + super(TestListHostNetworks, self).tearDown() + + def test_list_host_networs(self): + host_networks = host.list_host_networks( + self.user_object, + self.host_ids[0] + ) + results = [] + for host_network in host_networks: + results.append(host_network['ip']) + for result in results: + self.assertIn(result, ['10.145.88.10', '10.145.88.0']) + + +class TestListHostnetworks(HostTestCase): + """Test list hostnetworks.""" + + def setUp(self): + super(TestListHostnetworks, self).setUp() + + def tearDown(self): + super(TestListHostnetworks, self).tearDown() + + def test_list_hostnetworks(self): + host_networks = host.list_hostnetworks( + self.user_object, + ) + results = [] + for host_network in host_networks: + results.append(host_network['ip']) + for result in results: + self.assertIn(result, ['10.145.88.0', '192.168.100.0']) + + +class TestGetHostNetwork(HostTestCase): + """Test get host network.""" + + def setUp(self): + super(TestGetHostNetwork, self).setUp() + + def tearDown(self): + super(TestGetHostNetwork, self).tearDown() + + def test_get_host_network(self): + host_network = host.get_host_network( + self.user_object, + self.host_ids[0], + self.host_ids[0] + ) + self.assertEqual(host_network['ip'], '10.145.88.0') + + def test_record_not_exists(self): + self.assertRaises( + exception.RecordNotExists, + host.get_host_network, + self.user_object, + 2, + self.host_ids[0] + ) + + +class TestGetHostnetwork(HostTestCase): + """Test get hostnetwork.""" + + def setUp(self): + super(TestGetHostnetwork, self).setUp() + + def tearDown(self): + super(TestGetHostnetwork, self).tearDown() + + def test_get_hostnetwork(self): + host_network = host.get_hostnetwork( + self.user_object, + self.host_ids[0] + ) + self.assertEqual(host_network['ip'], '10.145.88.0') + + +class TestAddHostNetwork(HostTestCase): + """Test add host network.""" + + def setUp(self): + super(TestAddHostNetwork, self).setUp() + + def tearDown(self): + super(TestAddHostNetwork, self).tearDown() + + def test_add_host_network(self): + host.add_host_network( + self.user_object, + self.host_ids[0], + interface='eth1', + ip='10.145.88.20', + subnet_id=self.subnet_ids[0], + is_mgmt=True + ) + host_network = host.list_host_networks( + self.user_object, + self.host_ids[0] + ) + result = [] + for item in host_network: + result.append(item['ip']) + self.assertIn('10.145.88.20', result) + + def test_invalid_parameter(self): + self.assertRaises( + exception.InvalidParameter, + host.add_host_network, + self.user_object, + self.host_ids[0], + interface='eth3', + ip='10.145.88.0', + subnet_id=self.subnet_ids[0] + ) + + +class TestAddHostNetworks(HostTestCase): + """Test add host networks.""" + + def setUp(self): + super(TestAddHostNetworks, self).setUp() + + def tearDown(self): + super(TestAddHostNetworks, self).tearDown() + + def test_addhost_networks(self): + host_networks = host.add_host_networks( + self.user_object, + data=[ + { + 'host_id': self.host_ids[0], + 'networks': [ + { + 'interface': 'eth2', + 'ip': '10.145.88.20', + 'subnet_id': self.subnet_ids[0], + 'is_mgmt': True + }, + { + 'interface': 'eth3', + 'ip': '10.145.88.0', + 'subnet_id': self.subnet_ids[0], + 'is_mgmt': True + } + ] + } + ] + ) + ip = [] + for host_network in host_networks['hosts']: + for item in host_network['networks']: + ip.append(item['ip']) + fail_ip = [] + for fail_host in host_networks['failed_hosts']: + for item in fail_host['networks']: + fail_ip.append(item['ip']) + self.assertIn('10.145.88.20', ip) + self.assertIn('10.145.88.0', fail_ip) + + +class TestUpdateHostNetwork(HostTestCase): + """Test update host network.""" + + def setUp(self): + super(TestUpdateHostNetwork, self).setUp() + + def tearDown(self): + super(TestUpdateHostNetwork, self).tearDown() + + def test_update_host_network(self): + host.update_host_network( + self.user_object, + self.host_ids[0], + self.host_ids[0], + interface='eth10', + ip='10.145.88.100' + ) + host_networks = host.list_host_networks( + self.user_object, + self.host_ids[0] + ) + interface = None + ip = None + for host_network in host_networks: + interface = host_network['interface'] + ip = host_network['ip'] + self.assertEqual(interface, 'eth10') + self.assertEqual(ip, '10.145.88.100') + + def test_record_not_exists(self): + self.assertRaises( + exception.RecordNotExists, + host.update_host_network, + self.user_object, + self.host_ids[0], + 2 + ) + + +class TestUpdateHostnetwork(HostTestCase): + """Test update hostnetwork.""" + + def setUp(self): + super(TestUpdateHostnetwork, self).setUp() + + def tearDown(self): + super(TestUpdateHostnetwork, self).tearDown() + + def test_update_hostnetwork(self): + host.update_hostnetwork( + self.user_object, + self.host_ids[0], + interface='eth10', + ip='10.145.88.100' + ) + host_networks = host.list_host_networks( + self.user_object, + self.host_ids[0] + ) + interface = None + ip = None + for host_network in host_networks: + interface = host_network['interface'] + ip = host_network['ip'] + self.assertEqual(interface, 'eth10') + self.assertEqual(ip, '10.145.88.100') + + def test_invalid_parameter(self): + host.add_host_network( + self.user_object, + self.host_ids[0], + interface='eth11', + ip='10.145.88.101', + subnet_id=self.subnet_ids[0], + is_promiscuous=True + ) + self.assertRaises( + exception.InvalidParameter, + host.update_hostnetwork, + self.user_object, + self.host_ids[0], + interface='eth11' + ) + self.assertRaises( + exception.InvalidParameter, + host.update_hostnetwork, + self.user_object, + self.host_ids[0], + ip='10.145.88.101' + ) + + +class TestDelHostNetwork(HostTestCase): + """Test delete host network.""" + + def setUp(self): + super(TestDelHostNetwork, self).setUp() + + def tearDown(self): + super(TestDelHostNetwork, self).tearDown() + + def test_del_host_network(self): + host.del_host_network( + self.user_object, + self.host_ids[0], + self.host_ids[0] + ) + host_network = host.list_host_networks( + self.user_object, + self.host_ids[0] + ) + self.assertEqual(host_network, []) + + def test_record_not_exists(self): + self.assertRaises( + exception.RecordNotExists, + host.del_host_network, + self.user_object, + 100, + self.host_ids[0] + ) + + +class TestDelHostnetwork(HostTestCase): + """Test delete hostnetwork.""" + + def setUp(self): + super(TestDelHostnetwork, self).setUp() + + def tearDown(self): + super(TestDelHostnetwork, self).tearDown() + + def test_del_hostnetwork(self): + host.del_hostnetwork( + self.user_object, + self.host_ids[0] + ) + host_network = host.list_host_networks( + self.user_object, + self.host_ids[0] + ) + self.assertEqual(host_network, []) + + +class TestGetHostState(HostTestCase): + """Test get host state.""" + + def setUp(self): + super(TestGetHostState, self).setUp() + + def tearDown(self): + super(TestGetHostState, self).tearDown() + + def test_get_host_state(self): + host_states = host.get_host_state( + self.user_object, + self.host_ids[0] + ) + self.assertEqual(host_states['state'], 'UNINITIALIZED') + + +class TestUpdateHostState(HostTestCase): + """Test update host state.""" + + def setUp(self): + super(TestUpdateHostState, self).setUp() + + def tearDown(self): + super(TestUpdateHostState, self).tearDown() + + def test_update_host_state(self): + host.update_host_state( + self.user_object, + self.host_ids[0], + state='INSTALLING' + ) + host_states = host.get_host_state( + self.user_object, + self.host_ids[0] + ) + self.assertEqual(host_states['state'], 'INSTALLING') + + +class TestGetHostLogHistories(HostTestCase): + """Test get host log histories.""" + + def setUp(self): + super(TestGetHostLogHistories, self).setUp() + + def tearDown(self): + super(TestGetHostLogHistories, self).tearDown() + + def test_get_host_log_histories(self): + logs = host.get_host_log_histories( + self.user_object, + self.host_ids[0] + ) + filenames = [] + for log in logs: + filenames.append(log['filename']) + for filename in filenames: + self.assertIn(filename, ['log1', 'log2']) + + +class TestGetHostLogHistory(HostTestCase): + """Test get host log history.""" + + def setUp(self): + super(TestGetHostLogHistory, self).setUp() + + def tearDown(self): + super(TestGetHostLogHistory, self).tearDown() + + def test_get_host_log_history(self): + log = host.get_host_log_history( + self.user_object, + self.host_ids[0], + 'log1' + ) + self.assertEqual(log['filename'], 'log1') + + +class TestUpdateHostLogHistory(HostTestCase): + """Test update host log history.""" + + def setUp(self): + super(TestUpdateHostLogHistory, self).setUp() + + def tearDown(self): + super(TestUpdateHostLogHistory, self).tearDown() + + def test_update_host_log_history(self): + host.update_host_log_history( + self.user_object, + self.host_ids[0], + 'log1', + severity='WARNING', + message='update log' + ) + logs = host.get_host_log_histories( + self.user_object, + self.host_ids[0] + ) + result = [] + for log in logs: + result.append(log['severity']) + result.append(log['message']) + expects = ['WARNING', 'update log'] + for expect in expects: + self.assertIn(expect, result) + + +class TestAddHostLogHistory(HostTestCase): + """Test add host log history.""" + + def setUp(self): + super(TestAddHostLogHistory, self).setUp() + + def tearDown(self): + super(TestAddHostLogHistory, self).tearDown() + + def test_add_host_log_history(self): + host.add_host_log_history( + self.user_object, + self.host_ids[0], + filename='add_log' + ) + logs = host.get_host_log_histories( + self.user_object, + self.host_ids[0] + ) + result = [] + for log in logs: + result.append(log['filename']) + self.assertIn('add_log', result) + + +class TestPoweronHost(HostTestCase): + """Test poweron host.""" + + def setUp(self): + super(TestPoweronHost, self).setUp() + host.update_host_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_ids[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_ids[0]] + } + ) + + def tearDown(self): + super(TestPoweronHost, self).tearDown() + + def test_poweron_host(self): + from compass.tasks import client as celery_client + celery_client.celery.send_task = mock.Mock() + poweron_host = host.poweron_host( + self.user_object, + self.host_ids[0], + poweron={'poweron': True} + ) + self.assertEqual( + poweron_host['status'], + 'poweron newname1 action sent' + ) + + +class TestPoweroffHost(HostTestCase): + """Test poweroff host.""" + + def setUp(self): + super(TestPoweroffHost, self).setUp() + host.update_host_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_ids[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_ids[0]] + } + ) + + def tearDown(self): + super(TestPoweroffHost, self).tearDown() + + def test_poweroff_host(self): + from compass.tasks import client as celery_client + celery_client.celery.send_task = mock.Mock() + poweroff_host = host.poweroff_host( + self.user_object, + self.host_ids[0], + poweroff={'poweroff': True} + ) + self.assertEqual( + poweroff_host['status'], + 'poweroff newname1 action sent' + ) + + +class TestResetHost(HostTestCase): + """Test reset host.""" + + def setUp(self): + super(TestResetHost, self).setUp() + host.update_host_config( + self.user_object, + self.host_ids[0], + os_config=self.os_configs + ) + cluster.update_cluster_config( + self.user_object, + self.cluster_id, + os_config=self.os_configs, + package_config=self.package_configs + ) + cluster.update_cluster_host( + self.user_object, + self.cluster_id, + self.host_ids[0], + roles=['allinone-compute'] + ) + cluster.review_cluster( + self.user_object, + self.cluster_id, + review={ + 'hosts': [self.host_ids[0]] + } + ) + + def tearDown(self): + super(TestResetHost, self).tearDown() + + def test_reset_host(self): + from compass.tasks import client as celery_client + celery_client.celery.send_task = mock.Mock() + reset_host = host.reset_host( + self.user_object, + self.host_ids[0], + reset={'reset': True} + ) + self.assertEqual( + reset_host['status'], + 'reset newname1 action sent' + ) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/db/api/test_machine.py b/compass/tests/db/api/test_machine.py new file mode 100644 index 00000000..b2f6c95e --- /dev/null +++ b/compass/tests/db/api/test_machine.py @@ -0,0 +1,163 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import datetime +import logging +import os +import unittest2 + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from base import BaseTest +from compass.db.api import database +from compass.db.api import machine +from compass.db.api import switch +from compass.db.api import user as user_api +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting + + +class TestGetMachine(BaseTest): + """Test get machine.""" + + def setUp(self): + super(TestGetMachine, self).setUp() + + def tearDown(self): + super(TestGetMachine, self).tearDown() + + def test_get_machine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + get_machine = machine.get_machine( + self.user_object, + 1 + ) + self.assertIsNotNone(get_machine) + + +class TestListMachines(BaseTest): + """Test list machines.""" + + def setUp(self): + super(TestListMachines, self).setUp() + + def tearDown(self): + super(TestListMachines, self).tearDown() + + def test_list_machines(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + list_machine = machine.list_machines(self.user_object) + self.assertIsNotNone(list_machine) + + +class TestUpdateMachine(BaseTest): + """Test update machine.""" + + def setUp(self): + super(TestUpdateMachine, self).setUp() + + def tearDown(self): + super(TestUpdateMachine, self).tearDown() + + def test_update_machine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + machine.update_machine( + self.user_object, + 1, + tag='test' + ) + update_machine = machine.list_machines(self.user_object) + expected = {'tag': 'test'} + self.assertTrue( + item in update_machine[0].items() for item in expected.items() + ) + + +class TestPatchMachine(BaseTest): + """Test patch machine.""" + + def setUp(self): + super(TestPatchMachine, self).setUp() + + def tearDown(self): + super(TestPatchMachine, self).tearDown() + + def test_patch_machine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + machine.patch_machine( + self.user_object, + 1, + tag={'patched_tag': 'test'} + ) + patch_machine = machine.list_machines(self.user_object) + expected = {'patched_tag': 'test'} + self.assertTrue( + item in patch_machine[0].items() for item in expected.items() + ) + + +class TestDelMachine(BaseTest): + """Test delete machine.""" + + def setUp(self): + super(TestDelMachine, self).setUp() + + def tearDown(self): + super(TestDelMachine, self).tearDown() + + def test_del_machine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + machine.del_machine( + self.user_object, + 1 + ) + del_machine = machine.list_machines(self.user_object) + self.assertEqual([], del_machine) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/db/api/test_metadata_holder.py b/compass/tests/db/api/test_metadata_holder.py new file mode 100644 index 00000000..83957120 --- /dev/null +++ b/compass/tests/db/api/test_metadata_holder.py @@ -0,0 +1,268 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import datetime +import logging +import mock +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from base import BaseTest +from compass.db.api import adapter as adapter_api +from compass.db.api import adapter_holder as adapter +from compass.db.api import database +from compass.db.api import metadata as metadata_api +from compass.db.api import metadata_holder as metadata +from compass.db.api import user as user_api +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import util + + +class MetadataTestCase(unittest2.TestCase): + """Metadata base test case.""" + + def setUp(self): + super(MetadataTestCase, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + adapter.load_adapters() + metadata.load_metadatas() + + #Get a os_id and adapter_id + self.user_object = ( + user_api.get_user_object( + setting.COMPASS_ADMIN_EMAIL + ) + ) + self.adapter_object = adapter.list_adapters(self.user_object) + test_adapter = None + for adapter_obj in self.adapter_object: + if adapter_obj['name'] == 'openstack_icehouse': + self.adapter_id = adapter_obj['id'] + test_adapter = adapter_obj + break + self.os_id = None + if test_adapter['flavors']: + for supported_os in test_adapter['supported_oses']: + self.os_id = supported_os['os_id'] + break + + def tearDown(self): + super(MetadataTestCase, self).setUp() + reload(setting) + database.drop_db() + + +class TestGetPackageMetadata(MetadataTestCase): + + def setUp(self): + self.backup_load_configs = util.load_configs + + def mock_load_configs(config_dir, *args, **kwargs): + if config_dir != setting.PACKAGE_METADATA_DIR: + return self.backup_load_configs( + config_dir, *args, **kwargs + ) + config = { + 'ADAPTER': 'openstack', + 'METADATA': { + 'security': { + '_self': { + 'required_in_whole_config': True + }, + 'service_credentials': { + '_self': { + 'mapping_to': 'service_credentials' + }, + '$service': { + 'username': { + '_self': { + 'is_required': True, + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'field': 'password', + 'mapping_to': 'password' + } + } + } + } + }, + 'test_package_metadata': { + '_self': { + 'dummy': 'fake' + } + } + } + } + return [config] + + util.load_configs = mock.Mock(side_effect=mock_load_configs) + super(TestGetPackageMetadata, self).setUp() + + def tearDown(self): + util.load_configs = self.backup_load_configs + super(TestGetPackageMetadata, self).tearDown() + + def test_get_package_metadata(self): + """Test get package metadata.""" + package_metadata = metadata.get_package_metadata( + self.user_object, + self.adapter_id + ) + expected = [] + for k, v in package_metadata['package_config'].iteritems(): + expected.append(k) + self.assertIsNotNone(package_metadata) + self.assertIn('test_package_metadata', expected) + + def test_adapter_not_exist(self): + """Test give a non-exited package_id.""" + self.assertRaises( + exception.RecordNotExists, + metadata.get_package_metadata, + self.user_object, + 99 + ) + + +class TestGetOsMetadata(MetadataTestCase): + def setUp(self): + self.backup_load_configs = util.load_configs + + def mock_load_configs(config_dir, *args, **kwargs): + if config_dir != setting.OS_METADATA_DIR: + return self.backup_load_configs( + config_dir, *args, **kwargs + ) + config = { + 'OS': 'general', + 'METADATA': { + 'general': { + '_self': { + 'required_in_whole_config': True + }, + 'language': { + '_self': { + 'field': 'general', + 'default_value': 'EN', + 'options': ['EN', 'CN'], + 'mapping_to': 'language' + } + }, + 'timezone': { + '_self': { + 'field': 'general', + 'default_value': 'UTC', + 'options': [ + 'America/New_York', 'America/Chicago', + 'America/Los_Angeles', 'Asia/Shanghai', + 'Asia/Tokyo', 'Europe/Paris', + 'Europe/London', 'Europe/Moscow', + 'Europe/Rome', 'Europe/Madrid', + 'Europe/Berlin', 'UTC' + ], + 'mapping_to': 'timezone' + } + } + }, + 'test_os_metadata': { + '_self': { + 'test': 'dummy' + } + } + } + } + return [config] + + util.load_configs = mock.Mock(side_effect=mock_load_configs) + super(TestGetOsMetadata, self).setUp() + + def tearDown(self): + util.load_configs = self.backup_load_configs + super(TestGetOsMetadata, self).tearDown() + + def test_get_os_metadata(self): + """Test get os metadata.""" + os_metadata = metadata.get_os_metadata( + self.user_object, + self.os_id + ) + expected = [] + for k, v in os_metadata['os_config'].iteritems(): + expected.append(k) + self.assertIsNotNone(os_metadata) + self.assertIn('test_os_metadata', expected) + + def test_os_non_exist(self): + """Test give a non-existed os_id.""" + self.assertRaises( + exception.RecordNotExists, + metadata.get_os_metadata, + self.user_object, + 99 + ) + + +class TestGetPackageOsMetadata(MetadataTestCase): + def setUp(self): + super(TestGetPackageOsMetadata, self).setUp() + + def tearDown(self): + super(TestGetPackageOsMetadata, self).tearDown() + + def test_get_package_os_metadata(self): + """Test get package and os metadata.""" + package_os_metadata = metadata.get_package_os_metadata( + self.user_object, + self.adapter_id, + self.os_id + ) + self.assertIsNotNone(package_os_metadata) + + def test_invalid_parameter(self): + """Test give a non-existed os_id.""" + self.assertRaises( + exception.InvalidParameter, + metadata.get_package_os_metadata, + self.user_object, + self.adapter_id, + 99 + ) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/db/api/test_network.py b/compass/tests/db/api/test_network.py new file mode 100644 index 00000000..b3e18df7 --- /dev/null +++ b/compass/tests/db/api/test_network.py @@ -0,0 +1,185 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import datetime +import logging +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from base import BaseTest +from compass.db.api import database +from compass.db.api import network +from compass.db.api import user as user_api +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting + + +class TestListSubnets(BaseTest): + """Test list subnets.""" + + def setUp(self): + super(TestListSubnets, self).setUp() + + def tearDown(self): + super(TestListSubnets, self).tearDown() + + def test_list_subnets(self): + network.add_subnet( + self.user_object, + subnet='10.145.89.0/24' + ) + list_subnet = network.list_subnets( + self.user_object + ) + expected = '10.145.89.0/24' + self.assertTrue( + item in list_subnet[0].items() for item in expected + ) + + +class TestGetSubnet(BaseTest): + """Test get subnet.""" + + def setUp(self): + super(TestGetSubnet, self).setUp() + + def tearDown(self): + super(TestGetSubnet, self).tearDown() + + def test_get_subnet(self): + network.add_subnet( + self.user_object, + subnet='10.145.89.0/24' + ) + get_subnet = network.get_subnet( + self.user_object, + 1 + ) + self.assertEqual( + '10.145.89.0/24', + get_subnet['subnet'] + ) + + def tset_get_subnet_no_exist(self): + get_subnet_no_exist = network.get_subnet( + self.user_object, + 2 + ) + self.assertEqual([], get_subnet_no_exist) + + +class TestAddSubnet(BaseTest): + """Test add subnet.""" + + def setUp(self): + super(TestAddSubnet, self).setUp() + + def tearDown(self): + super(TestAddSubnet, self).tearDown() + + def test_add_subnet(self): + network.add_subnet( + self.user_object, + subnet='10.145.89.0/24' + ) + add_subnet = network.list_subnets( + self.user_object + ) + expected = '10.145.89.0/24' + self.assertTrue( + item in add_subnet[0].items() for item in expected + ) + + +class TestUpdateSubnet(BaseTest): + """Test update subnet.""" + + def setUp(self): + super(TestUpdateSubnet, self).setUp() + + def tearDown(self): + super(TestUpdateSubnet, self).tearDown() + + def test_update_subnet(self): + network.add_subnet( + self.user_object, + subnet='10.145.89.0/24' + ) + network.update_subnet( + self.user_object, + 1, + subnet='192.168.100.0/24' + ) + update_subnet = network.list_subnets( + self.user_object + ) + expected = '192.168.100.0/24' + self.assertTrue( + item in update_subnet[0].items() for item in expected + ) + + def test_update_subnet_no_exist(self): + self.assertRaises( + exception.DatabaseException, + network.update_subnet, + self.user_object, + 2 + ) + + +class TestDelSubnet(BaseTest): + """Test delete subnet.""" + + def setUp(self): + super(TestDelSubnet, self).setUp() + + def tearDown(self): + super(TestDelSubnet, self).tearDown() + + def test_del_subnet(self): + network.add_subnet( + self.user_object, + subnet='10.145.89.0/24' + ) + network.del_subnet( + self.user_object, + 1 + ) + del_subnet = network.list_subnets( + self.user_object + ) + self.assertEqual([], del_subnet) + + def test_del_subnet_not_exist(self): + self.assertRaises( + exception.RecordNotExists, + network.del_subnet, + self.user_object, + 2 + ) + + +if __name__ == '__main__': + flags.init() + unittest2.main() diff --git a/compass/tests/db/test_database.py b/compass/tests/db/api/test_permission.py similarity index 51% rename from compass/tests/db/test_database.py rename to compass/tests/db/api/test_permission.py index 322fb38c..806c696e 100644 --- a/compass/tests/db/test_database.py +++ b/compass/tests/db/api/test_permission.py @@ -12,10 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -"""test util module. - - .. moduleauthor:: Xiaodong Wang -""" +import datetime +import logging import os import unittest2 @@ -27,35 +25,41 @@ from compass.utils import setting_wrapper as setting reload(setting) -from compass.db import database +from base import BaseTest +from compass.db.api import database +from compass.db.api import permission +from compass.db.api import user as user_api +from compass.db import exception from compass.utils import flags from compass.utils import logsetting -class TestDatabase(unittest2.TestCase): - """Test database actions.""" +class TestListPermissions(BaseTest): + """Test list permissions.""" def setUp(self): - super(TestDatabase, self).setUp() - logsetting.init() - database.init('sqlite://') + super(TestListPermissions, self).setUp() def tearDown(self): - super(TestDatabase, self).tearDown() + super(TestListPermissions, self).tearDown() - def test_init(self): - database.init('sqlite:///tmp/app.db') - self.assertEqual(str(database.ENGINE.url), - 'sqlite:///tmp/app.db') - self.assertEqual(str(database.SCOPED_SESSION.bind.url), - 'sqlite:///tmp/app.db') + def test_list_permissions(self): + permissions = permission.list_permissions(self.user_object) + self.assertIsNotNone(permissions) - def test_session(self): - with database.session() as session: - self.assertEqual(database.current_session(), session) - self.assertTrue(database.in_session()) - self.assertFalse(database.in_session()) +class TestGetPermission(BaseTest): + """Test get permission.""" + + def setUp(self): + super(TestGetPermission, self).setUp() + + def tearDown(self): + super(TestGetPermission, self).tearDown() + + def test_get_permission(self): + get_permission = permission.get_permission(self.user_object, 1) + self.assertIsNotNone(get_permission) if __name__ == '__main__': diff --git a/compass/tests/db/api/test_switch.py b/compass/tests/db/api/test_switch.py new file mode 100644 index 00000000..db7a6b71 --- /dev/null +++ b/compass/tests/db/api/test_switch.py @@ -0,0 +1,754 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +import datetime +import logging +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from base import BaseTest +from compass.db.api import database +from compass.db.api import switch +from compass.db.api import user as user_api +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting + + +class TestGetSwitch(BaseTest): + """Test get switch.""" + + def setUp(self): + super(TestGetSwitch, self).setUp() + + def tearDown(self): + super(TestGetSwitch, self).tearDown() + + def test_get_switch(self): + get_switch = switch.get_switch( + self.user_object, + 1 + ) + self.assertIsNotNone(get_switch) + + +class TestAddSwitch(BaseTest): + """Test add switch.""" + + def setUp(self): + super(TestAddSwitch, self).setUp() + + def tearDown(self): + super(TestAddSwitch, self).tearDown() + + def test_add_switch(self): + add_switch = switch.add_switch( + self.user_object, + ip='2887583784' + ) + expected = '172.29.8.40' + self.assertEqual(expected, add_switch['ip']) + + +class TestListSwitches(BaseTest): + """Test list switch.""" + + def setUp(self): + super(TestListSwitches, self).setUp() + + def tearDown(self): + super(TestListSwitches, self).tearDown() + + def test_list_switches_ip_int_invalid(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + list_switches = switch.list_switches( + self.user_object, + ip_int='test' + ) + self.assertEqual(list_switches, []) + + def test_list_switches_with_ip_int(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + list_switches = switch.list_switches( + self.user_object, + ip_int='2887583784' + ) + expected = '2887583784' + self.assertTrue( + item in expected.items() for item in list_switches[0].items() + ) + + def test_list_switches(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + list_switches = switch.list_switches( + self.user_object + ) + self.assertIsNotNone(list_switches) + + +class TestDelSwitch(BaseTest): + """Test delete switch.""" + + def setUp(self): + super(TestDelSwitch, self).setUp() + + def tearDown(self): + super(TestDelSwitch, self).tearDown() + + def test_del_switch(self): + switch.del_switch( + self.user_object, + 1 + ) + del_switch = switch.list_switches( + self.user_object + ) + self.assertEqual([], del_switch) + + +class TestUpdateSwitch(BaseTest): + """Test update switch.""" + + def setUp(self): + super(TestUpdateSwitch, self).setUp() + + def tearDown(self): + super(TestUpdateSwitch, self).tearDown() + + def test_update_switch(self): + switch.update_switch( + self.user_object, + 1, + vendor='test_update' + ) + update_switch = switch.get_switch( + self.user_object, + 1 + ) + expected = 'test_update' + self.assertEqual(expected, update_switch['vendor']) + + +class TestPatchSwitch(BaseTest): + """Test patch switch.""" + + def setUp(self): + super(TestPatchSwitch, self).setUp() + + def tearDown(self): + super(TestPatchSwitch, self).tearDown() + + def test_patch_switch(self): + switch.patch_switch( + self.user_object, + 1, + patched_credentials={ + 'version': '2c', + 'community': 'public' + } + ) + patch_switch = switch.get_switch( + self.user_object, + 1 + ) + expected = { + 'version': '2c', + 'community': 'public' + } + self.assertTrue( + item in expected.items() for item in patch_switch.items() + ) + + +class TestListSwitchFilters(BaseTest): + """Test list switch filters.""" + + def setUp(self): + super(TestListSwitchFilters, self).setUp() + + def tearDown(self): + super(TestListSwitchFilters, self).tearDown() + + def test_list_switch_filters(self): + list_switch_filters = switch.list_switch_filters( + self.user_object + ) + self.assertIsNotNone(list_switch_filters) + + +class TestGetSwitchFilters(BaseTest): + """Test get switch filter.""" + + def setUp(self): + super(TestGetSwitchFilters, self).setUp() + + def tearDown(self): + super(TestGetSwitchFilters, self).tearDown() + + def test_get_swtich_filters(self): + get_switch_filter = switch.get_switch_filters( + self.user_object, + 1 + ) + self.assertIsNotNone(get_switch_filter) + + +class TestUpdateSwitchFilters(BaseTest): + """Test update a switch filter.""" + + def setUp(self): + super(TestUpdateSwitchFilters, self).setUp() + + def tearDown(self): + super(TestUpdateSwitchFilters, self).tearDown() + + def test_update_switch_filters(self): + switch.update_switch_filters( + self.user_object, + 1, + filters=[ + { + 'filter_type': 'allow' + } + ] + ) + update_switch_filters = switch.get_switch_filters( + self.user_object, + 1 + ) + expected = { + 'filter_type': 'allow' + } + self.assertTrue( + item in update_switch_filters[0].items() + for item in expected.items() + ) + + +class TestPatchSwitchFilter(BaseTest): + """Test patch a switch filter.""" + + def setUp(self): + super(TestPatchSwitchFilter, self).setUp() + + def tearDown(self): + super(TestPatchSwitchFilter, self).tearDown() + + def test_patch_switch_filter(self): + switch.patch_switch_filter( + self.user_object, + 1, + patched_filters=[ + { + 'filter_type': 'allow' + } + ] + ) + patch_switch_filter = switch.get_switch_filters( + self.user_object, + 1 + ) + expected = { + 'filter_type': 'allow' + } + self.assertTrue( + item in patch_switch_filter[0].items() for item in expected.items() + ) + + +class TestAddSwitchMachine(BaseTest): + """Test add switch machine.""" + + def setUp(self): + super(TestAddSwitchMachine, self).setUp() + + def tearDown(self): + super(TestAddSwitchMachine, self).tearDown() + + def test_add_switch_machine(self): + add_switch_machine = switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + expected = '28:6e:d4:46:c4:25' + self.assertEqual(expected, add_switch_machine['mac']) + + +class TestListSwitchMachines(BaseTest): + """Test get switch machines.""" + + def setUp(self): + super(TestListSwitchMachines, self).setUp() + + def tearDown(self): + super(TestListSwitchMachines, self).tearDown() + + def test_list_switch_machines(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + list_switch_machines = switch.list_switch_machines( + self.user_object, + 2 + ) + self.assertIsNotNone(list_switch_machines) + + +class TestListSwitchmachines(BaseTest): + """Test list switch machines.""" + + def setUp(self): + super(TestListSwitchmachines, self).setUp() + + def tearDown(self): + super(TestListSwitchmachines, self).tearDown() + + def test_list_switch_machines_with_ip_int(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + list_switch_machines = switch.list_switchmachines( + self.user_object, + switch_ip_int='2887583784' + ) + expected = '172.29.8.40' + self.assertTrue(expected for item in list_switch_machines[0].items()) + + def test_list_switch_machines_ip_invalid(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + list_switch_machines = switch.list_switchmachines( + self.user_object, + switch_ip_int='test' + ) + self.assertEqual(list_switch_machines, []) + + def test_list_switch_machines_without_ip(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + list_switch_machines = switch.list_switchmachines( + self.user_object + ) + self.assertIsNotNone(list_switch_machines) + + +class TestListSwitchMachinesHosts(BaseTest): + """Test get switch machines hosts.""" + + def setUp(self): + super(TestListSwitchMachinesHosts, self).setUp() + + def tearDown(self): + super(TestListSwitchMachinesHosts, self).tearDown() + + def test_list_hosts(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + list_hosts = switch.list_switch_machines_hosts( + self.user_object, + 2 + ) + self.assertIsNotNone(list_hosts) + + +class TestListSwitchmachinesHosts(BaseTest): + """Test list switch machines hosts.""" + + def setUp(self): + super(TestListSwitchmachinesHosts, self).setUp() + + def tearDown(self): + super(TestListSwitchmachinesHosts, self).tearDown() + + def test_list_hosts_with_ip_int(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + list_hosts = switch.list_switchmachines_hosts( + self.user_object, + switch_ip_int='2887583784' + ) + expected = '172.29.8.40' + self.assertTrue(expected for item in list_hosts[0].items()) + + def test_list_hosts_ip_invalid(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + list_hosts = switch.list_switchmachines_hosts( + self.user_object, + switch_ip_int='test' + ) + self.assertEqual(list_hosts, []) + + def test_list_hosts_without_ip(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + list_hosts = switch.list_switchmachines_hosts( + self.user_object + ) + self.assertIsNotNone(list_hosts) + + +class TestGetSwitchMachine(BaseTest): + """Test get a switch machines.""" + + def setUp(self): + super(TestGetSwitchMachine, self).setUp() + + def tearDown(self): + super(TestGetSwitchMachine, self).tearDown() + + def test_get_switch_machine(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + get_switch_machine = switch.get_switch_machine( + self.user_object, + 2, + 1 + ) + self.assertIsNotNone(get_switch_machine) + + +class TestGetSwitchmachine(BaseTest): + """Test get a switch machine.""" + + def setUp(self): + super(TestGetSwitchmachine, self).setUp() + + def tearDown(self): + super(TestGetSwitchmachine, self).tearDown() + + def test_get_switchmachine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + get_switchmachine = switch.get_switchmachine( + self.user_object, + 1 + ) + self.assertIsNotNone(get_switchmachine) + + +class TestUpdateSwitchMachine(BaseTest): + """Test update switch machine.""" + + def setUp(self): + super(TestUpdateSwitchMachine, self).setUp() + + def tearDown(self): + super(TestUpdateSwitchMachine, self).tearDown() + + def test_update_switch_machine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + switch.update_switch_machine( + self.user_object, + 1, + 1, + tag='test_tag' + ) + update_switch_machine = switch.list_switch_machines( + self.user_object, + 1 + ) + expected = {'tag': 'test_tag'} + self.assertTrue( + item in update_switch_machine[0].items for item in expected.items() + ) + + +class TestUpdateSwitchmachine(BaseTest): + """Test update switch machine.""" + + def setUp(self): + super(TestUpdateSwitchmachine, self).setUp() + + def tearDown(self): + super(TestUpdateSwitchmachine, self).tearDown() + + def test_update_switchmachine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + switch.update_switchmachine( + self.user_object, + 1, + location='test_location' + ) + update_switchmachine = switch.list_switchmachines( + self.user_object, + ) + expected = {'location': 'test_location'} + self.assertTrue( + item in update_switchmachine[0].items() + for item in expected.items() + ) + + +class TestPatchSwitchMachine(BaseTest): + """Test patch switch machine.""" + + def setUp(self): + super(TestPatchSwitchMachine, self).setUp() + + def tearDown(self): + super(TestPatchSwitchMachine, self).tearDown() + + def test_pathc_switch_machine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + switch.patch_switch_machine( + self.user_object, + 1, + 1, + patched_tag={ + 'patched_tag': 'test_patched_tag' + } + ) + switch_patch_switch_machine = switch.list_switch_machines( + self.user_object, + 1 + ) + expected = {'patched_tag': 'test_patched_tag'} + self.assertTrue( + item in switch_patch_switch_machine[0].items() + for item in expected.items() + ) + + +class TestPatchSwitchmachine(BaseTest): + """Test patch switch machine.""" + + def setUp(self): + super(TestPatchSwitchmachine, self).setUp() + + def tearDown(self): + super(TestPatchSwitchmachine, self).tearDown() + + def test_patch_switchmachine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + switch.patch_switchmachine( + self.user_object, + 1, + patched_location={ + 'patched_location': 'test_location' + } + ) + patch_switchmachine = switch.list_switchmachines( + self.user_object + ) + expected = {'patched_location': 'test_location'} + self.assertTrue( + item in patch_switchmachine[0].items() for item in expected.items() + ) + + +class TestDelSwitchMachine(BaseTest): + """Test delete switch machines.""" + + def setUp(self): + super(TestDelSwitchMachine, self).setUp() + + def tearDown(self): + super(TestDelSwitchMachine, self).tearDown() + + def test_del_switch_machine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + switch.del_switch_machine( + self.user_object, + 1, + 1 + ) + del_switch_machine = switch.list_switch_machines( + self.user_object, + 1 + ) + self.assertEqual([], del_switch_machine) + + +class TestDelSwitchmachine(BaseTest): + """Test delete switch machines.""" + + def setUp(self): + super(TestDelSwitchmachine, self).setUp() + + def tearDown(self): + super(TestDelSwitchmachine, self).tearDown() + + def test_switchmachine(self): + switch.add_switch_machine( + self.user_object, + 1, + mac='28:6e:d4:46:c4:25', + port='1' + ) + switch.del_switchmachine( + self.user_object, + 1 + ) + del_switchmachine = switch.list_switchmachines( + self.user_object + ) + self.assertEqual([], del_switchmachine) + + +class TestUpdateSwitchMachines(BaseTest): + """Test update switch machines.""" + + def setUp(self): + super(TestUpdateSwitchMachines, self).setUp() + + def tearDown(self): + super(TestUpdateSwitchMachines, self).tearDown() + + def test_update_switch_machines_remove(self): + switch.add_switch( + self.user_object, + ip='2887583784' + ) + switch.add_switch_machine( + self.user_object, + 2, + mac='28:6e:d4:46:c4:25', + port='1' + ) + switch.update_switch_machines( + self.user_object, + 2, + remove_machines=1 + ) + update_remove = switch.list_switch_machines( + self.user_object, + 2 + ) + self.assertEqual([], update_remove) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/db/api/test_user.py b/compass/tests/db/api/test_user.py new file mode 100644 index 00000000..fd336663 --- /dev/null +++ b/compass/tests/db/api/test_user.py @@ -0,0 +1,356 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import datetime +import logging +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from base import BaseTest +from compass.db.api import database +from compass.db.api import user as user_api +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting + + +class TestGetUserObject(unittest2.TestCase): + """Test get user object.""" + + def setUp(self): + super(TestGetUserObject, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + reload(setting) + database.drop_db() + + def test_get_user_object(self): + user_object = user_api.get_user_object(setting.COMPASS_ADMIN_EMAIL) + self.assertIsNotNone(user_object) + + def test_get_user_object_unauthorized(self): + self.assertRaises( + exception.Unauthorized, + user_api.get_user_object, + 'admin@bac.com' + ) + + +class TestGetRecordCleanToken(BaseTest): + """Test get user object from token.""" + """Test record user token.""" + """Test clean user token.""" + + def setUp(self): + super(TestGetRecordCleanToken, self).setUp() + + def tearDown(self): + super(TestGetRecordCleanToken, self).tearDown() + + def test_record_user_token(self): + token = user_api.record_user_token( + self.user_object, + 'test_token', + datetime.datetime.now() + datetime.timedelta(seconds=10000) + ) + self.assertIsNotNone(token) + self.assertEqual(token['token'], 'test_token') + + def test_clean_user_token(self): + token = user_api.clean_user_token(self.user_object, 'test_token') + self.assertEqual([], token) + + def test_get_user_object_from_token(self): + token = user_api.record_user_token( + self.user_object, + 'test_token', + datetime.datetime.now() + datetime.timedelta(seconds=10000) + ) + self.assertIsNotNone(token) + + def test_get_user_object_from_token_unauthorized(self): + self.assertRaises( + exception.Unauthorized, + user_api.get_user_object_from_token, + 'token' + ) + + +class TestGetUser(BaseTest): + """Test get user.""" + + def setUp(self): + super(TestGetUser, self).setUp() + + def tearDown(self): + super(TestGetUser, self).tearDown() + + def test_get_user(self): + user = user_api.get_user(self.user_object, self.user_object.id) + self.assertIsNotNone(user) + self.assertEqual(user['email'], setting.COMPASS_ADMIN_EMAIL) + + +class TestGetCurrentUser(BaseTest): + """Test get current user.""" + + def setUp(self): + super(TestGetCurrentUser, self).setUp() + + def tearDown(self): + super(TestGetCurrentUser, self).tearDown() + + def test_get_current_user(self): + current_user = user_api.get_current_user( + self.user_object + ) + self.assertIsNotNone(current_user) + self.assertEqual(current_user['email'], setting.COMPASS_ADMIN_EMAIL) + + +class TestListUsers(BaseTest): + """Test list users.""" + + def setUp(self): + super(TestListUsers, self).setUp() + user_api.add_user( + self.user_object, + email='test@huawei.com', + password='test' + ) + + def tearDown(self): + super(TestListUsers, self).tearDown() + + def test_list_users(self): + user = user_api.list_users(self.user_object) + self.assertIsNotNone(user) + result = [] + for item in user: + result.append(item['email']) + expects = ['test@huawei.com', setting.COMPASS_ADMIN_EMAIL] + for expect in expects: + self.assertIn(expect, result) + + +class TestAddUser(BaseTest): + """Test add user.""" + + def setUp(self): + super(TestAddUser, self).setUp() + + def tearDown(self): + super(TestAddUser, self).tearDown() + + def test_add_user(self): + user_objs = user_api.add_user( + self.user_object, + email='test@abc.com', + password='password' + ) + self.assertEqual('test@abc.com', user_objs['email']) + + +class TestDelUser(BaseTest): + """Test delete user.""" + + def setUp(self): + super(TestDelUser, self).setUp() + + def tearDown(self): + super(TestDelUser, self).tearDown() + + def test_del_user(self): + user_api.del_user(self.user_object, self.user_object.id) + del_user = user_api.list_users(self.user_object) + self.assertEqual([], del_user) + + +class TestUpdateUser(BaseTest): + """Test update user.""" + + def setUp(self): + super(TestUpdateUser, self).setUp() + + def tearDown(self): + super(TestUpdateUser, self).tearDown() + + def test_update_admin(self): + user_objs = user_api.update_user( + self.user_object, + self.user_object.id, + email=setting.COMPASS_ADMIN_EMAIL, + firstname='a', + lastname='b', + password='ab', + is_admin=True, + active=True + ) + self.assertEqual(setting.COMPASS_ADMIN_EMAIL, user_objs['email']) + self.assertEqual(user_objs['firstname'], 'a') + self.assertEqual(user_objs['lastname'], 'b') + + def test_not_admin(self): + user_api.add_user( + self.user_object, + email='dummy@abc.com', + password='dummy', + is_admin=False + ) + user_object = user_api.get_user_object('dummy@abc.com') + print 'user object: %s' % user_object + self.assertRaises( + exception.Forbidden, + user_api.update_user, + user_object, + 2, + is_admin=False + ) + + +class TestGetPermissions(BaseTest): + """Test get permissions.""" + + def setUp(self): + super(TestGetPermissions, self).setUp() + + def tearDown(self): + super(TestGetPermissions, self).tearDown() + + def test_get_permissions(self): + user_permissions = user_api.get_permissions( + self.user_object, + self.user_object.id + ) + self.assertIsNotNone(user_permissions) + result = [] + for user_permission in user_permissions: + result.append(user_permission['name']) + self.assertIn('list_permissions', result) + + +class TestGetPermission(BaseTest): + """Test get permission.""" + + def setUp(self): + super(TestGetPermission, self).setUp() + + def tearDown(self): + super(TestGetPermission, self).tearDown() + + def test_get_permission(self): + user_permission = user_api.get_permission( + self.user_object, + self.user_object.id, + 1, + ) + self.assertEqual(user_permission['name'], 'list_permissions') + + +class TestAddDelUserPermission(BaseTest): + """Test add user permission.""" + """Test delete user permission.""" + + def setUp(self): + super(TestAddDelUserPermission, self).setUp() + + def tearDown(self): + super(TestAddDelUserPermission, self).tearDown() + + def test_add_permission(self): + user_api.add_permission( + self.user_object, + self.user_object.id, + permission_id=2 + ) + permissions = user_api.get_permissions( + self.user_object, + self.user_object.id + ) + result = None + for permission in permissions: + if permission['id'] == 2: + result = permission['name'] + self.assertEqual(result, 'list_switches') + + def test_del_permission(self): + user_api.del_permission( + self.user_object, + self.user_object.id, + 1 + ) + del_user = user_api.get_permissions( + self.user_object, + self.user_object.id + ) + self.assertEqual([], del_user) + + +class TestUpdatePermissions(BaseTest): + """Test update permission.""" + + def setUp(self): + super(TestUpdatePermissions, self).setUp() + + def tearDown(self): + super(TestUpdatePermissions, self).tearDown() + + def test_remove_permissions(self): + user_api.update_permissions( + self.user_object, + self.user_object.id, + remove_permissions=1 + ) + del_user_permission = user_api.get_permissions( + self.user_object, + self.user_object.id + ) + self.assertEqual([], del_user_permission) + + def test_add_permissions(self): + user_api.update_permissions( + self.user_object, + self.user_object.id, + add_permissions=2 + ) + permissions = user_api.get_permissions( + self.user_object, + self.user_object.id + ) + result = None + for permission in permissions: + if permission['id'] == 2: + result = permission['name'] + self.assertEqual(result, 'list_switches') + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/db/api/test_user_log.py b/compass/tests/db/api/test_user_log.py new file mode 100644 index 00000000..12535fa9 --- /dev/null +++ b/compass/tests/db/api/test_user_log.py @@ -0,0 +1,141 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import datetime +import logging +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from base import BaseTest +from compass.db.api import database +from compass.db.api import user as user_api +from compass.db.api import user_log +from compass.db import exception +from compass.utils import flags +from compass.utils import logsetting + + +class TestListUserActions(BaseTest): + """Test user actions.""" + + def setUp(self): + super(TestListUserActions, self).setUp() + + def tearDown(self): + super(TestListUserActions, self).tearDown() + + def test_list_user_actions(self): + user_log.log_user_action( + self.user_object.id, + action='/testaction' + ) + user_action = user_log.list_user_actions( + self.user_object, + self.user_object.id + ) + self.assertEqual( + 1, + user_action[0]['user_id'] + ) + + def test_list_none_user_actions(self): + user_log.log_user_action( + self.user_object.id, + action='/testaction' + ) + user_action = user_log.list_user_actions( + self.user_object, + 2 + ) + self.assertEqual([], user_action) + + +class TestListActions(BaseTest): + """Test list actions.""" + + def setUp(self): + super(TestListActions, self).setUp() + + def tearDown(self): + super(TestListActions, self).tearDown() + + def test_list_actions(self): + user_log.log_user_action( + self.user_object.id, + action='/testaction' + ) + action = user_log.list_actions(self.user_object) + self.assertIsNotNone(action) + + +class TestDelUserActions(BaseTest): + """Test delete user actions.""" + + def setUp(self): + super(TestDelUserActions, self).setUp() + + def tearDown(self): + super(TestDelUserActions, self).tearDown() + + def test_del_user_actions(self): + user_log.log_user_action( + self.user_object.id, + action='/testaction' + ) + user_log.del_user_actions( + self.user_object, + self.user_object.id + ) + del_user_action = user_log.list_user_actions( + self.user_object, + self.user_object.id + ) + self.assertEqual([], del_user_action) + + +class TestDelActions(BaseTest): + """Test delete actions.""" + + def setUp(self): + super(TestDelActions, self).setUp() + + def tearDown(self): + super(TestDelActions, self).setUp() + + def test_del_actions(self): + user_log.log_user_action( + self.user_object.id, + action='/testaction' + ) + user_log.del_actions( + self.user_object + ) + del_action = user_log.list_actions( + self.user_object + ) + self.assertEqual([], del_action) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/db/api/test_utils.py b/compass/tests/db/api/test_utils.py new file mode 100644 index 00000000..64cfcfad --- /dev/null +++ b/compass/tests/db/api/test_utils.py @@ -0,0 +1,671 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import logging +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from compass.db.api import database +from compass.db.api import utils +from compass.db import exception +from compass.db import models + +from compass.utils import flags +from compass.utils import logsetting + + +class TestModelQuery(unittest2.TestCase): + """Test model query.""" + + def setUp(self): + super(TestModelQuery, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + + def tearDown(self): + reload(setting) + super(TestModelQuery, self).tearDown() + + def test_model_query(self): + with database.session() as session: + model = models.Machine + res = utils.model_query(session, model) + self.assertIsNotNone(res) + + def test_model_query_non_exist(self): + with database.session() as session: + self.assertRaises( + exception.DatabaseException, + utils.model_query, + session, + models.JSONEncoded + ) + + +class TestModelFilter(unittest2.TestCase): + """Test model filter""" + + def setUp(self): + super(TestModelFilter, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + database.drop_db() + reload(setting) + super(TestModelFilter, self).tearDown() + + def _filter_test_dict_util(self, op, exp_name, exp_id, **kwargs): + with database.session() as session: + query = utils.model_query(session, models.Permission) + filters = {} + for key, value in kwargs.iteritems(): + filters[key] = { + op: value + } + resources = utils.model_filter(query, models.Permission, **filters) + ret = [resource.to_dict() for resource in resources.all()] + expected = { + 'name': exp_name, + 'id': exp_id + } + return (expected, ret) + + def test_filter_with_list(self): + with database.session() as session: + query = utils.model_query(session, models.Permission) + filters = { + 'name': [ + 'list_permissions', + 'list_switches' + ] + } + resources = utils.model_filter(query, models.Permission, **filters) + ret = [resource.to_dict() for resource in resources.all()] + expected = [ + { + 'description': 'list all permissions', + 'alias': 'list permissions', + 'id': 1, + 'name': 'list_permissions' + }, + { + 'description': 'list all switches', + 'alias': 'list switches', + 'id': 2, + 'name': u'list_switches' + } + ] + for i, v in enumerate(ret): + self.assertTrue( + all(item in ret[i].items() for item in expected[i].items()) + ) + + def test_filter_with_dict_eq(self): + expected, ret = self._filter_test_dict_util( + 'eq', + 'list_permissions', + 1, + id=1 + ) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_lt(self): + expected, ret = self._filter_test_dict_util( + 'lt', + 'list_permissions', + 1, + id=2 + ) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_gt(self): + expected, ret = self._filter_test_dict_util( + 'gt', + 'update_clusterhost_state', + 49, + id=48 + ) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_le(self): + expected, ret = self._filter_test_dict_util( + 'le', + 'list_permissions', + 1, + id=1 + ) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_ge(self): + expected, ret = self._filter_test_dict_util( + 'ge', + 'update_clusterhost_state', + 49, + id=49 + ) + logging.debug('expected: %s', expected) + logging.debug('ret: %s', ret) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_ne(self): + expected, ret = self._filter_test_dict_util( + 'ne', + 'list_permissions', + 1, + id=[2, 3, 4, 5, 6, 7, 8, 9] + ) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_startswith(self): + expected, ret = self._filter_test_dict_util( + 'startswith', + 'list_permissions', + 1, + name='list_per' + ) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_endswith(self): + expected, ret = self._filter_test_dict_util( + 'endswith', + 'list_permissions', + 1, + name='ssions' + ) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_like(self): + expected, ret = self._filter_test_dict_util( + 'like', + 'list_permissions', + 1, + name='%per%' + ) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_between_one_table(self): + expected, ret = self._filter_test_dict_util( + 'between', + 'list_permissions', + 1, + id=(1, 1) + ) + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + def test_filter_with_dict_between_multiple_tables(self): + _, ret = self._filter_test_dict_util( + 'between', + 'list_permissions', + 1, + id=(3, 6) + ) + key_list = [] + for item in ret: + for k, v in item.iteritems(): + if k == 'id': + key_list.append(v) + + self.assertEqual([3, 4, 5, 6], key_list) + + def test_filter_with_other_type(self): + with database.session() as session: + query = utils.model_query(session, models.Permission) + filters = { + 'id': 1 + } + resources = utils.model_filter(query, models.Permission, **filters) + ret = [resource.to_dict() for resource in resources.all()] + expected = { + 'id': 1 + } + self.assertTrue( + all(item in ret[0].items() for item in expected.items()) + ) + + +class TestGetDbObject(unittest2.TestCase): + def setUp(self): + super(TestGetDbObject, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + database.drop_db() + reload(setting) + super(TestGetDbObject, self).tearDown() + + def test_get_alias(self): + with database.session() as session: + machines = utils.get_db_object( + session, + models.Permission, + name='list_machines' + ) + expected = 'list machines' + self.assertEqual(expected, machines.alias) + self.assertEqual(expected, machines.description) + + def test_get_none_with_flag_off(self): + with database.session() as session: + dummy = utils.get_db_object( + session, + models.Permission, + False, + name='dummy' + ) + self.assertEqual(None, dummy) + + def test_get_none_with_flag_on(self): + with self.assertRaises(exception.RecordNotExists): + with database.session() as session: + utils.get_db_object( + session, + models.Permission, + name='dummy' + ) + + +class TestAddDbObject(unittest2.TestCase): + def setUp(self): + super(TestAddDbObject, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + database.drop_db() + reload(setting) + super(TestAddDbObject, self).tearDown() + + def test_add_alias(self): + with database.session() as session: + db_objs = utils.add_db_object( + session, + models.Permission, + True, + 'test', + alias='test' + ) + expected = 'test' + self.assertEqual(expected, db_objs.alias) + + def test_add_nothing(self): + with database.session() as session: + db_objs = utils.add_db_object( + session, + models.Permission, + True, + 'test' + ) + self.assertEqual('test', db_objs.name) + self.assertIsNone(db_objs.alias) + + def test_add_duplicate_with_flag(self): + with self.assertRaises(exception.DuplicatedRecord): + with database.session() as session: + utils.add_db_object( + session, + models.Permission, + True, + 'test', + alias='test' + ) + utils.add_db_object( + session, + models.Permission, + True, + 'test', + alias='test' + ) + + def test_add_duplicate_with_no_flag(self): + with database.session() as session: + db_objs = utils.add_db_object( + session, + models.Permission, + False, + 'test', + alias='test' + ) + duplicate = utils.add_db_object( + session, + models.Permission, + False, + 'test', + alias='test' + ) + self.assertEqual(duplicate, db_objs) + + def test_add_with_invalid_args(self): + with self.assertRaises(exception.InvalidParameter): + with database.session() as session: + utils.add_db_object( + session, + models.Permission, + True, + 'test1', + 'test2', + name='test1' + ) + + def test_add_with_multiple_args(self): + with database.session() as session: + db_objs = utils.add_db_object( + session, + models.AdapterRole, + True, + 'test1', + 1, + name='test1', + alias='test1' + ) + self.assertEqual('test1', db_objs.alias) + + +class TestListDbObjects(unittest2.TestCase): + def setUp(self): + super(TestListDbObjects, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + database.drop_db() + reload(setting) + super(TestListDbObjects, self).tearDown() + + def test_list_specific_obj(self): + with database.session() as session: + db_objs = utils.list_db_objects( + session, + models.Permission, + name='list_permissions' + ) + self.assertEqual( + 'list permissions', + db_objs[0].alias + ) + + def test_list_specfic_objs(self): + with database.session() as session: + db_objs = utils.list_db_objects( + session, + models.Permission, + name=[ + 'list_permissions', + 'list_machines' + ] + ) + self.assertEqual( + ['list_permissions', 'list_machines'].sort(), + [obj.name for obj in db_objs].sort() + ) + + def test_list_none_objs(self): + with database.session() as session: + db_objs = utils.list_db_objects( + session, + models.Permission, + id=99 + ) + self.assertListEqual([], db_objs) + + def test_list_none_table(self): + with self.assertRaises(exception.DatabaseException): + with database.session() as session: + utils.list_db_objects( + session, + models.Dummy, + ) + + +class TestDelDbObjects(unittest2.TestCase): + def setUp(self): + super(TestDelDbObjects, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + database.drop_db() + reload(setting) + super(TestDelDbObjects, self).tearDown() + + def test_del_all_objects(self): + with database.session() as session: + utils.del_db_objects( + session, + models.Permission + ) + remained = utils.list_db_objects( + session, + models.Permission + ) + self.assertListEqual([], remained) + + def test_del_single_object(self): + with database.session() as session: + utils.del_db_objects( + session, + models.Permission, + name='list_permissions' + ) + query_deleted = utils.list_db_objects( + session, + models.Permission, + name='list_permissions' + ) + self.assertListEqual([], query_deleted) + + +class TestUpdateDbObject(unittest2.TestCase): + def setUp(self): + super(TestUpdateDbObject, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + database.drop_db() + reload(setting) + super(TestUpdateDbObject, self).tearDown() + + def test_update_db_object(self): + with database.session() as session: + db_obj = utils.get_db_object( + session, + models.Permission, + id=1 + ) + updated_obj = utils.update_db_object( + session, + db_obj, + alias='updated' + ) + self.assertEqual( + 'updated', + updated_obj.alias + ) + + def test_update_db_obj_none_exist(self): + with self.assertRaises(exception.DatabaseException): + with database.session() as session: + db_obj = utils.get_db_object( + session, + models.Permission, + id=1000 + ) + utils.update_db_object( + session, + db_obj, + name='dummy' + ) + + +class TestDelDbObject(unittest2.TestCase): + def setUp(self): + super(TestDelDbObject, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + database.drop_db() + reload(setting) + super(TestDelDbObject, self).tearDown() + + def test_del_db_object(self): + with self.assertRaises(exception.RecordNotExists): + with database.session() as session: + db_obj = utils.get_db_object( + session, + models.Permission, + id=1 + ) + utils.del_db_object( + session, + db_obj + ) + utils.get_db_object( + session, + models.Permission, + id=1 + ) + + +class TestCheckIp(unittest2.TestCase): + def setUp(self): + super(TestCheckIp, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + database.drop_db() + reload(setting) + super(TestCheckIp, self).tearDown() + + def test_check_ip_correct(self): + ip = '10.1.1.1' + self.assertIsNone(utils.check_ip(ip)) + + def test_check_ip_incorrect(self): + ip = 'dummy' + self.assertRaises( + exception.InvalidParameter, + utils.check_ip, + ip + ) + + +class TestCheckMac(unittest2.TestCase): + def setUp(self): + super(TestCheckMac, self).setUp() + reload(setting) + setting.CONFIG_DIR = os.path.join( + os.path.dirname(os.path.abspath(__file__)), + 'data' + ) + database.init('sqlite://') + database.create_db() + + def tearDown(self): + database.drop_db() + reload(setting) + super(TestCheckMac, self).tearDown() + + def test_check_mac_correct(self): + mac = '00:01:02:03:04:05' + self.assertIsNone(utils.check_mac(mac)) + + def test_check_mac_incorrect(self): + mac = '00:01' + self.assertRaises( + exception.InvalidParameter, + utils.check_mac, + mac + ) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/db/test_model.py b/compass/tests/db/test_model.py deleted file mode 100644 index 50e58740..00000000 --- a/compass/tests/db/test_model.py +++ /dev/null @@ -1,522 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test util module. - - .. moduleauthor:: Xiaodong Wang -""" -import os -import sqlalchemy.exc -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.db import database -from compass.db import model -from compass.utils import flags -from compass.utils import logsetting - - -class TestModel(unittest2.TestCase): - """Test database model.""" - - def setUp(self): - super(TestModel, self).setUp() - logsetting.init() - database.init('sqlite://') - database.create_db() - - def tearDown(self): - database.drop_db() - super(TestModel, self).tearDown() - - def test_switch_config(self): - with database.session() as session: - session.add(model.SwitchConfig( - ip='10.145.88.1', filter_port='123' - )) - - with database.session() as session: - switch_configs = session.query(model.SwitchConfig).all() - self.assertEqual(len(switch_configs), 1) - self.assertEqual(switch_configs[0].ip, '10.145.88.1') - self.assertEqual(switch_configs[0].filter_port, '123') - - def test_switch_config_ip_filterport_unique(self): - def _call(): - with database.session() as session: - session.add(model.SwitchConfig( - ip='10.145.88.1', filter_port='123')) - session.add(model.SwitchConfig( - ip='10.145.88.1', filter_port='123')) - - self.assertRaises(sqlalchemy.exc.IntegrityError, _call) - - def test_switch(self): - with database.session() as session: - switch = model.Switch(ip='10.145.88.1') - switch.credential = { - 'version': 'v2c', 'community': 'public' - } - switch.vendor = 'huawei' - session.add(switch) - - with database.session() as session: - switches = session.query(model.Switch).all() - self.assertEqual(len(switches), 1) - self.assertEqual(switches[0].ip, '10.145.88.1') - self.assertEqual( - switches[0].credential, { - 'version': 'v2c', 'community': 'public' - } - ) - self.assertEqual(switches[0].vendor, 'huawei') - - def test_switch_ip_unique(self): - def _call(): - with database.session() as session: - session.add(model.Switch(ip='10.145.88.1')) - session.add(model.Switch(ip='10.145.88.1')) - - self.assertRaises(sqlalchemy.exc.IntegrityError, _call) - - def test_machine_no_switch(self): - with database.session() as session: - session.add(model.Machine( - mac='00:00:00:01:02:03', - port='123', vlan=100)) - - with database.session() as session: - machines = session.query(model.Machine).all() - self.assertEqual(len(machines), 1) - self.assertEqual(machines[0].mac, '00:00:00:01:02:03') - self.assertEqual(machines[0].port, '123') - self.assertEqual(machines[0].vlan, 100) - self.assertIsNone(machines[0].switch) - - def test_machine_with_switch(self): - with database.session() as session: - switch = model.Switch(ip='192.168.1.1') - switch.machines.append( - model.Machine( - mac='00:00:00:01:02:03', - port='123', vlan=100) - ) - session.add(switch) - - with database.session() as session: - machines = session.query(model.Machine).all() - self.assertEqual(len(machines), 1) - self.assertEqual(machines[0].mac, '00:00:00:01:02:03') - self.assertEqual(machines[0].port, '123') - self.assertEqual(machines[0].vlan, 100) - self.assertIsNotNone(machines[0].switch) - - def test_machine_mac_switch_vlan_unique(self): - def _call(): - with database.session() as session: - machine1 = model.Machine( - mac='00:00:00:01:02:03', - port='123', - vlan=100 - ) - machine2 = model.Machine( - mac='00:00:00:01:02:03', - port='123', - vlan=100 - ) - switch = model.Switch(ip='192.168.1.1') - switch.machines = [machine1, machine2] - session.add(switch) - - self.assertRaises(sqlalchemy.exc.IntegrityError, _call) - - def test_machine_owned_by_one_switch(self): - with database.session() as session: - switch1 = model.Switch(ip='192.168.1.1') - switch2 = model.Switch(ip='192.168.1.2') - machine = model.Machine( - mac='00:00:00:01:02:03', - port='123', - vlan=100 - ) - switch1.machines = [machine] - switch2.machines = [machine] - session.add(switch1) - session.add(switch2) - - with database.session() as session: - machine = session.query(model.Machine).first() - self.assertEqual(machine.switch.ip, '192.168.1.2') - - def test_del_switch(self): - with database.session() as session: - switch = model.Switch(ip='192.68.1.1') - switch.machines = [model.Machine( - mac='00:00:00:01:02:03', - port='123', - vlan=100 - )] - session.add(switch) - - with database.session() as session: - session.query(model.Switch).delete() - - with database.session() as session: - machines = session.query(model.Machine).all() - self.assertEqual(len(machines), 1) - self.assertEqual(machines[0].mac, '00:00:00:01:02:03') - self.assertIsNone(machines[0].switch) - - def test_del_machine(self): - with database.session() as session: - switch = model.Switch(ip='192.68.1.1') - switch.machines = [model.Machine( - mac='00:00:00:01:02:03', - port='123', - vlan=100 - )] - session.add(switch) - - with database.session() as session: - session.query(model.Machine).delete() - - with database.session() as session: - switch = session.query(model.Switch).first() - self.assertEqual(switch.machines.count(), 0) - - def test_cluster_no_name(self): - with database.session() as session: - session.add(model.Cluster()) - - with database.session() as session: - clusters = session.query(model.Cluster).all() - self.assertEqual(len(clusters), 1) - self.assertIsNotNone(clusters[0].name) - self.assertFalse(clusters[0].name == '') - - def test_cluster_empty_name(self): - with database.session() as session: - session.add(model.Cluster(name='')) - - with database.session() as session: - clusters = session.query(model.Cluster).all() - self.assertEqual(len(clusters), 1) - self.assertIsNotNone(clusters[0].name) - self.assertFalse(clusters[0].name == '') - - def test_cluster_name_unique(self): - def _call(): - with database.session() as session: - session.add(model.Cluster(name='cluster1')) - session.add(model.Cluster(name='cluster1')) - - self.assertRaises(sqlalchemy.exc.IntegrityError, _call) - - def test_adapter(self): - with database.session() as session: - session.add(model.Adapter( - name='CentOS_openstack', - os='CentOS', target_system='Openstack')) - - with database.session() as session: - adapters = session.query(model.Adapter).all() - self.assertEqual(len(adapters), 1) - self.assertEqual(adapters[0].name, 'CentOS_openstack') - self.assertEqual(adapters[0].os, 'CentOS') - self.assertEqual(adapters[0].target_system, 'Openstack') - - def test_adapter_name_unique(self): - def _call(): - with database.session() as session: - session.add(model.Adapter( - name='CentOS_openstack', - os='CentOS6.4', target_system='Openstack1')) - session.add(model.Adapter( - name='CentOS_openstack', - os='CentOSi6.5', target_system='Openstack2')) - - self.assertRaises(sqlalchemy.exc.IntegrityError, _call) - - def test_adapter_os_target_system_unique(self): - def _call(): - with database.session() as session: - session.add(model.Adapter( - name='CentOS_openstack1', - os='CentOS', target_system='Openstack')) - session.add(model.Adapter( - name='CentOS_openstack2', - os='CentOS', target_system='Openstack')) - - self.assertRaises(sqlalchemy.exc.IntegrityError, _call) - - def test_cluster_adapter(self): - with database.session() as session: - adapter = model.Adapter( - name='CentOS_openstack', - os='CentOS', - target_system='openstack') - cluster = model.Cluster( - name='cluster1') - cluster.adapter = adapter - session.add(cluster) - - with database.session() as session: - adapter = session.query(model.Adapter).first() - self.assertEqual(adapter.clusters.count(), 1) - - def test_cluster_del(self): - with database.session() as session: - adapter = model.Adapter( - name='CentOS_openstack', - os='CentOS', - target_system='openstack') - cluster = model.Cluster( - name='cluster1') - cluster.adapter = adapter - session.add(cluster) - - with database.session() as session: - session.query(model.Cluster).delete() - - with database.session() as session: - adapters = session.query(model.Adapter).all() - self.assertEqual(len(adapters), 1) - - def test_adapter_del(self): - with database.session() as session: - adapter = model.Adapter( - name='CentOS_openstack', - os='CentOS', - target_system='openstack') - cluster = model.Cluster( - name='cluster1') - cluster.adapter = adapter - session.add(cluster) - - with database.session() as session: - session.query(model.Adapter).delete() - - with database.session() as session: - cluster = session.query(model.Cluster).first() - self.assertIsNone(cluster.adapter) - - def test_cluster_config(self): - with database.session() as session: - cluster = model.Cluster(name='cluster1') - cluster.security = { - 'user': 'abc', - 'password': '123' - } - cluster.networking = { - 'interface': 'eth0', - } - cluster.partition = '/tmp 20%' - session.add(cluster) - - with database.session() as session: - cluster = session.query(model.Cluster).first() - self.assertDictContainsSubset( - { - 'clustername': 'cluster1', - 'security': {'user': 'abc', 'password': '123'}, - 'networking': {'interface': 'eth0'}, - 'partition': '/tmp 20%' - }, cluster.config) - - def test_cluster_config_set(self): - with database.session() as session: - cluster = model.Cluster(name='cluster1') - cluster.config = { - 'security': { - 'user': 'abc', - 'password': '123' - }, - 'networking': { - 'interface': 'eth0', - }, - 'partition': '/tmp 20%' - } - session.add(cluster) - - with database.session() as session: - cluster = session.query(model.Cluster).first() - self.assertEqual( - cluster.security, - {'user': 'abc', 'password': '123'}) - self.assertEqual( - cluster.networking, - {'interface': 'eth0'}) - self.assertEqual( - cluster.partition, - '/tmp 20%') - - def test_clusterhost(self): - with database.session() as session: - host = model.ClusterHost( - hostname='host1') - host.cluster = model.Cluster( - name='cluster1') - host.machine = model.Machine( - mac='00:00:00:01:02:03', - port='123', - vlan=100) - host.machine.switch = model.Switch( - ip='192.168.1.1') - session.add(host) - - with database.session() as session: - host = session.query(model.ClusterHost).first() - self.assertEqual(host.cluster.name, 'cluster1') - self.assertEqual(host.machine.mac, '00:00:00:01:02:03') - self.assertEqual(host.machine.switch.ip, '192.168.1.1') - - def test_no_hostname(self): - with database.session() as session: - cluster = model.Cluster() - cluster.hosts = [model.ClusterHost()] - session.add(cluster) - - with database.session() as session: - hosts = session.query(model.ClusterHost).all() - self.assertEqual(len(hosts), 1) - self.assertIsNotNone(hosts[0].hostname) - self.assertFalse(hosts[0].hostname == '') - - def test_hostname_empty(self): - with database.session() as session: - cluster = model.Cluster() - cluster.hosts = [model.ClusterHost(hostname='')] - session.add(cluster) - - with database.session() as session: - hosts = session.query(model.ClusterHost).all() - self.assertEqual(len(hosts), 1) - self.assertIsNotNone(hosts[0].hostname) - self.assertFalse(hosts[0].hostname == '') - - def test_hostname_cluster_unique(self): - def _call(): - with database.session() as session: - cluster = model.Cluster(name='cluster1') - cluster.hosts = [ - model.ClusterHost(hostname='host1'), - model.ClusterHost(hostname='host1') - ] - session.add(cluster) - - self.assertRaises(sqlalchemy.exc.IntegrityError, _call) - - def test_clusterhost_delete_cluster(self): - with database.session() as session: - cluster = model.Cluster(name='cluster1') - cluster.hosts = [ - model.ClusterHost(hostname='host1') - ] - session.add(cluster) - - with database.session() as session: - session.query(model.Cluster).delete() - - with database.session() as session: - host = session.query(model.ClusterHost).first() - self.assertIsNone(host.cluster) - - def test_clusterhost_delete_machine(self): - with database.session() as session: - host = model.ClusterHost(hostname='host1') - host.machine = model.Machine( - mac='00:00:00:01:02:03', - port='123', - vlan=100) - session.add(host) - - with database.session() as session: - session.query(model.Machine).delete() - - with database.session() as session: - host = session.query(model.ClusterHost).first() - self.assertIsNone(host.machine) - - def test_clusterhost_delete_host(self): - with database.session() as session: - cluster = model.Cluster(name='cluster1') - host = model.ClusterHost(hostname='host1') - cluster.hosts = [host] - host.machine = model.Machine( - mac='00:00:00:01:02:03', - port='123', - vlan=100) - session.add(cluster) - - with database.session() as session: - session.query(model.ClusterHost).delete() - - with database.session() as session: - cluster = session.query(model.Cluster).first() - self.assertEqual(cluster.hosts.count(), 0) - machine = session.query(model.Machine).first() - self.assertIsNone(machine.host) - - def test_host_config(self): - with database.session() as session: - cluster = model.Cluster(name='cluster1') - host = model.ClusterHost( - hostname='host1') - host.machine = model.Machine( - mac='00:00:00:01:02:03', - port='123', - vlan=100) - host.machine.switch = model.Switch( - ip='192.168.1.1') - cluster.hosts = [host] - host.config = { - 'networking': { - 'interfaces': { - 'management': {'ip': '192.168.1.100'} - } - } - } - session.add(cluster) - - with database.session() as session: - host = session.query(model.ClusterHost).first() - self.assertDictContainsSubset( - { - 'hostname': 'host1', - 'clustername': 'cluster1', - 'networking': { - 'interfaces': { - 'management': { - 'mac': '00:00:00:01:02:03', - 'ip': '192.168.1.100' - } - } - }, - 'switch_port': '123', - 'vlan': 100, - 'switch_ip': '192.168.1.1' - }, host.config) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/deployment/__init__.py b/compass/tests/deployment/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests/deployment/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests/deployment/installers/__init__.py b/compass/tests/deployment/installers/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests/deployment/installers/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests/deployment/installers/os_installers/__init__.py b/compass/tests/deployment/installers/os_installers/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests/deployment/installers/os_installers/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests/deployment/installers/os_installers/cobbler/__init__.py b/compass/tests/deployment/installers/os_installers/cobbler/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests/deployment/installers/os_installers/cobbler/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests/deployment/installers/os_installers/cobbler/test_cobbler.py b/compass/tests/deployment/installers/os_installers/cobbler/test_cobbler.py new file mode 100644 index 00000000..bca11b4a --- /dev/null +++ b/compass/tests/deployment/installers/os_installers/cobbler/test_cobbler.py @@ -0,0 +1,293 @@ +#!/usr/bin/python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + + +"""Test cobbler installer module.""" + +from copy import deepcopy +from mock import Mock +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.deployment.installers.config_manager import BaseConfigManager +from compass.deployment.installers.os_installers.cobbler.cobbler \ + import CobblerInstaller +from compass.tests.deployment.test_data import config_data +from compass.utils import setting_wrapper as compass_setting +reload(compass_setting) + + +class TestCobblerInstaller(unittest2.TestCase): + """Test CobblerInstaller methods.""" + def setUp(self): + super(TestCobblerInstaller, self).setUp() + self.test_cobbler = self._get_cobbler_installer() + self.expected_host_vars_dict = { + "baseinfo": { + "mac": "00:0c:29:3e:60:e9", + "name": "server01.test", + "profile": "Ubuntu-12.04-x86_64", + "hostname": "server01", + "dns": "server01.ods.com", + "reinstall_os": True, + "networks": { + "vnet0": { + "ip": "12.234.32.100", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "vnet1": { + "ip": "172.16.1.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + } + } + }, + "os_config": { + "partition": { + "/home": { + "vol_size": 50, + "vol_percentage": 40 + }, + "/test": { + "vol_size": 10, + "vol_percentage": 10 + }, + "/var": { + "vol_size": 30, + "vol_percentage": 30 + } + }, + "server_credentials": { + "username": "root", + "password": "huawei" + }, + "language": "EN", + "timezone": "UTC", + "http_proxy": "http://127.0.0.1:3128", + "https_proxy": "", + "ntp_server": "127.0.0.1", + "nameservers": ["127.0.0.1"], + "search_path": ["ods.com"], + "gateway": "10.145.88.1" + } + } + + def tearDown(self): + super(TestCobblerInstaller, self).tearDown() + del self.test_cobbler + + def _get_cobbler_installer(self): + adapter_info = config_data.adapter_test_config + cluster_info = config_data.cluster_test_config + hosts_info = deepcopy(config_data.hosts_test_config) + # In config_data, only hosts with ID 1 and 2 needs to install OS. + del hosts_info[3] + + config_manager = BaseConfigManager(adapter_info, cluster_info, + hosts_info) + + CobblerInstaller._get_cobbler_server = Mock() + CobblerInstaller._get_cobbler_server.return_value = "mock_server" + CobblerInstaller._get_token = Mock() + CobblerInstaller._get_token.return_value = "mock_token" + + CobblerInstaller.get_tmpl_path = Mock() + test_tmpl_dir = os.path.join(config_data.test_tmpl_dir, 'cobbler') + CobblerInstaller.get_tmpl_path.return_value = test_tmpl_dir + return CobblerInstaller(config_manager) + + def test_get_host_tmpl_vars_dict(self): + host_id = 1 + profile = 'Ubuntu-12.04-x86_64' + global_vars_dict = self.test_cobbler._get_cluster_tmpl_vars_dict() + output = self.test_cobbler._get_host_tmpl_vars_dict(host_id, + global_vars_dict, + profile=profile) + self.maxDiff = None + self.assertDictEqual(self.expected_host_vars_dict, output) + + def test_generate_system_config(self): + expected_system_config = { + "name": "server01.test", + "hostname": "server01", + "profile": "Ubuntu-12.04-x86_64", + "gateway": "10.145.88.1", + "name_servers": ["127.0.0.1"], + "name_servers_search": "ods.com", + "proxy": "http://127.0.0.1:3128", + "modify_interface": { + "ipaddress-vnet0": "12.234.32.100", + "netmask-vnet0": "255.255.255.0", + "management-vnet0": True, + "macaddress-vnet0": "00:0c:29:3e:60:e9", + "dns-vnet0": "server01.ods.com", + "static-vnet0": True, + "ipaddress-vnet1": "172.16.1.1", + "netmask-vnet1": "255.255.255.0", + "management-vnet1": False, + "static-vnet1": True + }, + "ksmeta": { + "promisc_nics": "", + "timezone": "UTC", + "partition": "/home 40%;/test 10%;/var 30%", + "https_proxy": "", + "ntp_server": "127.0.0.1", + "chef_url": "https://127.0.0.1", + "chef_client_name": "server01.test", + "chef_node_name": "server01.test", + "tool": "chef" + } + } + package_config = { + 1: { + "chef_url": "https://127.0.0.1", + "chef_client_name": "server01.test", + "chef_node_name": "server01.test", + "tool": "chef" + } + } + host_id = 1 + self.test_cobbler.set_package_installer_config(package_config) + output = self.test_cobbler._generate_system_config( + host_id, self.expected_host_vars_dict) + self.maxDiff = None + self.assertEqual(expected_system_config, output) + + def test_deploy(self): + profile = 'Ubuntu-12.04-x86_64' + self.test_cobbler._get_profile_from_server = Mock() + self.test_cobbler._get_profile_from_server.return_value = profile + self.test_cobbler.update_host_config_to_cobbler = Mock() + self.test_cobbler._sync = Mock() + + expected_output = { + "cluster": { + "id": 1, + "deployed_os_config": { + "language": "EN", + "timezone": "UTC", + "gateway": "12.234.32.1", + "http_proxy": "http://127.0.0.1:3128", + "https_proxy": "", + "ntp_server": "127.0.0.1", + "nameservers": ["127.0.0.1"], + "search_path": ["ods.com"], + "partition": { + "/var": { + "vol_percentage": 20, + "vol_size": 20 + }, + "/home": { + "vol_percentage": 40, + "vol_size": 50 + } + }, + "server_credentials": { + "username": "root", + "password": "huawei" + } + } + }, + "hosts": { + 1: { + "deployed_os_config": { + "language": "EN", + "timezone": "UTC", + "gateway": "10.145.88.1", + "http_proxy": "http://127.0.0.1:3128", + "https_proxy": "", + "ntp_server": "127.0.0.1", + "nameservers": ["127.0.0.1"], + "search_path": ["ods.com"], + "partition": { + "/var": { + "vol_percentage": 30, + "vol_size": 30 + }, + "/home": { + "vol_percentage": 40, + "vol_size": 50 + }, + "/test": { + "vol_percentage": 10, + "vol_size": 10 + } + }, + "server_credentials": { + "username": "root", + "password": "huawei" + } + } + }, + 2: { + "deployed_os_config": { + "language": "EN", + "timezone": "UTC", + "gateway": "12.234.32.1", + "http_proxy": "http://127.0.0.1:3128", + "https_proxy": "", + "ntp_server": "127.0.0.1", + "nameservers": ["127.0.0.1"], + "search_path": ["ods.com"], + "partition": { + "/var": { + "vol_percentage": 20, + "vol_size": 20 + }, + "/home": { + "vol_percentage": 40, + "vol_size": 50 + }, + "/test": { + "vol_percentage": 20, + "vol_size": 10 + } + }, + "server_credentials": { + "username": "root", + "password": "huawei" + } + } + } + } + } + output = self.test_cobbler.deploy() + self.maxDiff = None + self.assertDictEqual(expected_output, output) + + def test_check_and_set_system_impi(self): + self.test_cobbler._update_system_config = Mock() + self.test_cobbler.dump_system_info = Mock() + self.test_cobbler.dump_system_info.return_value = { + 'power_type': 'ipmilan', + 'power_address': '', + 'power_user': '', + 'power_pass': '' + } + output = self.test_cobbler._check_and_set_system_impi(3, "test_sys_id") + self.assertTrue(output) diff --git a/compass/tests/deployment/installers/pk_installers/__init__.py b/compass/tests/deployment/installers/pk_installers/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests/deployment/installers/pk_installers/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests/deployment/installers/pk_installers/chef_installer/__init__.py b/compass/tests/deployment/installers/pk_installers/chef_installer/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests/deployment/installers/pk_installers/chef_installer/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests/deployment/installers/pk_installers/chef_installer/test_chef.py b/compass/tests/deployment/installers/pk_installers/chef_installer/test_chef.py new file mode 100644 index 00000000..20d5e8fa --- /dev/null +++ b/compass/tests/deployment/installers/pk_installers/chef_installer/test_chef.py @@ -0,0 +1,505 @@ +#!/usr/bin/python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + + +"""Test Chef installer module. +""" + +from mock import Mock +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + +from compass.deployment.installers.config_manager import BaseConfigManager +from compass.tests.deployment.test_data import config_data +from compass.utils import setting_wrapper as compass_setting +reload(compass_setting) + + +from compass.deployment.installers.pk_installers.chef_installer.chef_installer\ + import ChefInstaller + + +class TestChefInstaller(unittest2.TestCase): + """Test installer functionality.""" + def setUp(self): + super(TestChefInstaller, self).setUp() + self.test_chef = self._get_chef_installer() + + def tearDown(self): + super(TestChefInstaller, self).tearDown() + + def _get_chef_installer(self): + adapter_info = config_data.adapter_test_config + cluster_info = config_data.cluster_test_config + hosts_info = config_data.hosts_test_config + + config_manager = BaseConfigManager(adapter_info, cluster_info, + hosts_info) + + ChefInstaller.get_tmpl_path = Mock() + test_tmpl_dir = os.path.join( + os.path.join(config_data.test_tmpl_dir, 'chef_installer'), + 'openstack_icehouse' + ) + ChefInstaller.get_tmpl_path.return_value = test_tmpl_dir + + ChefInstaller._get_chef_api = Mock() + ChefInstaller._get_chef_api.return_value = 'mock_server' + ChefInstaller.get_all_roles = Mock() + ChefInstaller.get_all_roles.return_value = [] + ChefInstaller.validate_roles = Mock() + ChefInstaller.validate_roles.return_value = True + chef_installer = ChefInstaller(config_manager) + return chef_installer + + def test_get_tmpl_vars(self): + pass + + def test_get_node_attributes(self): + cluster_dict = self.test_chef._get_cluster_tmpl_vars() + vars_dict = self.test_chef._get_host_tmpl_vars(2, cluster_dict) + expected_node_attr = { + "override": { + "openstack": { + "endpoints": { + "compute-vnc-bind": { + "host": "12.234.32.101" + } + } + } + } + } + output = self.test_chef._generate_node_attributes( + ['os-compute-worker'], vars_dict + ) + self.maxDiff = None + self.assertDictEqual(expected_node_attr, output) + + def test_get_env_attributes(self): + expected_env = { + "name": "testing", + "description": "Environment", + "cookbook_versions": { + }, + "json_class": "Chef::Environment", + "chef_type": "environment", + "default_attributes": { + "compute": { + "syslog": { + "use": False + }, + "libvirt": { + "bind_interface": "eth0" + }, + "novnc_proxy": { + "bind_interface": "vnet0" + }, + "xvpvnc_proxy": { + "bind_interface": "eth0" + } + }, + "network": { + "l3": { + "external_network_bridge_interface": "eth2" + } + }, + "db": { + "bind_interface": "vnet0", + "compute": { + "host": "12.234.32.100" + }, + "identity": { + "host": "12.234.32.100" + } + }, + "mq": { + "user": "guest", + "password": "test", + "vhost": "/nova", + "network": { + "service_type": "rabbitmq" + } + } + } + } + vars_dict = self.test_chef._get_cluster_tmpl_vars() + output = self.test_chef._generate_env_attributes(vars_dict) + self.maxDiff = None + self.assertDictEqual(expected_env, output) + + def test_get_databagitem_attributes(self): + vars_dict = { + "package_config": { + "service_credentials": { + "nova": { + "username": "nova", + "password": "compute" + } + }, + "users_credentials": { + "ksadmin": { + "username": "ksadmin", + "password": "ksadmin" + }, + "demo": { + "username": "demo", + "password": "demo" + } + } + } + } + expected_output = { + "user_passwords": { + "admin": { + "admin": "admin", + }, + "ksadmin": { + "ksadmin": "ksadmin" + }, + "demo": { + "demo": "demo" + } + }, + "db_passwords": { + "nova": { + "nova": "compute", + }, + "horizon": { + "horizon": "horizon" + }, + "keystone": { + "keystone": "keystone" + } + } + } + databag_dir = os.path.join(self.test_chef.get_tmpl_path(), 'databags') + databags = self.test_chef.get_chef_databag_names() + for bag in databags: + tmpl_path = os.path.join(databag_dir, '.'.join((bag, 'tmpl'))) + output = self.test_chef._generate_databagitem_attributes(tmpl_path, + vars_dict) + self.maxDiff = None + self.assertDictEqual(expected_output[bag], output) + + def test_clean_log(self): + host_id = 1 + fullname = self.test_chef.config_manager.get_host_fullname(host_id) + test_log_dir = os.path.join('/tmp', fullname) + if not os.path.exists(test_log_dir): + os.makedirs(test_log_dir) + + self.test_chef._clean_log('/tmp', fullname) + self.assertFalse(os.path.exists(test_log_dir)) + + def test_deploy(self): + expected_output = { + "cluster": { + "id": 1, + "deployed_package_config": { + "service_credentials": { + "mq": { + "username": "guest", + "password": "test" + } + }, + "roles_mapping": { + "os_controller": { + "hostname": "server01", + "management": { + "interface": "vnet0", + "ip": "12.234.32.100", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "vnet1", + "ip": "172.16.1.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + } + }, + "os_compute_worker": { + "hostname": "server02", + "management": { + "interface": "eth0", + "ip": "12.234.32.101", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "eth1", + "ip": "172.16.1.2", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + } + }, + "os_network": { + "hostname": "server03", + "management": { + "interface": "eth0", + "ip": "12.234.32.103", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "eth1", + "ip": "172.16.1.3", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + }, + "public": { + "interface": "eth2", + "ip": "10.0.0.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": True, + "subnet": "10.0.0.0/24" + } + } + } + } + }, + "hosts": { + 1: { + "deployed_package_config": { + "roles_mapping": { + "os_controller": { + "hostname": "server01", + "management": { + "interface": "vnet0", + "ip": "12.234.32.100", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "vnet1", + "ip": "172.16.1.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + } + } + }, + "service_credentials": { + "mq": { + "username": "guest", + "password": "test" + } + } + } + }, + 2: { + "deployed_package_config": { + "roles_mapping": { + "os_compute_worker": { + "hostname": "server02", + "management": { + "interface": "eth0", + "ip": "12.234.32.101", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "eth1", + "ip": "172.16.1.2", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + } + } + }, + "service_credentials": { + "mq": { + "username": "guest", + "password": "test" + } + } + } + }, + 3: { + "deployed_package_config": { + "roles_mapping": { + "os_network": { + "hostname": "server03", + "management": { + "interface": "eth0", + "ip": "12.234.32.103", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "eth1", + "ip": "172.16.1.3", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + }, + "public": { + "interface": "eth2", + "ip": "10.0.0.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": True, + "subnet": "10.0.0.0/24" + } + }, + "os_compute_worker": { + "hostname": "server03", + "management": { + "interface": "eth0", + "ip": "12.234.32.103", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "eth1", + "ip": "172.16.1.3", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + }, + "public": { + "interface": "eth2", + "ip": "10.0.0.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": True, + "subnet": "10.0.0.0/24" + } + } + }, + "service_credentials": { + "mq": { + "username": "guest", + "password": "test" + } + } + } + } + } + } + self.test_chef.upload_environment = Mock() + self.test_chef.update_databags = Mock() + self.test_chef.get_create_node = Mock() + self.test_chef.add_roles = Mock() + + output = self.test_chef.deploy() + self.maxDiff = None + self.assertDictEqual(expected_output, output) + + def test_generate_installer_config(self): + test_data = [ + { + "settings": { + "chef_url": "https://127.0.0.1", + "chef_server_dns": "test_chef", + "key_dir": "xxx", + "client_name": "xxx", + "databags": ["user_passwords", "db_passwords"] + }, + "excepted_output": { + 1: { + "tool": "chef", + "chef_url": "https://127.0.0.1", + "chef_node_name": "test_node", + "chef_client_name": "test_node", + "chef_server_ip": "127.0.0.1", + "chef_server_dns": "test_chef" + } + } + }, + { + "settings": { + "chef_url": "https://test_chef", + "chef_server_ip": "127.0.0.1", + "key_dir": "xxx", + "client_name": "xxx", + "databags": ["user_passwords", "db_passwords"] + }, + "excepted_output": { + 1: { + "tool": "chef", + "chef_url": "https://test_chef", + "chef_node_name": "test_node", + "chef_client_name": "test_node", + "chef_server_ip": "127.0.0.1", + "chef_server_dns": "test_chef" + } + } + }, + { + "settings": { + "chef_url": "https://test_chef", + "key_dir": "xxx", + "client_name": "xxx", + "databags": ["user_passwords", "db_passwords"] + }, + "excepted_output": { + 1: { + "tool": "chef", + "chef_url": "https://test_chef", + "chef_node_name": "test_node", + "chef_client_name": "test_node" + } + } + } + ] + nname = 'test_node' + self.test_chef.config_manager.get_host_id_list = Mock() + self.test_chef.config_manager.get_host_id_list.return_value = [1] + self.test_chef.config_manager.get_host_fullname = Mock() + self.test_chef.config_manager.get_host_fullname.return_value = nname + + for entry in test_data: + chef_config = entry["settings"] + chef_url = chef_config["chef_url"] + self.test_chef.installer_url = chef_url + self.test_chef.config_manager.get_pk_installer_settings = Mock() + self.test_chef.config_manager.get_pk_installer_settings\ + .return_value = chef_config + + output = self.test_chef.generate_installer_config() + self.maxDiff = None + self.assertDictEqual(entry["excepted_output"], output) diff --git a/compass/tests/deployment/installers/test_config_manager.py b/compass/tests/deployment/installers/test_config_manager.py new file mode 100644 index 00000000..74559917 --- /dev/null +++ b/compass/tests/deployment/installers/test_config_manager.py @@ -0,0 +1,201 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Test config_manager module.""" + +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + +from compass.deployment.installers.config_manager import BaseConfigManager +from compass.deployment.utils import constants as const +from compass.tests.deployment.test_data import config_data +from compass.utils import setting_wrapper as compass_setting +reload(compass_setting) + + +class TestConfigManager(unittest2.TestCase): + """Test ConfigManager methods.""" + def setUp(self): + super(TestConfigManager, self).setUp() + self.adapter_test_info = config_data.adapter_test_config + self.cluster_test_info = config_data.cluster_test_config + self.hosts_test_info = config_data.hosts_test_config + self.test_config_manager = BaseConfigManager(self.adapter_test_info, + self.cluster_test_info, + self.hosts_test_info) + + def tearDown(self): + super(TestConfigManager, self).tearDown() + del self.test_config_manager + + def test_get_cluster_baseinfo(self): + expected_output = { + "id": 1, + "name": "test", + "os_name": "Ubuntu-12.04-x86_64" + } + output = self.test_config_manager.get_cluster_baseinfo() + self.maxDiff = None + self.assertDictEqual(expected_output, output) + + def test_get_host_id_list(self): + expected_output = [1, 2, 3] + output = self.test_config_manager.get_host_id_list() + self.assertEqual(expected_output, output) + + def test_get_cluster_flavor_info(self): + expected_output = self.cluster_test_info[const.FLAVOR] + output = self.test_config_manager.get_cluster_flavor_info() + self.assertDictEqual(expected_output, output) + + def test_get_cluster_roles_mapping(self): + expected_output = { + "os_controller": { + "hostname": "server01", + "management": { + "interface": "vnet0", + "ip": "12.234.32.100", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "vnet1", + "ip": "172.16.1.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + } + }, + "os_compute_worker": { + "hostname": "server02", + "management": { + "interface": "eth0", + "ip": "12.234.32.101", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "eth1", + "ip": "172.16.1.2", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + } + }, + "os_network": { + "hostname": "server03", + "management": { + "interface": "eth0", + "ip": "12.234.32.103", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "eth1", + "ip": "172.16.1.3", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + }, + "public": { + "interface": "eth2", + "ip": "10.0.0.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": True, + "subnet": "10.0.0.0/24" + } + } + } + self.maxDiff = None + output = self.test_config_manager.get_cluster_roles_mapping() + self.assertEqual(expected_output, output) + + def test_get_all_hosts_roles(self): + expected_output = ['os-compute-worker', 'os-network', 'os-controller'] + output = self.test_config_manager.get_all_hosts_roles() + self.assertEqual(len(expected_output), len(output)) + self.assertEqual(sorted(expected_output), sorted(output)) + + def test_get_host_role_mapping(self): + expected_output = { + "os_network": { + "hostname": "server03", + "management": { + "interface": "eth0", + "ip": "12.234.32.103", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "eth1", + "ip": "172.16.1.3", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + }, + "public": { + "interface": "eth2", + "ip": "10.0.0.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": True, + "subnet": "10.0.0.0/24" + } + }, + "os_compute_worker": { + "hostname": "server03", + "management": { + "interface": "eth0", + "ip": "12.234.32.103", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "tenant": { + "interface": "eth1", + "ip": "172.16.1.3", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + }, + "public": { + "interface": "eth2", + "ip": "10.0.0.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": True, + "subnet": "10.0.0.0/24" + } + } + } + self.maxDiff = None + output = self.test_config_manager.get_host_roles_mapping(3) + self.assertEqual(expected_output, output) diff --git a/compass/tests/deployment/installers/test_installer.py b/compass/tests/deployment/installers/test_installer.py new file mode 100644 index 00000000..3e325c63 --- /dev/null +++ b/compass/tests/deployment/installers/test_installer.py @@ -0,0 +1,50 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +"""Test base installer functionalities.""" + +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + +from compass.deployment.installers.installer import BaseInstaller +from compass.tests.deployment.test_data import config_data +from compass.utils import setting_wrapper as compass_setting +reload(compass_setting) + + +class TestBaseInstaller(unittest2.TestCase): + """Test base installer.""" + def setUp(self): + super(TestBaseInstaller, self).setUp() + self.test_installer = BaseInstaller() + + def tearDown(self): + super(TestBaseInstaller, self).tearDown() + del self.test_installer + + def test_get_tmpl_vars_from_metadata(self): + test_cases = config_data.metadata_test_cases + for case in test_cases: + metadata = case["metadata"] + config = case["config"] + expected_output = case["expected_output"] + + output = self.test_installer.get_tmpl_vars_from_metadata( + metadata, config + ) + + self.maxDiff = None + self.assertDictEqual(expected_output, output) diff --git a/compass/tests/deployment/test_data/__init__.py b/compass/tests/deployment/test_data/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests/deployment/test_data/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests/deployment/test_data/config_data.py b/compass/tests/deployment/test_data/config_data.py new file mode 100644 index 00000000..84c0cfa7 --- /dev/null +++ b/compass/tests/deployment/test_data/config_data.py @@ -0,0 +1,483 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + +import os +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as compass_setting +reload(compass_setting) + + +curr_dir = os.path.dirname(os.path.realpath(__file__)) +test_tmpl_dir = os.path.join(curr_dir, 'templates') + +test_chef_url = compass_setting.TEST_CHEF_URL +test_client_key = compass_setting.TEST_CLIENT_KEY_PATH +test_client = compass_setting.TEST_CLIENT_NAME + + +adapter_test_config = { + "name": "openstack_icehouse", + "distributed_system_name": "openstack_icehouse", + "flavors": [ + { + "falvor_name": "test_flavor", + "roles": ["os-controller", "os-compute-worker", "os-network"], + "template": "multinodes.tmpl" + } + ], + "os_installer": { + "name": "cobbler", + "settings": { + "cobbler_url": "http://127.0.0.1/cobbler_api", + "credentials": { + "username": "cobbler", + "password": "cobbler" + } + } + }, + "package_installer": { + "name": "chef_installer", + "settings": { + "chef_url": "https://127.0.0.1", + "chef_server_ip": "127.0.0.1", + "chef_server_dns": "test_chef", + "key_dir": "xxx", + "client_name": "xxx", + "databags": ["user_passwords", "db_passwords"] + } + }, + "metadata": { + "os_config": { + "_self": {}, + "general": { + "_self": {"mapping_to": ""}, + "language": { + "_self": { + "mapping_to": "language", + }, + }, + "timezone": { + "_self": { + "mapping_to": "timezone" + } + }, + "default_gateway": { + "_self": { + "mapping_to": "gateway" + } + }, + "domain": { + "_self": {"mapping_to": ""} + }, + "http_proxy": { + "_self": { + "mapping_to": "http_proxy" + } + }, + "ntp_server": { + "_self": {"mapping_to": "ntp_server"} + }, + "dns_servers": { + "_self": {"mapping_to": "nameservers"} + }, + "search_path": { + "_self": {"mapping_to": "search_path"} + }, + "https_proxy": { + "_self": {"mapping_to": "https_proxy"} + } + }, + "partition": { + "_self": { + "mapping_to": "partition" + }, + "$path": { + "_self": {"mapping_to": ""}, + "max_size": { + "_self": {"mapping_to": "vol_size"} + }, + "size_percentage": { + "_self": {"mapping_to": "vol_percentage"} + } + } + }, + "server_credentials": { + "_self": { + "mapping_to": "server_credentials" + }, + "username": { + "_self": {"mapping_to": "username"} + }, + "password": { + "_self": {"mapping_to": "password"} + } + } + }, + "package_config": { + "_self": {}, + "security": { + "_self": {}, + "service_credentials": { + "_self": { + "mapping_to": "service_credentials" + }, + "rabbit_mq": { + "_self": { + "mapping_to": "mq" + }, + "username": { + "_self": { + "mapping_to": "username" + } + }, + "password": { + "_self": { + "mapping_to": "password" + } + } + } + } + }, + "network_mapping": { + "_self": {}, + "management": { + "_self": {}, + "interface": { + "_self": {} + } + }, + "public": { + "_self": {}, + "interface": { + "_self": {} + } + }, + "tenant": { + "_self": {}, + "interface": { + "_self": {} + } + } + }, + "roles": { + "_self": {} + } + } + } +} + + +cluster_test_config = { + "id": 1, + "os_name": "Ubuntu-12.04-x86_64", + "name": "test", + "flavor": { + "falvor_name": "test_flavor", + "roles": ["os-controller", "os-compute-worker", "os-network"], + "template": "multinodes.tmpl" + }, + "os_config": { + "general": { + "language": "EN", + "timezone": "UTC", + "default_gateway": "12.234.32.1", + "domain": "ods.com", + "http_proxy": "http://127.0.0.1:3128", + "https_proxy": "", + "ntp_server": "127.0.0.1", + "dns_servers": ["127.0.0.1"], + "search_path": ["ods.com"] + }, + "partition": { + "/var": { + "max_size": 20, + "size_percentage": 20 + }, + "/home": { + "max_size": 50, + "size_percentage": 40 + } + }, + "server_credentials": { + "username": "root", + "password": "huawei" + } + }, + "package_config": { + "security": { + "service_credentials": { + "rabbit_mq": { + "username": "guest", + "password": "test" + } + } + }, + "network_mapping": { + "management": { + "interface": "eth0" + }, + "public": { + "interface": "eth2" + }, + "tenant": { + "interface": "eth1" + } + } + } +} + +hosts_test_config = { + 1: { + "host_id": 1, + "reinstall_os": True, + "mac": "00:0c:29:3e:60:e9", + "name": "server01.test", + "hostname": "server01", + "roles": ["os-controller"], + "networks": { + "vnet0": { + "ip": "12.234.32.100", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "vnet1": { + "ip": "172.16.1.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + } + }, + "os_config": { + "general": { + "default_gateway": "10.145.88.1", + }, + "partition": { + "/var": { + "max_size": 30, + "size_percentage": 30 + }, + "/test": { + "max_size": 10, + "size_percentage": 10 + } + } + }, + "package_config": { + "network_mapping": { + "management": { + "interface": "vnet0" + }, + "tenant": { + "interface": "vnet1" + } + } + } + }, + 2: { + "host_id": 2, + "reinstall_os": True, + "mac": "00:0c:29:3e:60:a1", + "name": "server02.test", + "hostname": "server02", + "roles": ["os-compute-worker"], + "networks": { + "eth0": { + "ip": "12.234.32.101", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "eth1": { + "ip": "172.16.1.2", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + } + }, + "os_config": { + "general": { + "language": "EN", + "timezone": "UTC", + "domain": "ods.com" + }, + "partition": { + "/test": { + "max_size": 10, + "size_percentage": 20 + } + } + }, + "package_config": { + } + }, + 3: { + "host_id": 10, + "reinstall_os": False, + "mac": "00:0c:29:3e:60:a2", + "name": "server03.test", + "hostname": "server03", + "roles": ["os-network", "os-compute-worker"], + "networks": { + "eth0": { + "ip": "12.234.32.103", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "12.234.32.0/24" + }, + "eth1": { + "ip": "172.16.1.3", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": False, + "subnet": "172.16.1.0/24" + }, + "eth2": { + "ip": "10.0.0.1", + "netmask": "255.255.255.0", + "is_mgmt": False, + "is_promiscuous": True, + "subnet": "10.0.0.0/24" + } + }, + "ipmi_credentials": { + "ip": "172.16.100.104", + "username": "admin", + "password": "admin" + }, + "os_config": { + "general": { + "language": "EN", + "timezone": "UTC", + "default_gateway": "12.234.32.1", + "domain": "ods.com", + "http_proxy": "http://10.145.88.211:3128", + "https_proxy": "", + "ntp_server": "10.145.88.211", + "dns_servers": "10.145.88.211", + "search_path": "ods.com" + }, + "partition": { + "/var": { + "max_size": 20, + "size_percentage": 20 + }, + "/home": { + "max_size": 50, + "size_percentage": 40 + } + } + }, + "package_config": { + } + } +} + + +metadata_test_cases = [ + { + "metadata": { + "general": { + "_self": {}, + "language": { + "_self": {"mapping_to": "lan"} + }, + "timezone": { + "_self": {"mapping_to": "timezone"} + } + } + }, + "config": { + "general": { + "language": "EN", + "timezone": "UTC" + } + }, + "expected_output": { + "lan": "EN", + "timezone": "UTC" + } + }, + { + "metadata": { + "security": { + "_self": {"mapping_to": "security"}, + "$credentials": { + "_self": {}, + "$service": { + "username": { + "_self": {"mapping_to": "user"} + }, + "password": { + "_self": {"mapping_to": "pass"} + } + } + } + }, + "test": { + "_self": {"mapping_to": "test_section"}, + "item1": { + "_self": {"mapping_to": "itema"} + }, + "item2": { + "_self": {"mapping_to": "itemb"} + } + } + }, + "config": { + "security": { + "service_credentials": { + "glance": {"username": "glance", "password": "glance"}, + "identity": {"username": "keystone", + "password": "keystone"}, + "dash": {"username": "dash", "password": "dash"} + }, + "db_credentials": { + "mysql": {"username": "root", "password": "root"}, + "rabbit_mq": {"username": "guest", "password": "guest"} + } + }, + "test": { + "item1": "a", + "item2": "b" + } + }, + "expected_output": { + "security": { + "service_credentials": { + "glance": {"user": "glance", "pass": "glance"}, + "identity": {"user": "keystone", "pass": "keystone"}, + "dash": {"user": "dash", "pass": "dash"} + }, + "db_credentials": { + "mysql": {"user": "root", "pass": "root"}, + "rabbit_mq": {"user": "guest", "pass": "guest"} + } + }, + "test_section": { + "itema": "a", + "itemb": "b" + } + } + } +] diff --git a/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/db_passwords.tmpl b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/db_passwords.tmpl new file mode 100644 index 00000000..2cc9a834 --- /dev/null +++ b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/db_passwords.tmpl @@ -0,0 +1,18 @@ +#set aval_services = ['nova', 'horizon', 'keystone'] +#set service_config = $getVar('service_credentials', {}) + +#set databagitems = {} +#for $service in $aval_services: + #set databagitems[$service] = {$service: $service} +#end for + +#if service_config: + #for $service, $value in $service_config.iteritems(): + #if $service in $aval_services: + #set databagitems[$service] = {$service: $value.password} + #end if + #end for +#end if +#import simplejson as json +#set output = json.dumps($databagitems, encoding='utf-8') +$output diff --git a/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/secrets.tmpl b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/secrets.tmpl new file mode 100644 index 00000000..9ded4736 --- /dev/null +++ b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/secrets.tmpl @@ -0,0 +1,8 @@ +{ + "openstack_identity_bootstrap_token": { + "openstack_identity_bootstrap_token": "mytoken" + }, + "neutron_metadata_secret": { + "neutron_metadata_secret": "secret" + } +} diff --git a/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/service_passwords.tmpl b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/service_passwords.tmpl new file mode 100644 index 00000000..f171f30a --- /dev/null +++ b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/service_passwords.tmpl @@ -0,0 +1,20 @@ +#set required_services = ['openstack-image', 'openstack-compute', 'openstack-block-storage', 'openstack-orchestration', 'openstack-network', 'rbd'] +#set services_config = $getVar('services_credentials', {}) + +#set databagitems = {} +#for $service in $required_services: + #if $service not in $databagitems: + #set databagitems[$service] = {$service: $service} + #end if +#end for + +#if services_config: + #for $service, $value in $services_config.iteritems(): + #if $service in $required_services: + #set databagitems[$service] = {$service: $value.password} + #end if + #end for +#end if +#import simplejson as json +#set output = json.dumps($databagitems, encoding='utf-8') +$output diff --git a/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/user_passwords.tmpl b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/user_passwords.tmpl new file mode 100644 index 00000000..9dca4af3 --- /dev/null +++ b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/databags/user_passwords.tmpl @@ -0,0 +1,16 @@ +#set required_users = ['admin'] +#set user_config = $getVar('users_credentials', {}) +#set databagitems = {} +#if user_config: + #for $user, $value in $user_config.iteritems(): + #set databagitems[$user] = {$value.username: $value.password} + #end for +#end if +#for $user in $required_users: + #if $user not in $databagitems: + #set databagitems[$user] = {$user: $user} + #end if +#end for +#import simplejson as json +#set output = json.dumps($databagitems, encoding='utf-8') +$output diff --git a/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl new file mode 100644 index 00000000..ab015933 --- /dev/null +++ b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl @@ -0,0 +1,91 @@ +#set controller_role = $get_role('os_compute_controller', $getVar('os_controller', None)) + +## Contoller node management IP/interface +#set controller_ip = $controller_role.management.ip +#set controller_nic = $controller_role.management.interface + +## Compute node management IP/interface +#set compute_role = $getVar('os_compute_worker', None) +#set compute_nic = $compute_role.management.interface + +## Network server/worker node IP/interface +#set network = $getVar('os_network', None) +#set network_server_role = $get_role('os_network_server', [$network, $controller_role]) +#set network_worker_role = $get_role('os_network_worker', [$network, $compute_role]) + +#set network_server_ip = $network_server_role.management.ip +#set network_server_nic = $network_server_role.management.interface + +## Network worker node management IP/interface +#set network_worker_ip = $network_worker_role.management.ip +#set network_worker_nic = $network_worker_role.management.interface +#set network_worker_public_nic = $network_worker_role.public.interface + +## Database node management IP +#set db_role = $get_role('os_ops_database', $controller_role) +#set db_ip = $db_role.management.ip + +#def get_role($role_name, $default_roles=None) + #set target_role = $getVar($role_name, None) + #if $target_role is None and $default_roles is not None: + #if isinstance($default_roles, list) + #for $role in $default_roles + #if $role is not None: + #set target_role = $role + #break + #end if + #end for + #else + #set target_role = $default_roles + #end if + #end if + #return target_role +#end def + +#set credentials = $getVar('service_credentials', {}) +{ + "name": "testing", + "description": "Environment", + "cookbook_versions": { + }, + "json_class": "Chef::Environment", + "chef_type": "environment", + "default_attributes": { + "compute": { + "syslog": { + "use": false + }, + "libvirt": { + "bind_interface": "$compute_nic" + }, + "novnc_proxy": { + "bind_interface": "$controller_nic" + }, + "xvpvnc_proxy": { + "bind_interface": "eth0" + } + }, + "network": { + "l3": { + "external_network_bridge_interface": "$network_worker_public_nic" + } + }, + "db": { + "bind_interface": "$controller_nic", + "compute": { + "host": "$db_ip" + }, + "identity": { + "host": "$db_ip" + } + }, + "mq": { + "user": "$credentials.mq.username", + "password": "$credentials.mq.password", + "vhost": "/nova", + "network": { + "service_type": "rabbitmq" + } + } + } +} diff --git a/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/nodes/os_compute_worker.tmpl b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/nodes/os_compute_worker.tmpl new file mode 100644 index 00000000..8ecbbde9 --- /dev/null +++ b/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/nodes/os_compute_worker.tmpl @@ -0,0 +1,11 @@ +{ + "override": { + "openstack": { + "endpoints": { + "compute-vnc-bind": { + "host":"$os_compute_worker.management.ip" + } + } + } + } +} diff --git a/compass/tests/deployment/test_data/templates/cobbler/Ubuntu-12.04-x86_64/system.tmpl b/compass/tests/deployment/test_data/templates/cobbler/Ubuntu-12.04-x86_64/system.tmpl new file mode 100644 index 00000000..5fe12e4e --- /dev/null +++ b/compass/tests/deployment/test_data/templates/cobbler/Ubuntu-12.04-x86_64/system.tmpl @@ -0,0 +1,57 @@ +{ + "name": "$name", + "hostname": "$hostname", + "profile": "$profile", + "gateway": "$gateway", + #import simplejson as json + #set nameservers = json.dumps($nameservers, encoding='utf-8') + "name_servers": $nameservers, + #set search_path = ' '.join($search_path) + "name_servers_search": "$search_path", + "proxy": "$http_proxy", + "modify_interface": + #set networks = $networks + #set rekeyed = {} + #set promicnic = "" + #for $nic, $val in $networks.iteritems(): + #set ip_key = '-'.join(('ipaddress', $nic)) + #set netmask_key = '-'.join(('netmask', $nic)) + #set mgmt_key = '-'.join(('management', $nic)) + #set static_key = '-'.join(('static', $nic)) + #set $rekeyed[$ip_key] = $val.ip + #set $rekeyed[$netmask_key] = $val.netmask + #set $rekeyed[$mgmt_key] = $val.is_mgmt + #set $rekeyed[$static_key] = True + + #if $val.is_promiscuous: + #set promicnic = $nic + #end if + #if $val.is_mgmt: + #set mac_key = '-'.join(('macaddress', $nic)) + #set dns_key = '-'.join(('dns', $nic)) + #set $rekeyed[$mac_key] = $mac + #set $rekeyed[$dns_key] = $dns + #end if + #end for + #set nic_info = json.dumps($rekeyed, encoding='utf-8') + $nic_info + , + "ksmeta":{ + #set partition_config = '' + #for k, v in sorted($partition.iteritems()): + #set path = '' + #if v['vol_percentage']: + #set $path = k + ' ' + str(v['vol_percentage']) + '%' + #else: + #set $path = k + ' ' + str(v['vol_size']) + #end if + #set partition_config = ';'.join((partition_config, $path)) + #end for + #set partition_config = partition_config[1:] + "promisc_nics": "$promicnic", + "partition": "$partition_config", + "https_proxy": "$https_proxy", + "ntp_server": "$ntp_server", + "timezone": "$timezone" + } +} diff --git a/compass/tests/deployment/test_deploy_manager.py b/compass/tests/deployment/test_deploy_manager.py new file mode 100644 index 00000000..325e6a36 --- /dev/null +++ b/compass/tests/deployment/test_deploy_manager.py @@ -0,0 +1,62 @@ +#!/usr/bin/python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + + +"""Test deploy_manager module.""" + +from mock import Mock +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +from copy import deepcopy +reload(setting) + + +from compass.deployment.deploy_manager import DeployManager +from compass.tests.deployment.test_data import config_data + + +class TestDeployManager(unittest2.TestCase): + """Test DeployManager methods.""" + def setUp(self): + super(TestDeployManager, self).setUp() + + def tearDown(self): + super(TestDeployManager, self).tearDown() + + def test_init_DeployManager(self): + adapter_info = deepcopy(config_data.adapter_test_config) + cluster_info = deepcopy(config_data.cluster_test_config) + hosts_info = deepcopy(config_data.hosts_test_config) + + DeployManager._get_installer = Mock() + DeployManager._get_installer.return_value = "mock_installer" + + test_manager = DeployManager(adapter_info, cluster_info, hosts_info) + self.assertIsNotNone(test_manager) + + # Test hepler function _get_hosts_for_os_installation return correct + # number of hosts config for os deployment. In config_data, two out of + # three hosts need to install OS. + hosts_list = test_manager._get_hosts_for_os_installation(hosts_info) + self.assertEqual(2, len(hosts_list)) diff --git a/compass/tests/hdsdiscovery/__init__.py b/compass/tests/hdsdiscovery/__init__.py deleted file mode 100644 index 4ee55a4c..00000000 --- a/compass/tests/hdsdiscovery/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. diff --git a/compass/tests/hdsdiscovery/test_base.py b/compass/tests/hdsdiscovery/test_base.py deleted file mode 100755 index be096f9c..00000000 --- a/compass/tests/hdsdiscovery/test_base.py +++ /dev/null @@ -1,129 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test hdsdiscovery base module.""" -import os -import unittest2 - -from mock import patch - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.hdsdiscovery.base import BaseSnmpMacPlugin -from compass.hdsdiscovery.base import BaseSnmpVendor -from compass.hdsdiscovery.error import TimeoutError -from compass.utils import flags -from compass.utils import logsetting - - -class MockSnmpVendor(BaseSnmpVendor): - """snmp vendor mock class.""" - - def __init__(self): - BaseSnmpVendor.__init__(self, ["MockVendor", "FakeVendor"]) - - -class TestBaseSnmpMacPlugin(unittest2.TestCase): - """teset base snmp plugin class.""" - - def setUp(self): - super(TestBaseSnmpMacPlugin, self).setUp() - logsetting.init() - self.test_plugin = BaseSnmpMacPlugin('127.0.0.1', - {'version': '2c', - 'community': 'public'}) - - def tearDown(self): - del self.test_plugin - super(TestBaseSnmpMacPlugin, self).tearDown() - - @patch('compass.hdsdiscovery.utils.snmpget_by_cl') - def test_get_port(self, mock_snmpget): - """test snmp get port.""" - # Successfully get port number - mock_snmpget.return_value = 'IF-MIB::ifName.4 = STRING: ge-1/1/4' - result = self.test_plugin.get_port('4') - self.assertEqual('4', result) - - # Failed to get port number, switch is timeout - mock_snmpget.side_effect = TimeoutError("Timeout") - result = self.test_plugin.get_port('4') - self.assertIsNone(result) - - @patch('compass.hdsdiscovery.utils.snmpget_by_cl') - def test_get_vlan_id(self, mock_snmpget): - """test snmp get vlan.""" - # Port is None - self.assertIsNone(self.test_plugin.get_vlan_id(None)) - - # Port is not None - mock_snmpget.return_value = 'Q-BRIDGE-MIB::dot1qPvid.4 = Gauge32: 100' - result = self.test_plugin.get_vlan_id('4') - self.assertEqual('100', result) - - # Faild to query switch due to timeout - mock_snmpget.side_effect = TimeoutError("Timeout") - result = self.test_plugin.get_vlan_id('4') - self.assertIsNone(result) - - def test_get_mac_address(self): - """tet snmp get mac address.""" - # Correct input for mac numbers - mac_numbers = '0.224.129.230.57.173'.split('.') - mac = self.test_plugin.get_mac_address(mac_numbers) - self.assertEqual('00:e0:81:e6:39:ad', mac) - - # Incorrct input for mac numbers - mac_numbers = '0.224.129.230.57'.split('.') - mac = self.test_plugin.get_mac_address(mac_numbers) - self.assertIsNone(mac) - - -class BaseTest(unittest2.TestCase): - """base test class.""" - - def setUp(self): - super(BaseTest, self).setUp() - logsetting.init() - - def tearDown(self): - super(BaseTest, self).tearDown() - - def test_base_snmp_vendor(self): - """test base snmp vendor.""" - fake = MockSnmpVendor() - - is_vendor = fake.is_this_vendor("FakeVendor 1.1") - - self.assertTrue(is_vendor) - - # check case-insensitive match - self.assertFalse(fake.is_this_vendor("fakevendor1.1")) - - # breaks word-boudary match - self.assertFalse(fake.is_this_vendor("FakeVendor1.1")) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/hdsdiscovery/test_hdsdiscovery.py b/compass/tests/hdsdiscovery/test_hdsdiscovery.py deleted file mode 100755 index f93745ac..00000000 --- a/compass/tests/hdsdiscovery/test_hdsdiscovery.py +++ /dev/null @@ -1,246 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test hdsdiscovery module.""" -import os -import unittest2 - -from mock import Mock -from mock import patch - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.hdsdiscovery.hdmanager import HDManager -from compass.hdsdiscovery.vendors.huawei.huawei import Huawei -from compass.hdsdiscovery.vendors.huawei.plugins.mac import Mac -from compass.hdsdiscovery.vendors.ovswitch.plugins.mac import Mac as OVSMac -from compass.utils import flags -from compass.utils import logsetting - - -SNMP_V2_CREDENTIALS = {'version': '2c', - 'community': 'public'} - - -class HuaweiTest(unittest2.TestCase): - """test huawei switch snmp get.""" - - def setUp(self): - super(HuaweiTest, self).setUp() - logsetting.init() - self.huawei = Huawei() - self.sys_info = 'Huawei Technologies' - - def tearDown(self): - del self.huawei - super(HuaweiTest, self).tearDown() - - def test_is_this_vendor(self): - """test device vendor is haiwei.""" - #Incorrect system information - incorrect_sys_info = "xxx" - self.assertFalse( - self.huawei.is_this_vendor(incorrect_sys_info)) - - #Correct vendor - self.assertTrue( - self.huawei.is_this_vendor(self.sys_info)) - - -class HuaweiMacTest(unittest2.TestCase): - """test get mac from huawei device.""" - - def setUp(self): - super(HuaweiMacTest, self).setUp() - logsetting.init() - host = '192.168.1.1' - credential = {'version': '2c', 'community': 'public'} - self.mac_plugin = Mac(host, credential) - - def tearDown(self): - del self.mac_plugin - super(HuaweiMacTest, self).tearDown() - - @patch("compass.hdsdiscovery.utils.snmpwalk_by_cl") - def test_process_data(self, mock_snmpwalk): - """get progress data function.""" - # GET operation haven't been implemeneted. - self.assertIsNone(self.mac_plugin.process_data('GET')) - - # SNMP Walk Timeout - #utils.snmpwalk_by_cl = Mock(return_value=None) - mock_snmpwalk.return_value = None - self.assertIsNone(self.mac_plugin.process_data()) - - # Successfully get MAC addresses from the switch - mock_snmp_walk_result = [ - {"iid": "40.110.212.77.198.190.88.1.48", "value": "10"}, - {"iid": "40.110.212.100.199.74.88.1.48", "value": "11"}, - {"iid": "0.12.41.53.220.2.88.1.48", "value": "12"} - ] - expected_mac_info = [ - {"mac": "28:6e:d4:4d:c6:be", "port": "1", "vlan": "88"}, - {"mac": "28:6e:d4:64:c7:4a", "port": "2", "vlan": "88"}, - {"mac": "00:0c:29:35:dc:02", "port": "3", "vlan": "88"} - ] - #utils.snmpwalk_by_cl = Mock(return_value=mock_snmp_walk_result) - mock_snmpwalk.return_value = mock_snmp_walk_result - self.mac_plugin.get_port = Mock() - self.mac_plugin.get_port.side_effect = ["1", "2", "3"] - result = self.mac_plugin.process_data() - self.assertEqual(expected_mac_info, result) - - -class OVSMacTest(unittest2.TestCase): - """ovs switch test.""" - - def setUp(self): - super(OVSMacTest, self).setUp() - logsetting.init() - self.host = '10.145.88.160' - self.credential = {'username': 'root', 'password': 'huawei'} - - @patch('compass.hdsdiscovery.utils.ssh_remote_execute') - def test_scan(self, ovs_mock): - """test scan ovs switch.""" - ovs_mock.return_value = [] - mac_instance = OVSMac(self.host, self.credential) - self.assertIsNone(mac_instance.scan()) - del mac_instance - - ovs_mock.return_value = ['\n', '\n', '\n'] - mac_instance = OVSMac(self.host, self.credential) - self.assertEqual([], mac_instance.scan()) - del mac_instance - - -class HDManagerTest(unittest2.TestCase): - """test HDManager.""" - - def setUp(self): - super(HDManagerTest, self).setUp() - logsetting.init() - self.manager = HDManager() - self.correct_host = '33.33.33.1' - self.correct_host_2 = '127.0.0.1' - self.correct_credential = {'version': '2c', 'community': 'public'} - - def tearDown(self): - del self.manager - super(HDManagerTest, self).tearDown() - - @patch('compass.hdsdiscovery.hdmanager.HDManager.get_sys_info') - def test_get_vendor(self, sys_info_mock): - """test get_vendor.""" - # Incorrect ip - vendor, state, err = self.manager.get_vendor('1234.1.1.1', - self.correct_credential) - self.assertIsNone(vendor) - self.assertEqual('error', state) - - # Incorrect credential - incorr_cred = {'version': '1v', 'community': 'private'} - vendor, state, err = self.manager.get_vendor(self.correct_host, - incorr_cred) - self.assertIsNone(vendor) - self.assertEqual('error', state) - - # SNMP get system description Timeout - excepted_err_msg = 'Timeout: No Response from 127.0.0.1.' - sys_info_mock.return_value = (None, excepted_err_msg) - result, state, err = self.manager.get_vendor(self.correct_host, - self.correct_credential) - self.assertIsNone(result) - self.assertEqual(state, 'unreachable') - self.assertEqual(err, excepted_err_msg) - - # No vendor plugin supported - excepted_err_msg = 'Not supported switch vendor!' - sys_info_mock.return_value = ('xxxxxx', excepted_err_msg) - result, state, err = self.manager.get_vendor(self.correct_host, - self.correct_credential) - self.assertIsNone(result) - self.assertEqual(state, 'notsupported') - self.assertEqual(err, excepted_err_msg) - - # Found the correct vendor - sys_info = ['Huawei Versatile Routing Platform Software', - 'ProCurve J9089A Switch 2610-48-PWR, revision R.11.25', - 'Pica8 XorPlus Platform Software'] - expected_vendor_names = ['huawei', 'hp', 'pica8', 'appliance'] - for info, expected_vendor in zip(sys_info, expected_vendor_names): - sys_info_mock.return_value = (info, '') - # the result is a tuple ($vendor, $state, $error_message) - result = self.manager.get_vendor(self.correct_host, - self.correct_credential) - self.assertEqual(result[0], expected_vendor) - - @patch('compass.hdsdiscovery.hdmanager.HDManager.get_sys_info') - def test_is_valid_vendor(self, sys_info_mock): - """test is_valid_vendor.""" - #non-exsiting vendor under vendors directory - self.assertFalse( - self.manager.is_valid_vendor(self.correct_host, - self.correct_credential, - 'xxxx') - ) - - #No system description retrieved - sys_info_mock.return_value = (None, 'TIMEOUT') - self.assertFalse( - self.manager.is_valid_vendor(self.correct_host, - self.correct_credential, - 'pica8') - ) - - #Incorrect vendor name - sys_info = 'Pica8 XorPlus Platform Software' - sys_info_mock.return_value = (sys_info, '') - self.assertFalse( - self.manager.is_valid_vendor(self.correct_host, - self.correct_credential, - 'huawei') - ) - - #Correct vendor name - self.assertTrue( - self.manager.is_valid_vendor(self.correct_host, - self.correct_credential, - 'pica8') - ) - - def test_learn(self): - """test learn.""" - #non-exsiting plugin - self.assertIsNone(self.manager.learn(self.correct_host, - self.correct_credential, - 'huawei', 'xxx')) - - #non-existing vendor - self.assertIsNone(self.manager.learn(self.correct_host, - self.correct_credential, - 'xxxx', 'mac')) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/hdsdiscovery/test_utils.py b/compass/tests/hdsdiscovery/test_utils.py deleted file mode 100755 index 46778ba1..00000000 --- a/compass/tests/hdsdiscovery/test_utils.py +++ /dev/null @@ -1,105 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test hdsdiscovery.utils module.""" -from mock import Mock -from mock import patch -import os -import unittest2 - - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.hdsdiscovery.error import TimeoutError -from compass.hdsdiscovery import utils -from compass.utils import flags -from compass.utils import logsetting - - -SNMP_V2_CREDENTIALS = {'version': '2c', - 'community': 'public'} - - -class UtilsTest(unittest2.TestCase): - """test huawei switch snmp get.""" - - def setUp(self): - super(UtilsTest, self).setUp() - logsetting.init() - self.host = "127.0.0.1" - self.credentials = SNMP_V2_CREDENTIALS - - def tearDown(self): - super(UtilsTest, self).tearDown() - - def test_load_module(self): - """get load_module function.""" - # Successfully load HUAWEI module - huawei_vendor_path = "/".join( - (os.path.dirname( - os.path.dirname(os.path.dirname(os.path.realpath(__file__)))), - "hdsdiscovery/vendors/huawei") - ) - - # No module found - self.assertIsNone(utils.load_module("xxx", huawei_vendor_path)) - - @patch("compass.hdsdiscovery.utils.exec_command") - def test_snmpget_by_cl(self, mock_exec_command): - oid = "sysDescr.0" - # Incorrect credentials - incorr_credentials = {"version": "1v", "community": "public"} - self.assertIsNone(utils.snmpget_by_cl(self.host, - incorr_credentials, - oid)) - # Switch timeout, failed to execute SNMPGET - mock_exec_command.return_value = (1, None, "Timeout") - with self.assertRaises(TimeoutError): - utils.snmpget_by_cl(self.host, self.credentials, oid) - - # Successfully get system information - mock_exec_command.return_value = (0, "Huawei Technologies", None) - result = utils.snmpget_by_cl(self.host, self.credentials, oid) - self.assertEqual("Huawei Technologies", result) - - def test_snmpwalk_by_cl(self): - oid = "BRIDGE-MIB::dot1dTpFdbPort" - # the result of SNMPWALK is None - utils.exec_command = Mock(return_value=(0, None, None)) - result = utils.snmpwalk_by_cl(self.host, self.credentials, oid) - self.assertEqual([], result) - - # Successfully execute SNMPWALK - return_value = ("xxx.0.12.41.112.143.193 = INTEGER: 47\n" - "xxx.0.12.41.139.17.124 = INTEGER: 47\n") - expected_result = [ - {"iid": "0.12.41.112.143.193", "value": "47"}, - {"iid": "0.12.41.139.17.124", "value": "47"} - ] - utils.exec_command = Mock(return_value=(0, return_value, None)) - result = utils.snmpwalk_by_cl(self.host, self.credentials, oid) - self.assertEqual(expected_result, result) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/log_analyzor/data/config b/compass/tests/log_analyzor/data/config deleted file mode 100644 index aab65d49..00000000 --- a/compass/tests/log_analyzor/data/config +++ /dev/null @@ -1,97 +0,0 @@ -ADAPTERS = [ - {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, -] -ROLES = [ - {'name': 'os-single-controller', 'target_system': 'openstack'}, - {'name': 'os-network', 'target_system': 'openstack'}, - {'name': 'os-compute', 'target_system': 'openstack'}, -] -SWITCHES = [ - {'ip': '1.2.3.4', 'vendor': 'huawei', 'credential': {'version': 'v2c', 'community': 'public'}}, -] -MACHINES_BY_SWITCH = { - '1.2.3.4': [ - {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, - ], -} -CLUSTERS = [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security': { - 'server_credentials': { - 'username': 'root', 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', 'password': 'huawei' - } - }, - 'networking': { - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }, - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - }, -] -HOSTS_BY_CLUSTER = { - 'cluster1': [ - { - 'hostname': 'server1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config': { - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': ["os-single-controller", "os-network", "os-compute"], - }, - }, - ], -} diff --git a/compass/tests/log_analyzor/test_adapter_matcher.py b/compass/tests/log_analyzor/test_adapter_matcher.py deleted file mode 100755 index cb5fe08a..00000000 --- a/compass/tests/log_analyzor/test_adapter_matcher.py +++ /dev/null @@ -1,629 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test adapter matcher module""" - -import os -import unittest2 - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.db import database -from compass.db.model import Adapter -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.db.model import ClusterState -from compass.db.model import HostState -from compass.db.model import Machine -from compass.db.model import Role -from compass.db.model import Switch - -from compass.log_analyzor import adapter_matcher -from compass.log_analyzor.file_matcher import FileMatcher -from compass.log_analyzor.line_matcher import IncrementalProgress -from compass.log_analyzor.line_matcher import LineMatcher -from compass.log_analyzor import progress_calculator - -from compass.utils import flags -from compass.utils import logsetting - - -class TestAdapterItemMatcher(unittest2.TestCase): - def setUp(self): - super(TestAdapterItemMatcher, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestAdapterItemMatcher, self).tearDown() - - def test_update_progress(self): - test_update_progress_range = { - 'min_progress': 0.3, - 'max_progress': 0.7, - } - expected = ['sys.log', 0.0, 0.1] - file_matchers = [ - FileMatcher( - filename='sys.log', - min_progress=0.0, - max_progress=0.1, - line_matchers={ - 'start': LineMatcher( - pattern=r'NOTICE (?P.*)', - progress=IncrementalProgress(.1, .9, .1), - message_template='%(message)s', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='exit' - ), - } - ), - ] - matcher = adapter_matcher.AdapterItemMatcher( - file_matchers=file_matchers) - matcher.update_progress_range( - **test_update_progress_range) - file_matcher = matcher.file_matchers_[0] - result = [] - result.append(file_matcher.filename_) - result.append(file_matcher.min_progress_) - result.append(file_matcher.max_progress_) - self.assertEqual(expected, result) - - -class TestOSMatcher(unittest2.TestCase): - def setUp(self): - super(TestOSMatcher, self).setUp() - self.item_matcher = progress_calculator\ - .OS_INSTALLER_CONFIGURATIONS[ - 'CentOS' - ] - logsetting.init() - - def tearDown(self): - super(TestOSMatcher, self).tearDown() - - def test_min_larger_than_max(self): - test_min_larger_than_max = { - 'os_installer_name': 'os_installer', - 'os_pattern': r'.*.', - 'item_matcher': None, - 'min_progress': 1.0, - 'max_progress': 0.0, - } - self.assertRaises( - IndexError, - adapter_matcher.OSMatcher, - **test_min_larger_than_max - ) - - def test_progress_exceed_one(self): - test_progress_exceed_one = { - 'os_installer_name': 'os_installer', - 'os_pattern': r'.*.', - 'item_matcher': None, - 'min_progress': 1.1, - 'max_progress': 1.1, - } - self.assertRaises( - IndexError, - adapter_matcher.OSMatcher, - **test_progress_exceed_one - ) - - def test_match(self): - test_match = { - 'os_installer_name': 'cobbler', - 'os_pattern': r'CentOS.*', - 'item_matcher': self.item_matcher, - 'min_progress': 0.0, - 'max_progress': 0.6, - } - matcher = adapter_matcher.OSMatcher( - **test_match) - self.assertTrue(matcher.match( - 'cobbler', - 'CentOS6.4')) - - def test_installer_unmatch(self): - test_installer_unmatch = { - 'os_installer_name': 'razor', - 'os_pattern': r'CentOS.*', - 'item_matcher': self.item_matcher, - 'min_progress': 0.0, - 'max_progress': 0.6, - } - matcher = adapter_matcher.OSMatcher( - **test_installer_unmatch) - self.assertFalse(matcher.match( - 'cobbler', - 'CentOS6.4')) - - def test_os_unmatch(self): - test_os_unmatch = { - 'os_installer_name': 'cobbler', - 'os_pattern': r'Ubuntu.*', - 'item_matcher': self.item_matcher, - 'min_progress': 0.0, - 'max_progress': 0.6, - } - matcher = adapter_matcher.OSMatcher( - **test_os_unmatch) - self.assertFalse(matcher.match( - 'cobbler', - 'CentOS6.4')) - - def test_both_unmatch(self): - test_both_unmatch = { - 'os_installer_name': 'razor', - 'os_pattern': r'Ubuntu.*', - 'item_matcher': self.item_matcher, - 'min_progress': 0.0, - 'max_progress': 0.6, - } - matcher = adapter_matcher.OSMatcher( - **test_both_unmatch) - self.assertFalse(matcher.match( - 'cobbler', - 'CentOS6.4')) - - -class TestPackageMatcher(unittest2.TestCase): - def setUp(self): - super(TestPackageMatcher, self).setUp() - self.item_matcher = progress_calculator\ - .PACKAGE_INSTALLER_CONFIGURATIONS[ - 'openstack' - ] - logsetting.init() - - def tearDown(self): - super(TestPackageMatcher, self).tearDown() - - def test_match(self): - test_match = { - 'package_installer_name': 'chef', - 'target_system': 'openstack', - 'item_matcher': self.item_matcher, - 'min_progress': 0.6, - 'max_progress': 1.0, - } - matcher = adapter_matcher.PackageMatcher( - **test_match) - self.assertTrue(matcher.match( - 'chef', - 'openstack')) - - def test_installer_unmatch(self): - test_installer_unmatch = { - 'package_installer_name': 'puppet', - 'target_system': 'openstack', - 'item_matcher': self.item_matcher, - 'min_progress': 0.6, - 'max_progress': 1.0, - } - matcher = adapter_matcher.PackageMatcher( - **test_installer_unmatch) - self.assertFalse(matcher.match( - 'chef', - 'openstack')) - - def test_target_system_unmatch(self): - test_target_system_unmatch = { - 'package_installer_name': 'chef', - 'target_system': 'hadoop', - 'item_matcher': self.item_matcher, - 'min_progress': 0.6, - 'max_progress': 1.0, - } - matcher = adapter_matcher.PackageMatcher( - **test_target_system_unmatch) - self.assertFalse(matcher.match( - 'chef', - 'openstack')) - - def test_both_unmatch(self): - test_both_unmatch = { - 'package_installer_name': 'puppet', - 'target_system': 'hadoop', - 'item_matcher': self.item_matcher, - 'min_progress': 0.6, - 'max_progress': 1.0, - } - matcher = adapter_matcher.PackageMatcher( - **test_both_unmatch) - self.assertFalse(matcher.match( - 'chef', - 'openstack')) - - -class TestAdapterMatcher(unittest2.TestCase): - def setUp(self): - super(TestAdapterMatcher, self).setUp() - self.os_item_matcher = progress_calculator\ - .OS_INSTALLER_CONFIGURATIONS[ - 'CentOS' - ] - self.package_item_matcher = progress_calculator\ - .PACKAGE_INSTALLER_CONFIGURATIONS[ - 'openstack' - ] - logsetting.init() - database.create_db() - - def tearDown(self): - super(TestAdapterMatcher, self).tearDown() - database.drop_db() - - def test_match(self): - test_match = { - 'os_matcher': { - 'os_installer_name': 'cobbler', - 'os_pattern': 'CentOS.*', - 'item_matcher': self.os_item_matcher, - 'min_progress': 0.0, - 'max_progress': 0.6 - }, - 'package_matcher': { - 'package_installer_name': 'chef', - 'target_system': 'openstack', - 'item_matcher': self.package_item_matcher, - 'min_progress': 0.6, - 'max_progress': 1.0 - } - } - os_matcher = adapter_matcher.OSMatcher( - **test_match['os_matcher']) - package_matcher = adapter_matcher.PackageMatcher( - **test_match['package_matcher']) - matcher = adapter_matcher.AdapterMatcher( - os_matcher, package_matcher) - - self.assertTrue( - matcher.match( - 'cobbler', 'CentOS6.4', - 'chef', 'openstack')) - - def test_os_unmatch(self): - test_os_unmatch = { - 'os_matcher': { - 'os_installer_name': 'razor', - 'os_pattern': 'CentOS.*', - 'item_matcher': self.os_item_matcher, - 'min_progress': 0.0, - 'max_progress': 0.6 - }, - 'package_matcher': { - 'package_installer_name': 'chef', - 'target_system': 'openstack', - 'item_matcher': self.package_item_matcher, - 'min_progress': 0.6, - 'max_progress': 1.0 - } - } - os_matcher = adapter_matcher.OSMatcher( - **test_os_unmatch['os_matcher']) - package_matcher = adapter_matcher.PackageMatcher( - **test_os_unmatch['package_matcher']) - matcher = adapter_matcher.AdapterMatcher( - os_matcher, package_matcher) - - self.assertFalse( - matcher.match( - 'cobbler', 'CentOS6.4', - 'chef', 'openstack')) - - def test_package_unmatch(self): - test_package_unmatch = { - 'os_matcher': { - 'os_installer_name': 'cobbler', - 'os_pattern': 'CentOS.*', - 'item_matcher': self.os_item_matcher, - 'min_progress': 0.0, - 'max_progress': 0.6 - }, - 'package_matcher': { - 'package_installer_name': 'puppet', - 'target_system': 'openstack', - 'item_matcher': self.package_item_matcher, - 'min_progress': 0.6, - 'max_progress': 1.0 - } - } - os_matcher = adapter_matcher.OSMatcher( - **test_package_unmatch['os_matcher']) - package_matcher = adapter_matcher.PackageMatcher( - **test_package_unmatch['package_matcher']) - matcher = adapter_matcher.AdapterMatcher( - os_matcher, package_matcher) - - self.assertFalse( - matcher.match( - 'cobbler', 'CentOS6.4', - 'chef', 'openstack')) - - def test_both_unmatch(self): - test_both_unmatch = { - 'os_matcher': { - 'os_installer_name': 'cobbler', - 'os_pattern': 'Ubuntu*', - 'item_matcher': self.os_item_matcher, - 'min_progress': 0.0, - 'max_progress': 0.6 - }, - 'package_matcher': { - 'package_installer_name': 'chef', - 'target_system': 'hadoop', - 'item_matcher': self.package_item_matcher, - 'min_progress': 0.6, - 'max_progress': 1.0 - } - } - os_matcher = adapter_matcher.OSMatcher( - **test_both_unmatch['os_matcher']) - package_matcher = adapter_matcher.PackageMatcher( - **test_both_unmatch['package_matcher']) - matcher = adapter_matcher.AdapterMatcher( - os_matcher, package_matcher) - - self.assertFalse( - matcher.match( - 'cobbler', 'CentOS6.4', - 'chef', 'openstack')) - - def test_update_progress(self): - config = { - 'ADAPTERS': [ - { - 'name': 'CentOS_openstack', - 'os': 'CentOS', - 'target_system': 'openstack', - }, - ], - 'ROLES': [ - { - 'name': 'os-single-controller', - 'target_system': 'openstack', - }, - { - 'name': 'os-network', - 'target_system': 'openstack', - }, - { - 'name': 'os-compute', - 'target_system': 'openstack', - }, - ], - 'SWITCHES': [ - { - 'ip': '1.2.3.4', - 'vendor': 'huawei', - 'credential': { - 'version': 'v2c', - 'comunity': 'public', - } - }, - ], - 'MACHINES_BY_SWITCH': { - '1.2.3.4': [ - { - 'mac': '00:00:01:02:03:04', - 'port': 1, - 'vlan': 1 - }, - ], - }, - 'CLUSTERS': [ - { - 'name': 'cluster1', - 'adapter': 'CentOS_openstack', - 'mutable': False, - 'security': { - 'server_credentials': { - 'username': 'root', - 'password': 'huawei' - }, - 'service_credentials': { - 'username': 'service', - 'password': 'huawei' - }, - 'console_credentials': { - 'username': 'admin', - 'password': 'huawei' - } - }, - 'networking': { - 'interfaces': { - 'management': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.255.0', - 'ip_end': '192.168.20.200', - 'gateway': '', - 'ip_start': '192.168.20.100' - }, - 'storage': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.200', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'public': { - 'nic': 'eth2', - 'promisc': 1, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.255', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - }, - 'tenant': { - 'nic': 'eth0', - 'promisc': 0, - 'netmask': '255.255.254.0', - 'ip_end': '10.145.88.120', - 'gateway': '10.145.88.1', - 'ip_start': '10.145.88.100' - } - }, - 'global': { - 'nameservers': '192.168.20.254', - 'proxy': 'http://192.168.20.254:3128', - 'ntp_server': '192.168.20.254', - 'search_path': 'ods.com', - 'gateway': '10.145.88.1' - }, - }, - 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', - }, - ], - 'HOSTS_BY_CLUSTER': { - 'cluster1': [ - { - 'hostname': 'server1', - 'mac': '00:00:01:02:03:04', - 'mutable': False, - 'config': { - 'networking': { - 'interfaces': { - 'management': { - 'ip': '192.168.20.100', - }, - }, - }, - 'roles': [ - "os-single-controller", - "os-network", - "os-compute" - ], - }, - }, - ], - }, - } - self._prepare_database(config) - cluster_hosts = {} - with database.session() as session: - clusters = session.query(Cluster).all() - for cluster in clusters: - cluster_hosts[cluster.id] = [ - host.id for host in cluster.hosts] - - test_update_progress = { - 'os_matcher': { - 'os_installer_name': 'cobbler', - 'os_pattern': 'CentOS.*', - 'item_matcher': self.os_item_matcher, - 'min_progress': 0.0, - 'max_progress': 0.6 - }, - 'package_matcher': { - 'package_installer_name': 'chef', - 'target_system': 'openstack', - 'item_matcher': self.package_item_matcher, - 'min_progress': 0.6, - 'max_progress': 1.0 - } - } - os_matcher = adapter_matcher.OSMatcher( - **test_update_progress['os_matcher']) - package_matcher = adapter_matcher.PackageMatcher( - **test_update_progress['package_matcher']) - matcher = adapter_matcher.AdapterMatcher( - os_matcher, package_matcher) - for cluster_id in cluster_hosts.keys(): - matcher.update_progress( - cluster_id, - cluster_hosts[cluster_id]) - - expected_cluster_state = { - 'state': 'INSTALLING', - 'progress': 0.0 - } - cluster = {} - host = {} - with database.session(): - cluster_state = session.query(ClusterState).all() - cluster['state'] = cluster_state[0].state - cluster['progress'] = cluster_state[0].progress - self.assertEqual(expected_cluster_state, - cluster) - - def _prepare_database(self, config): - with database.session() as session: - adapters = {} - for adapter_config in config['ADAPTERS']: - adapter = Adapter(**adapter_config) - session.add(adapter) - adapters[adapter_config['name']] = adapter - - roles = {} - for role_config in config['ROLES']: - role = Role(**role_config) - session.add(role) - roles[role_config['name']] = role - - switches = {} - for switch_config in config['SWITCHES']: - switch = Switch(**switch_config) - session.add(switch) - switches[switch_config['ip']] = switch - - machines = {} - for switch_ip, machine_configs in ( - config['MACHINES_BY_SWITCH'].items() - ): - for machine_config in machine_configs: - machine = Machine(**machine_config) - machines[machine_config['mac']] = machine - machine.switch = switches[switch_ip] - session.add(machine) - - clusters = {} - for cluster_config in config['CLUSTERS']: - adapter_name = cluster_config['adapter'] - del cluster_config['adapter'] - cluster = Cluster(**cluster_config) - clusters[cluster_config['name']] = cluster - cluster.adapter = adapters[adapter_name] - cluster.state = ClusterState( - state="INSTALLING", progress=0.0, message='') - session.add(cluster) - - hosts = {} - for cluster_name, host_configs in ( - config['HOSTS_BY_CLUSTER'].items() - ): - for host_config in host_configs: - mac = host_config['mac'] - del host_config['mac'] - host = ClusterHost(**host_config) - hosts['%s.%s' % ( - host_config['hostname'], cluster_name)] = host - host.machine = machines[mac] - host.cluster = clusters[cluster_name] - host.state = HostState( - state="INSTALLING", progress=0.0, message='') - session.add(host) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/log_analyzor/test_file_matcher.py b/compass/tests/log_analyzor/test_file_matcher.py deleted file mode 100755 index cce33299..00000000 --- a/compass/tests/log_analyzor/test_file_matcher.py +++ /dev/null @@ -1,436 +0,0 @@ -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""test file matcher module""" - -import datetime -import mock -import os -import unittest2 - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.db import database -from compass.db.model import Adapter -from compass.db.model import Cluster -from compass.db.model import ClusterHost -from compass.db.model import ClusterState -from compass.db.model import HostState -from compass.db.model import LogProgressingHistory -from compass.db.model import Machine -from compass.db.model import Role -from compass.db.model import Switch - -from compass.log_analyzor import file_matcher - -from compass.log_analyzor.line_matcher import IncrementalProgress -from compass.log_analyzor.line_matcher import LineMatcher -from compass.log_analyzor.line_matcher import Progress - -from compass.utils import flags -from compass.utils import logsetting - - -def prepare_database(config): - with database.session() as session: - adapters = {} - for adapter_config in config['ADAPTERS']: - adapter = Adapter(**adapter_config) - session.add(adapter) - adapters[adapter_config['name']] = adapter - - roles = {} - for role_config in config['ROLES']: - role = Role(**role_config) - session.add(role) - roles[role_config['name']] = role - - switches = {} - for switch_config in config['SWITCHES']: - switch = Switch(**switch_config) - session.add(switch) - switches[switch_config['ip']] = switch - - machines = {} - for switch_ip, machine_configs in ( - config['MACHINES_BY_SWITCH'].items() - ): - for machine_config in machine_configs: - machine = Machine(**machine_config) - machines[machine_config['mac']] = machine - machine.switch = switches[switch_ip] - session.add(machine) - - clusters = {} - for cluster_config in config['CLUSTERS']: - adapter_name = cluster_config['adapter'] - del cluster_config['adapter'] - cluster = Cluster(**cluster_config) - clusters[cluster_config['name']] = cluster - cluster.adapter = adapters[adapter_name] - cluster.state = ClusterState( - state="INSTALLING", progress=0.0, message='') - session.add(cluster) - - hosts = {} - for cluster_name, host_configs in ( - config['HOSTS_BY_CLUSTER'].items() - ): - for host_config in host_configs: - mac = host_config['mac'] - del host_config['mac'] - host = ClusterHost(**host_config) - hosts['%s.%s' % ( - host_config['hostname'], cluster_name)] = host - host.machine = machines[mac] - host.cluster = clusters[cluster_name] - host.state = HostState( - state="INSTALLING", progress=0.0, message='') - session.add(host) - - -class TestFilterFileExist(unittest2.TestCase): - def setUp(self): - super(TestFilterFileExist, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestFilterFileExist, self).tearDown() - - def test_filter(self): - pathname = 'NeverExists' - filter = file_matcher.FilterFileExist() - res = filter.filter(pathname) - self.assertFalse(res) - - -class TestCompositeFileFilter(unittest2.TestCase): - def setUp(self): - super(TestCompositeFileFilter, self).setUp() - self.file_path = os.path.dirname(os.path.abspath(__file__)) - logsetting.init() - - def tearDown(self): - super(TestCompositeFileFilter, self).tearDown() - - def test_filter(self): - filter_list = [ - file_matcher.FilterFileExist(), - file_matcher.FilterFileExist(), - ] - exists = self.file_path + '/test_file_matcher.py' - non_exists = '/nonexists' - composite_filter = file_matcher.CompositeFileFilter( - filter_list) - self.assertTrue( - composite_filter.filter(exists)) - self.assertFalse( - composite_filter.filter(non_exists)) - - def test_append_filter(self): - filter_list = [ - file_matcher.FilterFileExist(), - file_matcher.FilterFileExist(), - ] - composite_filter = file_matcher.CompositeFileFilter( - filter_list) - new_filter = file_matcher.FilterFileExist() - composite_filter.append_filter(new_filter) - self.assertEqual(3, len(composite_filter.filters_)) - - -class TestFileReader(unittest2.TestCase): - def setUp(self): - super(TestFileReader, self).setUp() - logsetting.init() - database.create_db() - self.config_file = '%s/data/config' % ( - os.path.dirname(os.path.abspath(__file__))) - - def tearDown(self): - super(TestFileReader, self).tearDown() - database.drop_db() - - def test_get_empty_history(self): - config_locals = {} - config_globals = {} - execfile(self.config_file, config_globals, config_locals) - prepare_database(config_locals) - expected = { - 'matcher_name': 'start', - 'progress': 0.0, - 'message': '', - 'severity': None - } - res = {} - reader = file_matcher.FileReader('dummy') - history = reader.get_history() - res.update( - { - 'matcher_name': history[0], - 'progress': history[1].progress, - 'message': history[1].message, - 'severity': history[1].severity - }) - self.assertEqual(expected, res) - - def test_get_existing_history(self): - config_locals = {} - config_globals = {} - execfile(self.config_file, config_globals, config_locals) - prepare_database(config_locals) - with database.session() as session: - history = LogProgressingHistory( - line_matcher_name='start', - progress=0.5, - message='dummy', - severity='INFO', - position=0, - partial_line='', - pathname='dummy') - session.add(history) - - expected = { - 'matcher_name': 'start', - 'progress': 0.5, - 'message': 'dummy', - 'severity': 'INFO' - } - res = {} - reader = file_matcher.FileReader('dummy') - history = reader.get_history() - res.update({ - 'matcher_name': history[0], - 'progress': history[1].progress, - 'message': history[1].message, - 'severity': history[1].severity - }) - self.assertEqual(expected, res) - - def test_update_history_from_none(self): - config_locals = {} - config_globals = {} - execfile(self.config_file, config_globals, config_locals) - prepare_database(config_locals) - - expected = { - 'progress': 0.5, - 'line_matcher_name': 'start' - } - reader = file_matcher.FileReader('dummy') - reader.update_history( - expected['line_matcher_name'], - Progress( - progress=expected['progress'], - message='', - severity='INFO')) - res = {} - with database.session() as session: - history = session.query( - LogProgressingHistory).first() - res.update({ - 'line_matcher_name': history.line_matcher_name, - 'progress': history.progress - }) - self.assertEqual(expected, res) - - def test_update_history_from_existing(self): - config_locals = {} - config_globals = {} - execfile(self.config_file, config_globals, config_locals) - prepare_database(config_locals) - - with database.session() as session: - history = LogProgressingHistory( - line_matcher_name='start', - progress=0.5, - message='dummy', - severity='INFO', - position=0, - partial_line='', - pathname='dummy') - session.add(history) - - expected = { - 'progress': 0.8, - 'line_matcher_name': 'start' - } - reader = file_matcher.FileReader('dummy') - reader.position_ = 1 - reader.update_history( - expected['line_matcher_name'], - Progress( - progress=expected['progress'], - message='', - severity='INFO')) - res = {} - with database.session() as session: - history = session.query( - LogProgressingHistory).first() - res.update({ - 'line_matcher_name': history.line_matcher_name, - 'progress': history.progress - }) - self.assertEqual(expected, res) - - def test_update_history_failure(self): - config_locals = {} - config_globals = {} - execfile(self.config_file, config_globals, config_locals) - prepare_database(config_locals) - - with database.session() as session: - history = LogProgressingHistory( - line_matcher_name='start', - progress=0.5, - message='dummy', - severity='INFO', - position=0, - partial_line='', - pathname='dummy') - session.add(history) - - expected = { - 'progress': 0.8, - 'line_matcher_name': 'start' - } - reader = file_matcher.FileReader('dummy') - reader.update_history( - expected['line_matcher_name'], - Progress( - progress=expected['progress'], - message='', - severity='INFO')) - res = {} - with database.session() as session: - history = session.query( - LogProgressingHistory).first() - res.update({ - 'line_matcher_name': history.line_matcher_name, - 'progress': history.progress - }) - self.assertNotEqual(expected, res) - - -class TestFileReaderFactory(unittest2.TestCase): - def setUp(self): - super(TestFileReaderFactory, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestFileReaderFactory, self).tearDown() - - def test_get_file_reader_None(self): - reader_factory = file_matcher.FileReaderFactory( - 'dummy', - file_matcher.get_file_filter()) - - reader = reader_factory.get_file_reader('dummy', 'dummy') - self.assertIsNone(reader) - - -class TestFileMatcher(unittest2.TestCase): - def setUp(self): - super(TestFileMatcher, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestFileMatcher, self).tearDown() - - def test_update_absolute_progress_range(self): - matcher = file_matcher.FileMatcher( - filename='sys.log', - min_progress=0.0, - max_progress=0.1, - line_matchers={ - 'start': LineMatcher( - pattern=r'NOTICE (?P.*)', - progress=IncrementalProgress(.1, .9, .1), - message_template='%(message)s', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='exit' - ), - } - ) - matcher.update_absolute_progress_range(0.5, 1.0) - expected = [0.5, 0.55] - res = [] - res.append(matcher.absolute_min_progress_) - res.append(matcher.absolute_max_progress_) - self.assertEqual(expected, res) - - def test_update_total_progress_none(self): - file_progress = Progress( - message=None, - progress=0.5, - severity='info') - - total_progress = file_progress - matcher = file_matcher.FileMatcher( - filename='sys.log', - min_progress=0.0, - max_progress=0.1, - line_matchers={ - 'start': LineMatcher( - pattern=r'NOTICE (?P.*)', - progress=IncrementalProgress(.1, .9, .1), - message_template='%(message)s', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='exit' - ), - } - ) - res = matcher.update_total_progress(file_progress, total_progress) - self.assertIsNone(res) - - def test_update_total_progress(self): - file_progress = Progress( - message='dummy', - progress=0.5, - severity='info') - - total_progress = Progress( - message='dummy', - progress=0.4, - severity='info') - - matcher = file_matcher.FileMatcher( - filename='sys.log', - min_progress=0.0, - max_progress=0.1, - line_matchers={ - 'start': LineMatcher( - pattern=r'NOTICE (?P.*)', - progress=IncrementalProgress(.1, .9, .1), - message_template='%(message)s', - unmatch_nextline_next_matcher_name='start', - match_nextline_next_matcher_name='exit' - ), - } - ) - matcher.update_total_progress(file_progress, total_progress) - self.assertEqual( - 0.5, - total_progress.progress) - - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/tests/log_analyzor/test_line_matcher.py b/compass/tests/log_analyzor/test_line_matcher.py deleted file mode 100755 index d68aed4e..00000000 --- a/compass/tests/log_analyzor/test_line_matcher.py +++ /dev/null @@ -1,229 +0,0 @@ -#!/usr/bin/python -# -# Copyright 2014 Huawei Technologies Co. Ltd -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import os -import unittest2 - -os.environ['COMPASS_IGNORE_SETTING'] = 'true' - - -from compass.utils import setting_wrapper as setting -reload(setting) - - -from compass.log_analyzor import line_matcher -from compass.utils import flags -from compass.utils import logsetting - - -class TestProgress(unittest2.TestCase): - """test class for Progress class.""" - - def setUp(self): - super(TestProgress, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestProgress, self).tearDown() - - def test_repr(self): - config = { - 'progress': 0.5, - 'message': 'dummy', - 'severity': '' - } - expected = 'Progress[progress:0.5, message:dummy, severity:]' - test_line_matcher = line_matcher.Progress(**config) - self.assertEqual(expected, test_line_matcher.__repr__()) - - -class TestProgressCalculator(unittest2.TestCase): - def setUp(self): - super(TestProgressCalculator, self).setUp() - logsetting.init() - self._mock_progress() - - def tearDown(self): - super(TestProgressCalculator, self).tearDown() - - def _mock_progress(self): - self.progress = line_matcher.Progress( - progress=0.5, - message='', - severity='') - - def test_update_progress_progress(self): - test_1 = { - 'progress_data': 0.7, - 'message': '', - 'severity': '', - 'progress': self.progress - } - expected_1 = 0.7 - line_matcher.ProgressCalculator.update_progress( - **test_1) - self.assertEqual(expected_1, self.progress.progress) - - def test_update_progress_other(self): - test = { - 'progress_data': 0.5, - 'message': 'dummy', - 'severity': 'dummy', - 'progress': self.progress - } - expected_message = test['message'] - expected_severity = test['severity'] - line_matcher.ProgressCalculator.update_progress( - **test) - self.assertEqual(expected_message, self.progress.message) - self.assertEqual(expected_severity, self.progress.severity) - - -class TestIncrementalProgress(unittest2.TestCase): - def setUp(self): - super(TestIncrementalProgress, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestIncrementalProgress, self).tearDown() - - def test_init(self): - test_exceed_one = { - 'min_progress': 1.1, - 'max_progress': 1.1, - 'incremental_ratio': 0.5, - } - self.assertRaises( - IndexError, - line_matcher.IncrementalProgress, - **test_exceed_one) - - def test_min_larger_than_max(self): - test_min_larger_than_max = { - 'min_progress': 0.7, - 'max_progress': 0.3, - 'incremental_ratio': 0.5, - } - self.assertRaises( - IndexError, - line_matcher.IncrementalProgress, - **test_min_larger_than_max) - - def test_invalid_ratio(self): - test_invalid_ratio = { - 'min_progress': 0.3, - 'max_progress': 0.7, - 'incremental_ratio': 1.1, - } - self.assertRaises( - IndexError, - line_matcher.IncrementalProgress, - **test_invalid_ratio) - - -class TestRelativeProgress(unittest2.TestCase): - def setUp(self): - super(TestRelativeProgress, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestRelativeProgress, self).tearDown() - - def test_init(self): - self.assertRaises( - IndexError, - line_matcher.RelativeProgress, - progress=1.1) - - -class TestLineMatcher(unittest2.TestCase): - def setUp(self): - super(TestLineMatcher, self).setUp() - logsetting.init() - - def tearDown(self): - super(TestLineMatcher, self).tearDown() - - def test_progress_unsupported(self): - test_progress_unsupported = { - 'pattern': r' ', - 'progress': 'dummy', - } - self.assertRaises( - TypeError, - line_matcher.LineMatcher, - **test_progress_unsupported) - - def test_regex_not_match(self): - line = 'abc' - regex_ = r'^s' - progress = line_matcher.Progress( - progress=1, message='a', severity=' ') - test_regex_not_match = { - 'pattern': regex_, - 'unmatch_sameline_next_matcher_name': 'usn', - 'unmatch_nextline_next_matcher_name': 'unn', - 'match_sameline_next_matcher_name': 'msn', - 'match_nextline_next_matcher_name': 'mnn', - } - matcher = line_matcher.LineMatcher( - **test_regex_not_match) - expected = ('usn', 'unn') - self.assertEqual( - expected, - matcher.update_progress( - line, progress)) - - def test_regex_match(self): - line = 'abc' - regex_ = r'^a' - progress = line_matcher.Progress( - progress=1, message='a', severity=' ') - test_regex_match = { - 'pattern': regex_, - 'unmatch_sameline_next_matcher_name': 'usn', - 'unmatch_nextline_next_matcher_name': 'unn', - 'match_sameline_next_matcher_name': 'msn', - 'match_nextline_next_matcher_name': 'mnn', - } - matcher = line_matcher.LineMatcher( - **test_regex_match) - expected = ('msn', 'mnn') - self.assertEqual( - expected, - matcher.update_progress( - line, progress)) - - def test_wrong_message(self): - line = 'abc' - progress = line_matcher.Progress( - progress=1, message='a', severity=' ') - test_wrong_message = { - 'pattern': r'.*.', - 'message_template': 'Installing %(package)s' - } - matcher = line_matcher.LineMatcher( - **test_wrong_message) - self.assertRaises( - KeyError, - matcher.update_progress, - line=line, - progress=progress) - -if __name__ == '__main__': - flags.init() - logsetting.init() - unittest2.main() diff --git a/compass/config_management/providers/plugins/__init__.py b/compass/tests/utils/data/test_load_conf/test_load_conf1.conf similarity index 96% rename from compass/config_management/providers/plugins/__init__.py rename to compass/tests/utils/data/test_load_conf/test_load_conf1.conf index 4ee55a4c..9ef097b5 100644 --- a/compass/config_management/providers/plugins/__init__.py +++ b/compass/tests/utils/data/test_load_conf/test_load_conf1.conf @@ -11,3 +11,5 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +TEST=True +PROD=False diff --git a/compass/config_management/utils/__init__.py b/compass/tests/utils/data/test_load_confs/test_load_conf1.conf similarity index 96% rename from compass/config_management/utils/__init__.py rename to compass/tests/utils/data/test_load_confs/test_load_conf1.conf index 4ee55a4c..9ef097b5 100644 --- a/compass/config_management/utils/__init__.py +++ b/compass/tests/utils/data/test_load_confs/test_load_conf1.conf @@ -11,3 +11,5 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +TEST=True +PROD=False diff --git a/compass/tests/config_management/__init__.py b/compass/tests/utils/data/test_load_confs/test_load_conf2.conf similarity index 96% rename from compass/tests/config_management/__init__.py rename to compass/tests/utils/data/test_load_confs/test_load_conf2.conf index 4ee55a4c..b9daaa7a 100644 --- a/compass/tests/config_management/__init__.py +++ b/compass/tests/utils/data/test_load_confs/test_load_conf2.conf @@ -11,3 +11,4 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +UTIL_TEST='unittest' diff --git a/compass/tests/apicommand/__init__.py b/compass/tests/utils/data/test_no_suffix/test_no_suffix similarity index 96% rename from compass/tests/apicommand/__init__.py rename to compass/tests/utils/data/test_no_suffix/test_no_suffix index 4ee55a4c..9ef097b5 100644 --- a/compass/tests/apicommand/__init__.py +++ b/compass/tests/utils/data/test_no_suffix/test_no_suffix @@ -11,3 +11,5 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +TEST=True +PROD=False diff --git a/compass/tests/utils/test_util.py b/compass/tests/utils/test_util.py old mode 100755 new mode 100644 index a4056688..2f637bca --- a/compass/tests/utils/test_util.py +++ b/compass/tests/utils/test_util.py @@ -1,3 +1,4 @@ +#!/usr/bin/python # Copyright 2014 Huawei Technologies Co. Ltd # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -11,11 +12,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - -"""test util module. - - .. moduleauthor:: Xiaodong Wang -""" +import datetime import os import unittest2 @@ -32,154 +29,286 @@ from compass.utils import logsetting from compass.utils import util -class TestDictMerge(unittest2.TestCase): - """Test dict merge.""" +class TestParseDatetime(unittest2.TestCase): + """Test parse datetime.""" def setUp(self): - super(TestDictMerge, self).setUp() - logsetting.init() + super(TestParseDatetime, self).setUp() def tearDown(self): - super(TestDictMerge, self).tearDown() + super(TestParseDatetime, self).tearDown() - def test_simple_merge(self): - """simple test of merge - merge_dict performs in-place merge of rhs to lhs - """ + def test_correct_format(self): + date_time = '2014-7-10 9:10:40' + parsed_datetime = util.parse_datetime(date_time) + expected_datetime = datetime.datetime(2014, 7, 10, 9, 10, 40) + self.assertEqual(parsed_datetime, expected_datetime) + + +class TestParseDatetimeRange(unittest2.TestCase): + """Test parse datetime range.""" + + def setUp(self): + super(TestParseDatetimeRange, self).setUp() + + def tearDown(self): + super(TestParseDatetimeRange, self).tearDown() + + def test_both_start_end_datetime(self): + range = '2014-7-10 9:10:40,2014-7-11 9:10:40' + parsed_datetime_range = util.parse_datetime_range(range) + expected_datetime_range = ( + datetime.datetime(2014, 7, 10, 9, 10, 40), + datetime.datetime(2014, 7, 11, 9, 10, 40) + ) + self.assertEqual(expected_datetime_range, parsed_datetime_range) + + def test_none_start(self): + range = ',2014-7-11 9:10:40' + parsed_datetime_range = util.parse_datetime_range(range) + expected_datetime_range = ( + None, + datetime.datetime(2014, 7, 11, 9, 10, 40) + ) + self.assertEqual(expected_datetime_range, parsed_datetime_range) + + def test_none_end(self): + range = '2014-7-10 9:10:40,' + parsed_datetime_range = util.parse_datetime_range(range) + expected_datetime_range = ( + datetime.datetime(2014, 7, 10, 9, 10, 40), + None + ) + self.assertEqual(expected_datetime_range, parsed_datetime_range) + + def test_none_both(self): + range = ',' + parsed_datetime_range = util.parse_datetime_range(range) + expected_datetime_range = (None, None) + self.assertEqual(expected_datetime_range, parsed_datetime_range) + + +class TestParseRequestArgDict(unittest2.TestCase): + """Test parse request arg dict.""" + + def setUp(self): + super(TestParseRequestArgDict, self).setUp() + + def tearDown(self): + super(TestParseRequestArgDict, self).tearDown() + + def test_single_pair(self): + arg = 'a=b' + parsed_arg_dict = util.parse_request_arg_dict(arg) + expected_arg_dict = {'a': 'b'} + self.assertEqual(parsed_arg_dict, expected_arg_dict) + + +class TestMergeDict(unittest2.TestCase): + """Test merge dict.""" + + def setUp(self): + super(TestMergeDict, self).setUp() + + def tearDown(self): + super(TestMergeDict, self).tearDown() + + def test_single_merge(self): lhs = {1: 1} rhs = {2: 2} - util.merge_dict(lhs, rhs) - self.assertEqual(lhs, {1: 1, 2: 2}) + merged_dict = util.merge_dict(lhs, rhs) + expected_dict = {1: 1, 2: 2} + self.assertEqual(merged_dict, expected_dict) def test_recursive_merge(self): - """test merge recursively.""" lhs = {1: {2: 3}} rhs = {1: {3: 4}} - util.merge_dict(lhs, rhs) - self.assertEqual(lhs, {1: {2: 3, 3: 4}}) + merged_dict = util.merge_dict(lhs, rhs) + expected_dict = {1: {2: 3, 3: 4}} + self.assertEqual(merged_dict, expected_dict) - def test_merge_override(self): - """test merge override.""" + def test_single_merge_override(self): lhs = {1: 1} rhs = {1: 2} - util.merge_dict(lhs, rhs) - self.assertEqual(lhs, {1: 2}) + merged_dict = util.merge_dict(lhs, rhs) + expected_dict = {1: 2} + self.assertEqual(merged_dict, expected_dict) + def test_recursive_merge_override(self): lhs = {1: {2: 3, 3: 5}} rhs = {1: {2: 4, 4: 6}} - util.merge_dict(lhs, rhs) - self.assertEqual(lhs, {1: {2: 4, 3: 5, 4: 6}}) + merged_dict = util.merge_dict(lhs, rhs) + expected_dict = {1: {2: 4, 3: 5, 4: 6}} + self.assertEqual(merged_dict, expected_dict) - def test_merge_not_override(self): - """test merge not override.""" + def test_single_merge_no_override(self): lhs = {1: 1} rhs = {1: 2} - util.merge_dict(lhs, rhs, False) - self.assertEqual(lhs, {1: 1}) + merged_dict = util.merge_dict(lhs, rhs, False) + expected_dict = {1: 1} + self.assertEqual(merged_dict, expected_dict) + def test_recursive_merge_no_override(self): lhs = {1: {2: 3, 3: 5}} rhs = {1: {2: 4, 4: 6}} - util.merge_dict(lhs, rhs, False) - self.assertEqual(lhs, {1: {2: 3, 3: 5, 4: 6}}) + merged_dict = util.merge_dict(lhs, rhs, False) + expected_dict = {1: {2: 3, 3: 5, 4: 6}} + self.assertEqual(merged_dict, expected_dict) - def test_change_after_merge(self): - """test change after merge.""" + def test_merge_dict_with_list(self): lhs = {1: {2: 3}} rhs = {1: {3: [4, 5, 6]}} - util.merge_dict(lhs, rhs) - self.assertEqual(lhs, {1: {2: 3, 3: [4, 5, 6]}}) - self.assertEqual(rhs, {1: {3: [4, 5, 6]}}) - rhs[1][3].append(7) - self.assertEqual(lhs, {1: {2: 3, 3: [4, 5, 6]}}) - self.assertEqual(rhs, {1: {3: [4, 5, 6, 7]}}) + merged_dict = util.merge_dict(lhs, rhs) + expected_dict = {1: {2: 3, 3: [4, 5, 6]}} + self.assertEqual(merged_dict, expected_dict) - def test_lhs_rhs_notdict(self): - """test merge not dict.""" + def test_inputs_not_dict(self): + """test inputs not dict.""" lhs = [1, 2, 3] rhs = {1: 2} - self.assertRaises(TypeError, util.merge_dict, (lhs, rhs)) + merged = util.merge_dict(lhs, rhs) + expected = {1: 2} + self.assertEqual(merged, expected) + + lhs = [1, 2, 3] + rhs = {1: 2} + merged = util.merge_dict(lhs, rhs, False) + expected = [1, 2, 3] + self.assertEqual(merged, expected) + lhs = {1: 2} rhs = [1, 2, 3] - self.assertRaises(TypeError, util.merge_dict, (lhs, rhs)) + merged = util.merge_dict(lhs, rhs) + expected = [1, 2, 3] + self.assertEqual(merged, expected) + + lhs = {1: 2} + rhs = [1, 2, 3] + merged = util.merge_dict(lhs, rhs, False) + expected = {1: 2} + self.assertEqual(merged, expected) -class TestOrderKeys(unittest2.TestCase): - """test order keys.""" +class TestEncrypt(unittest2.TestCase): + """Test encrypt.""" - def test_simple_order_keys(self): - """test simple order keys.""" - keys = [1, 2, 3, 4, 5] - orders = [3, 4, 5] - ordered_keys = util.order_keys(keys, orders) - self.assertEqual(ordered_keys, [3, 4, 5, 1, 2]) + def setUp(self): + super(TestEncrypt, self).setUp() - def test_order_keys_with_dot(self): - """test order keys with dot in it.""" - keys = [1, 2, 3, 4, 5] - orders = [3, 4, '.', 5] - ordered_keys = util.order_keys(keys, orders) - self.assertEqual(ordered_keys, [3, 4, 1, 2, 5]) - - def test_order_keys_with_multidot(self): - """test order keys with multi dots in it.""" - keys = [1, 2, 3, 4, 5] - orders = [3, '.', 4, '.', 5] - ordered_keys = util.order_keys(keys, orders) - self.assertEqual(ordered_keys, [3, 1, 2, 4, 5]) - - def test_others_in_orders(self): - """test other key in order.""" - keys = [1, 2, 3, 4, 5] - orders = [3, '.', 5, 6] - ordered_keys = util.order_keys(keys, orders) - self.assertEqual(ordered_keys, [3, 1, 2, 4, 5]) - - def test_keys_orders_notlist(self): - """test keys not in order.""" - keys = {1: 1} - orders = [3, 4, 5] - self.assertRaises(TypeError, util.order_keys, keys, orders) - - keys = [1, 2, 3, 4, 5] - orders = {3: 3} - self.assertRaises(TypeError, util.order_keys, keys, orders) + def tearDown(self): + super(TestEncrypt, self).tearDown() -class TestIsInstanceOf(unittest2.TestCase): - """test isinstanceof function.""" - def test_isinstance(self): - """test isinstance.""" - self.assertTrue(util.is_instance({}, [dict, list])) - self.assertFalse(util.is_instance({}, [str, list])) - self.assertFalse(util.is_instance({}, [])) +class TestParseTimeInterval(unittest2.TestCase): + """Test parse time interval.""" + + def setUp(self): + super(TestParseTimeInterval, self).setUp() + + def tearDown(self): + super(TestParseTimeInterval, self).tearDown() -class TestGetListWithPossibility(unittest2.TestCase): - """test get list with possibility.""" +class TestLoadConfigs(unittest2.TestCase): + """Test load configs.""" - def test_simple_case(self): - """test simple case.""" - lists = [['role1'], ['role2'], ['role3']] - self.assertEqual(util.flat_lists_with_possibility(lists), - ['role1', 'role2', 'role3']) - lists = [['role1', 'role1'], ['role2'], ['role3']] - self.assertEqual(util.flat_lists_with_possibility(lists), - ['role1', 'role2', 'role3', 'role1']) - lists = [['role1', 'role1', 'role1'], ['role2', 'role2'], ['role3']] - self.assertEqual(util.flat_lists_with_possibility(lists), - ['role1', 'role2', 'role3', - 'role1', 'role2', 'role1']) - lists = [['role1', 'role1', 'role1', 'role1'], - ['role2', 'role2'], ['role3']] - self.assertEqual(util.flat_lists_with_possibility(lists), - ['role1', 'role2', 'role3', 'role1', - 'role1', 'role2', 'role1']) - lists = [['role3'], - ['role2', 'role2'], - ['role1', 'role1', 'role1', 'role1']] - self.assertEqual(util.flat_lists_with_possibility(lists), - ['role1', 'role2', 'role3', 'role1', - 'role1', 'role2', 'role1']) + def setUp(self): + super(TestLoadConfigs, self).setUp() + self.TEST_UTIL_HOME = os.path.dirname(os.path.realpath(__file__)) + + def tearDown(self): + super(TestLoadConfigs, self).tearDown() + + def test_load_no_suffix(self): + loaded = util.load_configs( + self.TEST_UTIL_HOME + '/data/test_no_suffix' + ) + expected = [] + self.assertEqual(loaded, expected) + + def test_load_conf(self): + loaded = util.load_configs( + self.TEST_UTIL_HOME + '/data/test_load_conf' + ) + expected = [{'TEST': True, 'PROD': False}] + self.assertEqual(loaded, expected) + + def test_load_confs(self): + loaded = util.load_configs( + self.TEST_UTIL_HOME + '/data/test_load_confs' + ) + expected = [ + { + 'TEST': True, + 'PROD': False + }, + { + 'UTIL_TEST': 'unittest' + } + ] + loaded.sort() + expected.sort() + self.assertTrue(loaded, expected) + + def test_load_confs_global_env(self): + loaded = util.load_configs( + self.TEST_UTIL_HOME + '/data/test_load_confs', + env_globals={'TEST': False} + ) + expected = [ + { + 'UTIL_TEST': 'unittest' + }, + { + 'TEST': True, + 'PROD': False + } + ] + loaded.sort() + expected.sort() + self.assertTrue(loaded, expected) + + def test_load_confs_local_env(self): + loaded = util.load_configs( + self.TEST_UTIL_HOME + '/data/test_load_confs', + env_globals={'TEST': True} + ) + expected = [ + { + 'TEST': True, + 'UTIL_TEST': 'unittest' + }, + { + 'TEST': True, + 'PROD': False + }] + loaded.sort() + expected.sort() + self.assertTrue(loaded, expected) + + def test_load_confs_local_env_no_override(self): + loaded = util.load_configs( + self.TEST_UTIL_HOME + '/data/test_load_confs', + env_globals={'TEST': False} + ) + expected = [ + { + 'TEST': False, + 'UTIL_TEST': 'unittest' + }, + { + 'TEST': True, + 'PROD': False + } + ] + loaded.sort() + expected.sort() + self.assertTrue(loaded, expected) + + def test_load_conf_error(self): + err_dir = 'non-exist/dir' + loaded = util.load_configs(err_dir) + self.assertEqual([], loaded) if __name__ == '__main__': diff --git a/compass/tests_serverside/__init__.py b/compass/tests_serverside/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests_serverside/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests_serverside/deployment/__init__.py b/compass/tests_serverside/deployment/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests_serverside/deployment/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests_serverside/deployment/installers/__init__.py b/compass/tests_serverside/deployment/installers/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests_serverside/deployment/installers/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests_serverside/deployment/installers/pk_installers/__init__.py b/compass/tests_serverside/deployment/installers/pk_installers/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests_serverside/deployment/installers/pk_installers/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests_serverside/deployment/installers/pk_installers/chef_installer/__init__.py b/compass/tests_serverside/deployment/installers/pk_installers/chef_installer/__init__.py new file mode 100644 index 00000000..5e42ae96 --- /dev/null +++ b/compass/tests_serverside/deployment/installers/pk_installers/chef_installer/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests_serverside/deployment/installers/pk_installers/chef_installer/test_chef_installer.py b/compass/tests_serverside/deployment/installers/pk_installers/chef_installer/test_chef_installer.py new file mode 100644 index 00000000..bb924cc1 --- /dev/null +++ b/compass/tests_serverside/deployment/installers/pk_installers/chef_installer/test_chef_installer.py @@ -0,0 +1,261 @@ +#!/usr/bin/python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +__author__ = "Grace Yu (grace.yu@huawei.com)" + + +"""Test Chef installer functionalities regarding to chef server side. +""" + +from mock import Mock +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + +from compass.tests.deployment.test_data import config_data +from compass.utils import setting_wrapper as compass_setting +reload(compass_setting) + + +from compass.deployment.installers.config_manager import BaseConfigManager +from compass.deployment.installers.pk_installers.chef_installer.chef_installer\ + import ChefInstaller + + +class TestChefInstaller(unittest2.TestCase): + """Test installer functionality.""" + def setUp(self): + super(TestChefInstaller, self).setUp() + self.dist_sys_name = 'openstack_icehouse' + self.chef_test_api = self._get_testchefapi() + self.test_chef = self._get_chef_installer() + self.objects = [] + + def tearDown(self): + import chef + super(TestChefInstaller, self).tearDown() + databag_names = self.test_chef.get_chef_databag_names() + del self.test_chef + for obj in self.objects: + try: + obj.delete() + except chef.exceptions.ChefError as ex: + print ex + + for name in databag_names: + temp = chef.DataBag(name, self.chef_test_api) + if temp in chef.DataBag.list(api=self.chef_test_api): + temp.delete() + del self.chef_test_api + + def _get_testchefapi(self): + import chef + return chef.ChefAPI(config_data.test_chef_url, + config_data.test_client_key, + config_data.test_client) + + def _register(self, obj): + self.objects.append(obj) + + def _get_chef_installer(self): + adapter_info = config_data.adapter_test_config + cluster_info = config_data.cluster_test_config + hosts_info = config_data.hosts_test_config + + config_manager = BaseConfigManager(adapter_info, cluster_info, + hosts_info) + + ChefInstaller.get_tmpl_path = Mock() + test_tmpl_dir = os.path.join(os.path.join(config_data.test_tmpl_dir, + 'chef_installer'), + 'openstack_icehouse') + ChefInstaller.get_tmpl_path.return_value = test_tmpl_dir + + ChefInstaller._get_chef_api = Mock() + ChefInstaller._get_chef_api.return_value = self.chef_test_api + chef_installer = ChefInstaller(config_manager) + return chef_installer + + def test_update_node(self): + import chef + host_id = 2 + self.dist_sys_name = 'openstack_icehouse' + cluster_name = self.test_chef.config_manager.get_clustername() + node_name = self.test_chef.config_manager.get_host_fullname(host_id) + roles = ['os-compute'] + env_name = self.test_chef.get_env_name(self.dist_sys_name, + cluster_name) + + test_node = self.test_chef.get_create_node(node_name, env_name) + self.assertIsNotNone(test_node) + self._register(test_node) + + cluster_dict = self.test_chef._get_cluster_tmpl_vars() + vars_dict = self.test_chef._get_host_tmpl_vars(host_id, cluster_dict) + + self.test_chef.update_node_attributes_by_roles( + test_node, roles, vars_dict + ) + self.test_chef.add_roles(test_node, roles) + + result_node = chef.Node(node_name, self.chef_test_api) + + self.assertListEqual(result_node.run_list, ['role[os-compute]']) + self.assertEqual(result_node.chef_environment, env_name) + expected_node_attr = { + "openstack": { + "endpoints": { + "compute-vnc-bind": { + "host": "12.234.32.101" + } + } + } + } + self.maxDiff = None + self.assertDictEqual(expected_node_attr, + result_node.attributes.to_dict()) + + def test_update_environment(self): + import chef + cluster_name = self.test_chef.config_manager.get_clustername() + env_name = self.test_chef.get_env_name(self.dist_sys_name, + cluster_name) + vars_dict = self.test_chef._get_cluster_tmpl_vars() + env_attrs = self.test_chef._generate_env_attributes(vars_dict) + test_env = self.test_chef.get_create_environment(env_name) + self.assertIsNotNone(test_env) + self._register(test_env) + + self.test_chef._update_env(test_env, env_attrs) + expected_env = { + "name": "openstack_icehouse-test", + "description": "Environment", + "cookbook_versions": { + }, + "json_class": "Chef::Environment", + "chef_type": "environment", + "default_attributes": { + }, + "override_attributes": { + "compute": { + "syslog": { + "use": False + }, + "libvirt": { + "bind_interface": "eth0" + }, + "novnc_proxy": { + "bind_interface": "vnet0" + }, + "xvpvnc_proxy": { + "bind_interface": "eth0" + } + }, + "db": { + "bind_interface": "vnet0", + "compute": { + "host": "12.234.32.100" + }, + "identity": { + "host": "12.234.32.100" + } + }, + "mq": { + "user": "guest", + "password": "test", + "vhost": "/nova", + "network": { + "service_type": "rabbitmq" + } + } + } + } + chef_env = chef.Environment(env_name, self.chef_test_api) + self.maxDiff = None + self.assertDictEqual(expected_env, chef_env.to_dict()) + + def test_update_databags(self): + import chef + vars_dict = { + "cluster": { + "deployed_package_config": { + "service_credentials": { + "nova": { + "username": "nova", + "password": "compute" + } + }, + "users_credentials": { + "ksadmin": { + "username": "ksadmin", + "password": "ksadmin" + }, + "demo": { + "username": "demo", + "password": "demo" + } + } + } + } + } + expected_output = { + "user_passwords": { + "admin": { + "admin": "admin", + }, + "ksadmin": { + "ksadmin": "ksadmin" + }, + "demo": { + "demo": "demo" + } + }, + "db_passwords": { + "nova": { + "nova": "compute", + }, + "horizon": { + "horizon": "horizon" + }, + "keystone": { + "keystone": "keystone" + } + } + } + self.test_chef.update_databags(vars_dict) + databag_names = self.test_chef.get_chef_databag_names() + + for name in databag_names: + test_databag = chef.DataBag(name, self.chef_test_api) + self.maxDiff = None + expected_items = expected_output[name] + for item, value in test_databag.iteritems(): + self.assertDictEqual(expected_items[item], value) + + def test_add_roles(self): + import chef + test_node = chef.Node('testnode', api=self.chef_test_api) + test_node.run_list.append('role[test_role_a]') + test_node.save() + self._register(test_node) + + input_roles = ['test_role_1', 'test_role_2', 'test_role_a'] + self.test_chef.add_roles(test_node, input_roles) + + expected_roles = [('role[%s]' % role) for role in input_roles] + self.assertSetEqual(set(expected_roles), set(test_node.run_list)) diff --git a/compass/utils/celeryconfig_wrapper.py b/compass/utils/celeryconfig_wrapper.py index 4fa51ee7..6b477771 100644 --- a/compass/utils/celeryconfig_wrapper.py +++ b/compass/utils/celeryconfig_wrapper.py @@ -31,8 +31,8 @@ CELERY_IMPORTS = ('compass.tasks.tasks',) if setting.CELERYCONFIG_FILE: CELERY_CONFIG = os.path.join( - setting.CELERYCONFIG_DIR, - setting.CELERYCONFIG_FILE) + str(setting.CELERYCONFIG_DIR), + str(setting.CELERYCONFIG_FILE)) try: logging.info('load celery config from %s', CELERY_CONFIG) diff --git a/compass/utils/logsetting.py b/compass/utils/logsetting.py index b82540c9..7c3cd3a1 100644 --- a/compass/utils/logsetting.py +++ b/compass/utils/logsetting.py @@ -52,6 +52,12 @@ LOGLEVEL_MAPPING = { 'critical': logging.CRITICAL, } +logging.addLevelName(LOGLEVEL_MAPPING['fine'], 'fine') +logging.addLevelName(LOGLEVEL_MAPPING['finest'], 'finest') + +# disable logging when logsetting.init not called +logging.getLogger().setLevel(logging.CRITICAL) + def init(): """Init loggsetting. It should be called after flags.init.""" diff --git a/compass/utils/setting_wrapper.py b/compass/utils/setting_wrapper.py index afcc6acf..b660bf66 100644 --- a/compass/utils/setting_wrapper.py +++ b/compass/utils/setting_wrapper.py @@ -16,29 +16,24 @@ .. moduleauthor:: Xiaodong Wang ,xiaodongwang@huawei.com> """ +import datetime +import lazypy import logging import os +import os.path # default setting -PROVIDER_NAME = 'mix' -GLOBAL_CONFIG_PROVIDER = 'file' -CLUSTER_CONFIG_PROVIDER = 'db' -HOST_CONFIG_PROVIDER = 'db' CONFIG_DIR = '/etc/compass' -GLOBAL_CONFIG_FILENAME = 'global_config' -CONFIG_FILE_FORMAT = 'python' -DATABASE_TYPE = 'file' -DATABASE_FILE = '' SQLALCHEMY_DATABASE_URI = 'sqlite://' -OS_INSTALLER = 'cobbler' -COBBLER_INSTALLER_URL = '' -COBBLER_INSTALLER_TOKEN = ['cobbler', 'cobbler'] -PACKAGE_INSTALLER = 'chef' -CHEF_INSTALLER_URL = '' -CHEF_GLOBAL_DATABAG_NAME = 'env_default' -INSTALLATION_LOGDIR = '' -DEFAULT_LOGLEVEL = 'info' +SQLALCHEMY_DATABASE_POOL_TYPE = 'static' +INSTALLATION_LOGDIR = { + 'CobblerInstaller': '/var/log/cobbler/anamon', + 'ChefInstaller': '/var/log/chef' +} +CLUSTERHOST_INATALLATION_LOGDIR_NAME = 'name' +HOST_INSTALLATION_LOGDIR_NAME = 'name' +DEFAULT_LOGLEVEL = 'debug' DEFAULT_LOGDIR = '/tmp' DEFAULT_LOGINTERVAL = 1 DEFAULT_LOGINTERVAL_UNIT = 'h' @@ -46,13 +41,88 @@ DEFAULT_LOGFORMAT = ( '%(asctime)s - %(filename)s - %(lineno)d - %(levelname)s - %(message)s') WEB_LOGFILE = '' CELERY_LOGFILE = '' -CELERYCONFIG_DIR = '' +CELERYCONFIG_DIR = lazypy.delay(lambda: CONFIG_DIR) CELERYCONFIG_FILE = '' PROGRESS_UPDATE_INTERVAL = 30 POLLSWITCH_INTERVAL = 60 SWITCHES = [ ] +USER_AUTH_HEADER_NAME = 'X-Auth-Token' +USER_TOKEN_DURATION = '2h' +COMPASS_ADMIN_EMAIL = 'admin@huawei.com' +COMPASS_ADMIN_PASSWORD = 'admin' +COMPASS_DEFAULT_PERMISSIONS = [ + 'list_permissions', +] +SWITCHES_DEFAULT_FILTERS = [] +DEFAULT_SWITCH_IP = '0.0.0.0' +DEFAULT_SWITCH_PORT = 0 + +COMPASS_SUPPORTED_PROXY = 'http://127.0.0.1:3128' +COMPASS_SUPPORTED_DEFAULT_NOPROXY = ['127.0.0.1'] +COMPASS_SUPPORTED_NTP_SERVER = '127.0.0.1' +COMPASS_SUPPORTED_DNS_SERVERS = ['127.0.0.1'] +COMPASS_SUPPORTED_DOMAINS = [] +COMPASS_SUPPORTED_DEFAULT_GATEWAY = '127.0.0.1' +COMPASS_SUPPORTED_LOCAL_REPO = 'http://127.0.0.1' + +# For test chef server. please replace these config info with your own. +TEST_CHEF_URL = "https://api.opscode.com/organizations/compasscheftest" +TEST_CLIENT_KEY_PATH = "/etc/compass/client.pem" +TEST_CLIENT_NAME = "graceyu" + +PROGRESS_UPDATE_PID_FILE = '/var/run/progress_update.pid' + +OS_INSTALLER_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'os_installer') +) +PACKAGE_INSTALLER_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'package_installer') +) +OS_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'os') +) +DISTRIBUTED_SYSTEM_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'distributed_system') +) +ADAPTER_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'adapter') +) +OS_METADATA_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'os_metadata') +) +PACKAGE_METADATA_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'package_metadata') +) +OS_FIELD_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'os_field') +) +PACKAGE_FIELD_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'package_field') +) +ADAPTER_ROLE_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'role') +) +ADAPTER_FLAVOR_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'flavor') +) +VALIDATOR_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'validator') +) +CALLBACK_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'callback') +) +TMPL_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'templates') +) +MAC_LIST_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'mac_list') +) +SWITCH_LIST_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'switch_list') +) +PROXY_URL_PREFIX = 'http://10.145.81.205:5000' if ( 'COMPASS_IGNORE_SETTING' in os.environ and diff --git a/compass/utils/util.py b/compass/utils/util.py index d8951c5b..957c26b8 100644 --- a/compass/utils/util.py +++ b/compass/utils/util.py @@ -16,8 +16,68 @@ .. moduleauthor:: Xiaodong Wang """ -import copy + +import crypt +import datetime +import logging +import os +import os.path import re +import sys + + +def parse_datetime(date_time, exception_class=Exception): + """Parse datetime str to get datetime object.""" + try: + return datetime.datetime.strptime( + date_time, '%Y-%m-%d %H:%M:%S' + ) + except Exception as error: + logging.exception(error) + raise exception_class( + 'date time %s format is invalid' % date_time + ) + + +def parse_datetime_range(date_time_range, exception_class=Exception): + """parse datetime range str to pair of datetime objects.""" + try: + start, end = date_time_range.split(',') + except Exception as error: + logging.exception(error) + raise exception_class( + 'there is no `,` in date time range %s' % date_time_range + ) + if start: + start_datetime = parse_datetime(start, exception_class) + else: + start_datetime = None + if end: + end_datetime = parse_datetime(end, exception_class) + else: + end_datetime = None + return start_datetime, end_datetime + + +def parse_request_arg_dict(arg, exception_class=Exception): + """parse string to dict.""" + arg_dict = {} + arg_pairs = arg.split(';') + for arg_pair in arg_pairs: + try: + arg_name, arg_value = arg_pair.split('=', 1) + except Exception as error: + logging.exception(error) + raise exception_class( + 'there is no `=` in %s' % arg_pair + ) + arg_dict[arg_name] = arg_value + return arg_dict + + +def format_datetime(date_time): + """Generate string from datetime object.""" + return date_time.strftime("%Y-%m-%d %H:%M:%S") def merge_dict(lhs, rhs, override=True): @@ -28,66 +88,110 @@ def merge_dict(lhs, rhs, override=True): :param rhs: dict to merge from. :type rhs: dict :param override: the value in rhs overide the value in left if True. - :type override: str - - :raises: TypeError if lhs or rhs is not a dict. + :type override: boolean """ - if not rhs: - return - - if not isinstance(lhs, dict): - raise TypeError('lhs type is %s while expected is dict' % type(lhs), - lhs) - - if not isinstance(rhs, dict): - raise TypeError('rhs type is %s while expected is dict' % type(rhs), - rhs) + if not isinstance(lhs, dict) or not isinstance(rhs, dict): + if override: + return rhs + else: + return lhs for key, value in rhs.items(): - if ( - isinstance(value, dict) and key in lhs and - isinstance(lhs[key], dict) - ): - merge_dict(lhs[key], value, override) + if key not in lhs: + lhs[key] = rhs[key] else: - if override or key not in lhs: - lhs[key] = copy.deepcopy(value) + lhs[key] = merge_dict(lhs[key], value, override) + + return lhs -def order_keys(keys, orders): - """Get ordered keys. - - :param keys: keys to be sorted. - :type keys: list of str - :param orders: the order of the keys. '.' is all other keys not in order. - :type orders: list of str. - - :returns: keys as list sorted by orders. - - :raises: TypeError if keys or orders is not list. - """ - - if not isinstance(keys, list): - raise TypeError('keys %s type should be list' % keys) - - if not isinstance(orders, list): - raise TypeError('orders ^s type should be list' % orders) - - found_dot = False - pres = [] - posts = [] - for order in orders: - if order == '.': - found_dot = True +def encrypt(value, crypt_method=None): + """Get encrypted value.""" + if not crypt_method: + if hasattr(crypt, 'METHOD_MD5'): + crypt_method = crypt.METHOD_MD5 else: - if found_dot: - posts.append(order) - else: - pres.append(order) + # for python2.7, copy python2.6 METHOD_MD5 logic here. + from random import choice + import string - return ([pre for pre in pres if pre in keys] + - [key for key in keys if key not in orders] + - [post for post in posts if post in keys]) + _saltchars = string.ascii_letters + string.digits + './' + + def _mksalt(): + """generate salt.""" + salt = '$1$' + salt += ''.join(choice(_saltchars) for _ in range(8)) + return salt + + crypt_method = _mksalt() + + return crypt.crypt(value, crypt_method) + + +def parse_time_interval(time_interval_str): + if not time_interval_str: + return 0 + + time_interval_tuple = [ + time_interval_element + for time_interval_element in time_interval_str.split(' ') + if time_interval_element + ] + time_interval_dict = {} + time_interval_unit_mapping = { + 'd': 'days', + 'w': 'weeks', + 'h': 'hours', + 'm': 'minutes', + 's': 'seconds' + } + for time_interval_element in time_interval_tuple: + mat = re.match(r'^([+-]?\d+)(w|d|h|m|s).*', time_interval_element) + if not mat: + continue + + time_interval_value = int(mat.group(1)) + time_interval_unit = time_interval_unit_mapping[mat.group(2)] + time_interval_dict[time_interval_unit] = ( + time_interval_dict.get(time_interval_unit, 0) + time_interval_value + ) + + time_interval = datetime.timedelta(**time_interval_dict) + if sys.version_info[0:2] > (2, 6): + return time_interval.total_seconds() + else: + return ( + time_interval.microseconds + ( + time_interval.seconds + time_interval.days * 24 * 3600 + ) * 1e6 + ) / 1e6 + + +def load_configs( + config_dir, config_name_suffix='.conf', + env_globals={}, env_locals={} +): + configs = [] + config_dir = str(config_dir) + if not os.path.exists(config_dir): + logging.debug('path %s does not exist', config_dir) + return configs + for component in os.listdir(config_dir): + if not component.endswith(config_name_suffix): + continue + path = os.path.join(config_dir, component) + logging.debug('load config from %s', path) + config_globals = {} + config_globals.update(env_globals) + config_locals = {} + config_locals.update(env_locals) + try: + execfile(path, config_globals, config_locals) + except Exception as error: + logging.exception(error) + raise error + configs.append(config_locals) + return configs def is_instance(instance, expected_types): @@ -106,48 +210,6 @@ def is_instance(instance, expected_types): return False -def flat_lists_with_possibility(lists): - """Return list of item from list of list of identity item. - - :param lists: list of list of identity item. - - :returns: list. - - .. note:: - For each first k elements in the returned list, it should be the k - most possible items. e.g. the input lists is - ['a', 'a', 'a', 'a'], ['b', 'b'], ['c'], - the expected output is ['a', 'b', 'c', 'a', 'a', 'b', 'a']. - """ - lists = copy.deepcopy(lists) - lists = sorted(lists, key=len, reverse=True) - list_possibility = [] - max_index = 0 - total_elements = 0 - possibilities = [] - for items in lists: - list_possibility.append(0.0) - length = len(items) - if length > 0: - total_elements += length - possibilities.append(1.0 / length) - else: - possibilities.append(0.0) - - output = [] - while total_elements > 0: - if not lists[max_index]: - list_possibility[max_index] -= total_elements - else: - list_possibility[max_index] -= possibilities[max_index] - element = lists[max_index].pop(0) - output.append(element) - total_elements -= 1 - max_index = list_possibility.index(max(list_possibility)) - - return output - - def pretty_print(*contents): """pretty print contents.""" if len(contents) == 0: @@ -156,121 +218,6 @@ def pretty_print(*contents): print "\n".join(content for content in contents) -def get_clusters_from_str(clusters_str): - """get clusters from string.""" - clusters = {} - for cluster_and_hosts in clusters_str.split(';'): - if not cluster_and_hosts: - continue - - if ':' in cluster_and_hosts: - cluster_str, hosts_str = cluster_and_hosts.split( - ':', 1) - else: - cluster_str = cluster_and_hosts - hosts_str = '' - - hosts = [ - host for host in hosts_str.split(',') - if host - ] - clusters[cluster_str] = hosts - - return clusters - - -def _get_switch_ips(switch_config): - """Helper function to get switch ips.""" - ips = [] - blocks = switch_config['switch_ips'].split('.') - ip_blocks_list = [] - for block in blocks: - ip_blocks_list.append([]) - sub_blocks = block.split(',') - for sub_block in sub_blocks: - if not sub_block: - continue - - if '-' in sub_block: - start_block, end_block = sub_block.split('-', 1) - start_block = int(start_block) - end_block = int(end_block) - if start_block > end_block: - continue - - ip_block = start_block - while ip_block <= end_block: - ip_blocks_list[-1].append(str(ip_block)) - ip_block += 1 - - else: - ip_blocks_list[-1].append(sub_block) - - ip_prefixes = [[]] - for ip_blocks in ip_blocks_list: - prefixes = [] - for ip_block in ip_blocks: - for prefix in ip_prefixes: - prefixes.append(prefix + [ip_block]) - - ip_prefixes = prefixes - - for prefix in ip_prefixes: - if not prefix: - continue - - ips.append('.'.join(prefix)) - - return ips - - -def _get_switch_filter_ports(switch_config): - """Helper function to get switch filter ports.""" - port_pat = re.compile(r'(\D*)(\d+(?:-\d+)?)') - filter_ports = [] - for port_range in switch_config['filter_ports'].split(','): - if not port_range: - continue - - mat = port_pat.match(port_range) - if not mat: - filter_ports.append(port_range) - else: - port_prefix = mat.group(1) - port_range = mat.group(2) - if '-' in port_range: - start_port, end_port = port_range.split('-', 1) - start_port = int(start_port) - end_port = int(end_port) - if start_port > end_port: - continue - - port = start_port - while port <= end_port: - filter_ports.append('%s%s' % (port_prefix, port)) - port += 1 - - else: - filter_ports.append('%s%s' % (port_prefix, port_range)) - - return filter_ports - - -def get_switch_filters(switch_configs): - """get switch filters.""" - switch_filters = [] - for switch_config in switch_configs: - ips = _get_switch_ips(switch_config) - filter_ports = _get_switch_filter_ports(switch_config) - - for ip_addr in ips: - for filter_port in filter_ports: - switch_filters.append( - {'ip': ip_addr, 'filter_port': filter_port}) - - return switch_filters - - def get_switch_machines_from_file(filename): """get switch machines from file.""" switches = [] @@ -296,62 +243,18 @@ def get_switch_machines_from_file(filename): switch_community, switch_state) = columns[1:] switches.append({ 'ip': switch_ip, - 'vendor_info': switch_vendor, - 'credential': { + 'vendor': switch_vendor, + 'credentials': { 'version': switch_version, 'community': switch_community, }, 'state': switch_state, }) elif columns[0] == 'machine': - switch_ip, switch_port, vlan, mac = columns[1:] + switch_ip, switch_port, mac = columns[1:] switch_machines.setdefault(switch_ip, []).append({ 'mac': mac, 'port': switch_port, - 'vlan': int(vlan) }) return (switches, switch_machines) - - -def get_properties_from_str(properties_str): - """get matching properties from string.""" - properties = {} - if not properties_str: - return properties - - for property_str in properties_str.split(','): - if not property_str: - # ignore empty str - continue - - property_name, property_value = property_str.split('=', 1) - properties[property_name] = property_value - - return properties - - -def get_properties_name_from_str(properties_name_str): - """get properties name to print from string.""" - properties_name = [] - for property_name in properties_name_str.split(','): - if not property_name: - # ignore empty str - continue - - properties_name.append(property_name) - - return properties_name - - -def print_properties(properties): - """print properties.""" - print '-----------------------------------------------' - for property_item in properties: - property_pairs = [] - for property_name, property_value in property_item.items(): - property_pairs.append('%s=%s' % (property_name, property_value)) - - print ','.join(property_pairs) - - print '-----------------------------------------------' diff --git a/conf/adapter/ceph.conf b/conf/adapter/ceph.conf new file mode 100644 index 00000000..6b6c8139 --- /dev/null +++ b/conf/adapter/ceph.conf @@ -0,0 +1,3 @@ +NAME = 'ceph' +PARENT = 'general' +DISTRIBUTED_SYSTEM = 'ceph' diff --git a/conf/adapter/chef_ceph.conf b/conf/adapter/chef_ceph.conf new file mode 100644 index 00000000..f66aaa41 --- /dev/null +++ b/conf/adapter/chef_ceph.conf @@ -0,0 +1,7 @@ +NAME = 'ceph_firefly' +DSPLAY_NAME = 'Ceph Firefly' +PARENT = 'ceph' +PACKAGE_INSTALLER = 'chef_installer' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/conf/adapter/chef_ceph_openstack.conf b/conf/adapter/chef_ceph_openstack.conf new file mode 100644 index 00000000..1e49a0c9 --- /dev/null +++ b/conf/adapter/chef_ceph_openstack.conf @@ -0,0 +1,8 @@ +NAME = 'ceph_openstack_icehouse' +DISPLAY_NAME = 'Ceph + OpenStack Icehouse' +PARENT = 'openstack' +DISTRIBUTED_SYSTEM = 'openstack_ceph' +PACKAGE_INSTALLER = 'chef_installer' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/conf/adapter/chef_openstack.conf b/conf/adapter/chef_openstack.conf new file mode 100644 index 00000000..b523815c --- /dev/null +++ b/conf/adapter/chef_openstack.conf @@ -0,0 +1,7 @@ +NAME = 'openstack_icehouse' +DISPLAY_NAME = 'OpenStack Icehouse' +PARENT = 'openstack' +PACKAGE_INSTALLER = 'chef_installer' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/conf/adapter/general.conf b/conf/adapter/general.conf new file mode 100644 index 00000000..4d8cb371 --- /dev/null +++ b/conf/adapter/general.conf @@ -0,0 +1 @@ +NAME = 'general' diff --git a/conf/adapter/openstack.conf b/conf/adapter/openstack.conf new file mode 100644 index 00000000..2f948fb0 --- /dev/null +++ b/conf/adapter/openstack.conf @@ -0,0 +1,4 @@ +NAME = 'openstack' +PARENT = 'general' +DISTRIBUTED_SYSTEM = 'openstack' +SUPPORTED_OSES = ['CentOS6.5', 'Ubuntu12.04'] diff --git a/conf/adapter/os_only.conf b/conf/adapter/os_only.conf new file mode 100644 index 00000000..96295538 --- /dev/null +++ b/conf/adapter/os_only.conf @@ -0,0 +1,5 @@ +NAME = 'os_only' +PARENT = 'general' +OS_INSTALLER = 'cobbler' +SUPPORTED_OS_PATTERNS = ['(?i)centos.*', '(?i)ubuntu.*'] +DEPLOYABLE = True diff --git a/conf/compassd b/conf/compassd deleted file mode 100755 index e64871ae..00000000 --- a/conf/compassd +++ /dev/null @@ -1,161 +0,0 @@ -#!/bin/sh -# -# compassd Compass daemon -################################## - -# LSB header - -### BEGIN INIT INFO -# Provides: compassd -# Required-Start: $network $httpd -# Default-Start: 3 4 5 -# Default-Stop: 0 1 2 6 -# Short-Description: compassd -# Description: Compass daemon service -# -### END INIT INFO - -# chkconfig header - -# chkconfig: 345 99 99 -# description: This is a daemon that provides Compass daemon service -# -# Checking Sanity -[ -x /opt/compass/bin/poll_switch.py ] || exit 0 -[ -x /opt/compass/bin/progress_update.py ] || exit 0 -UBUNTU=/etc/debian_version -SUSE=/etc/SuSE-release -PYTHON=$Python -CELERY=$CeleryPath - -if [ -f $UBUNTU ]; then - . /lib/lsb/init_functions -elif [ -f $SUSE -a -r /etc/rc.status ]; then - . /etc/rc.status -else - . /etc/rc.d/init.d/functions -fi - -SERVICE=compassd -PROCESS=compassd - -RETVAL=0 -start() { - echo "Starting Compass: " - if [ -f $SUSE ]; then - echo -n "Start celeryd: " - startproc -f -p /var/run/celeryd.pid -l /tmp/celeryd.log "C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper $CELERY" - rc_status -v - echo - echo -n "Start service progress_update: " - startproc -f -p /var/run/progress_update.pid -l /tmp/progress_update.log $PYTHON /opt/compass/bin/progress_update.py - rc_status -v - echo - elif [ -e $UBUNTU ]; then - if [ -f /var/run/celeryd.pid ]; then - echo "celeryd is already started" - RETVAL=1 - elif C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper $CELERY &> /tmp/celeryd.log; then - echo "celeryd starts OK" - RETVAL=0 - fi - if [ -f /var/run/progress_update.pid ]; then - echo "progress_update is already started" - RETVAL=1 - elif $PYTHON /opt/compass/bin/progress_update.py &> /tmp/progress_update.log; then - echo "progress_update starts OK" - RETVAL=0 - fi - else - echo -n "Start celeryd: " - daemon --pidfile /var/run/celeryd.pid "C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper $CELERY &>/tmp/celeryd.log & echo \$! > /var/run/celeryd.pid" - RETVAL=$? - echo - echo -n "Start service progress_update: " - daemon --pidfile /var/run/progress_update.pid "$PYTHON /opt/compass/bin/progress_update.py &>/tmp/progress_update.log & echo \$! > /var/run/progress_update.pid" - RETVAL=$? - echo - fi - echo - return $RETVAL -} - -stop() { - echo "Stopping Compass: " - if [ -f $SUSE ]; then - echo -n "Stop service celeryd: " - killproc -t 10 -p /var/run/celeryd.pid $CELERY - rc_status -v - echo - echo -n "Stop service progress_update: " - killproc -t 30 -p /var/run/progress_update.pid /opt/compass/bin/progress_update.py - rc_status -v - echo - elif [ -f $UBUNTU ]; then - echo "Unsupported" - RETVAL=1 - else - echo -n "Stop service celeryd: " - killproc -p /var/run/celeryd.pid -d 30 $CELERY - RETVAL=$? - echo - echo -n "Stop service progress_update: " - killproc -p /var/run/progress_update.pid -d 30 /opt/compass/bin/progress_update.py - RETVAL=$? - echo - fi -} - -restart() { - stop - start -} -case "$1" in - start|stop|restart) - $1 - ;; - status) - echo "Checking compass: " - if [ -f $SUSE ]; then - echo -n "Checking for service celeryd: " - checkproc -v -p /var/run/celeryd.pid $CELERY - rc_status -v - echo - echo -n "Checking for service progress_update: " - checkproc -v -p /var/run/progress_update.pid /opt/compass/bin/progress_update.py - rc_status -v - echo - elif [ -f $UBUNTU ]; then - echo -n "Checking for service celeryd" - if [ -f /var/run/celeryd.pid ]; then - RETVAL=0 - echo "celeryd is running." - else - RETVAL=1 - echo "celeryd is stopped." - fi - echo -n "Checking for service progress_update" - if [ -f /var/run/progress_update.pid ]; then - RETVAL=0 - echo "progress_update is running." - else - RETVAL=1 - echo "progress_update is stopped." - fi - else - echo -n "checking for service celeryd: " - status -p /var/run/celeryd.pid $CELERY - retval=$? - echo - echo -n "checking for service progress_update: " - status -p /var/run/progress_update.pid /opt/compass/bin/progress_update.py - retval=$? - echo - fi - ;; - *) - echo "Usage: $0 {start|stop|status|restart}" - exit 1 - ;; -esac -exit $RETVAL diff --git a/conf/distributed_system/ceph.conf b/conf/distributed_system/ceph.conf new file mode 100644 index 00000000..674b8248 --- /dev/null +++ b/conf/distributed_system/ceph.conf @@ -0,0 +1,3 @@ +NAME = 'ceph' +PARENT = 'general' +DEPLOYABLE = True diff --git a/conf/distributed_system/general.conf b/conf/distributed_system/general.conf new file mode 100644 index 00000000..655beb06 --- /dev/null +++ b/conf/distributed_system/general.conf @@ -0,0 +1,2 @@ +NAME = 'general' +PARENT = '' diff --git a/conf/distributed_system/openstack.conf b/conf/distributed_system/openstack.conf new file mode 100644 index 00000000..d4a14a2e --- /dev/null +++ b/conf/distributed_system/openstack.conf @@ -0,0 +1,3 @@ +NAME ='openstack' +PARENT = 'general' +DEPLOYABLE = True diff --git a/conf/distributed_system/openstack_ceph.conf b/conf/distributed_system/openstack_ceph.conf new file mode 100644 index 00000000..1f59eb8c --- /dev/null +++ b/conf/distributed_system/openstack_ceph.conf @@ -0,0 +1,3 @@ +NAME ='openstack_ceph' +PARENT = 'general' +DEPLOYABLE = True diff --git a/conf/flavor/ceph_firefly.conf b/conf/flavor/ceph_firefly.conf new file mode 100644 index 00000000..148499c4 --- /dev/null +++ b/conf/flavor/ceph_firefly.conf @@ -0,0 +1,9 @@ +ADAPTER_NAME = 'ceph_firefly' +FLAVORS = [ + { + 'flavor': 'ceph_firefly', + 'display_name': 'Ceph Cluster (Firefly)', + 'template': 'ceph_firefly.tmpl', + 'roles': ['ceph-mon', 'ceph-osd', 'ceph-mds', 'ceph-radosgw'] + } +] diff --git a/conf/flavor/chef_ceph_openstack.conf b/conf/flavor/chef_ceph_openstack.conf new file mode 100644 index 00000000..9abeaa94 --- /dev/null +++ b/conf/flavor/chef_ceph_openstack.conf @@ -0,0 +1,22 @@ +ADAPTER_NAME = 'ceph_openstack_icehouse' +FLAVORS = [ +{ + 'flavor': 'ceph_openstack_multinodes', + 'display_name': 'Multi-node Ceph+OpenStack Cluster', + 'template': 'multinodes.tmpl', + 'roles': [ + 'os-ops-database', 'os-ops-messaging', 'os-identity', 'os-compute-controller', + 'ceph-os-mon', 'ceph-osd', 'ceph-mds', 'ceph-os-radosgw', + 'os-ceph-compute-worker', 'os-network-server', + 'os-network-worker', 'os-block-storage-volume', + 'os-ceph-block-storage-controller', 'os-ceph-image', 'os-dashboard' + ] +}, { + 'flavor': 'ceph_openstack_single_controller', + 'display_name': 'Single controller Ceph+OpenStack Cluster', + 'template': 'multinodes.tmpl', + 'roles': [ + 'os-ceph-controller', 'ceph-os-mon', 'ceph-osd', 'ceph-mds', 'ceph-os-radosgw', + 'os-ceph-compute-worker', 'os-network-worker' + ] +}] diff --git a/conf/flavor/openstack_chef.conf b/conf/flavor/openstack_chef.conf new file mode 100644 index 00000000..02f525cb --- /dev/null +++ b/conf/flavor/openstack_chef.conf @@ -0,0 +1,25 @@ +ADAPTER_NAME = 'openstack_icehouse' +FLAVORS = [{ + 'flavor': 'allinone', + 'display_name': 'All-In-One', + 'template': 'allinone.tmpl', + 'roles': ['allinone-compute'] +}, { + 'flavor': 'single-contoller-multi-compute', + 'display_name': 'Single Controller, Multi-compute', + 'template': 'multinodes.tmpl', + 'roles': [ + 'os-controller', 'os-compute-worker', 'os-network', + 'os-block-storage-volume' + ] +}, { + 'flavor': 'multinodes', + 'display_name': 'Multi-node Cluster', + 'template': 'multinodes.tmpl', + 'roles': [ + 'os-ops-database', 'os-identity', 'os-ops-messaging', + 'os-compute-controller', 'os-compute-worker', 'os-network-worker', + 'os-network-server', 'os-block-storage-controller', 'os-block-storage-volume', + 'os-image', 'os-dashboard' + ] +}] diff --git a/conf/global_config b/conf/global_config deleted file mode 100644 index 5e60158b..00000000 --- a/conf/global_config +++ /dev/null @@ -1,64 +0,0 @@ -networking = { - 'global': { - 'default_no_proxy': ['127.0.0.1', 'localhost', '$compass_ip', '$compass_hostname'], - 'search_path_pattern': '%(clusterid)s.%(search_path)s %(search_path)s', - 'noproxy_pattern': '%(hostname)s,%(ip)s' - }, - 'interfaces': { - 'management': { - 'dns_pattern': '%(hostname)s.%(clusterid)s.%(search_path)s', - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'promisc': 0, - }, - 'tenant': { - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'dns_pattern': 'virtual-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 0, - }, - 'public': { - 'netmask': '255.255.255.0', - 'nic': 'eth1', - 'dns_pattern': 'floating-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 1, - }, - 'storage': { - 'netmask': '255.255.255.0', - 'nic': 'eth0', - 'dns_pattern': 'storage-%(hostname)s.%(clusterid)s.%(search_path)s', - 'promisc': 0, - }, - }, -} - -security = { - 'server_credentials': { - 'username': 'root', - 'password': 'huawei', - }, - 'console_credentials': { - 'username': 'admin', - 'password': 'huawei', - }, - 'service_credentials': { - 'username': 'admin', - 'password': 'huawei', - }, -} - -role_assign_policy = { - 'policy_by_host_numbers': { - }, - 'default': { - 'roles': [], - 'maxs': {}, - 'mins': {}, - 'default_max': -1, - 'default_min': 0, - 'exclusives': [], - 'bundles': [], - }, -} - -testmode = $compass_testmode diff --git a/conf/mac_list/mac_list.conf b/conf/mac_list/mac_list.conf new file mode 100644 index 00000000..6485f6c1 --- /dev/null +++ b/conf/mac_list/mac_list.conf @@ -0,0 +1,42 @@ +MAC_LIST = [ + { + 'port': '200', + 'mac': '80:fb:06:35:8c:85', + 'vlan': 0, + }, + { + 'port': '201', + 'mac': '70:7b:e8:75:71:dc', + 'vlan': 0, + }, + { + 'port': '202', + 'mac': '80:fb:06:35:8c:a0', + 'vlan': 0, + }, + { + 'port': '203', + 'mac': '70:7b:e8:75:71:d3', + 'vlan': 0, + }, + { + 'port': '204', + 'mac': '70:7b:e8:75:72:21', + 'vlan': 0, + }, + { + 'port': '205', + 'mac': '70:7b:e8:75:71:37', + 'vlan': 0, + }, + { + 'port': '206', + 'mac': '70:fb:e8:75:71:d6', + 'vlan': 0, + }, + { + 'port': '207', + 'mac': '70:7b:e8:75:71:d9', + 'vlan': 0, + } +] diff --git a/conf/os/centos.conf b/conf/os/centos.conf new file mode 100644 index 00000000..d67f12a1 --- /dev/null +++ b/conf/os/centos.conf @@ -0,0 +1,2 @@ +NAME = 'CentOS' +PARENT = 'general' diff --git a/conf/os/centos6.5.conf b/conf/os/centos6.5.conf new file mode 100644 index 00000000..75d4eb17 --- /dev/null +++ b/conf/os/centos6.5.conf @@ -0,0 +1,3 @@ +NAME = 'CentOS-6.5-x86_64' +PARENT = 'CentOS' +DEPLOYABLE = True diff --git a/conf/os/general.conf b/conf/os/general.conf new file mode 100644 index 00000000..655beb06 --- /dev/null +++ b/conf/os/general.conf @@ -0,0 +1,2 @@ +NAME = 'general' +PARENT = '' diff --git a/conf/os/ubuntu.conf b/conf/os/ubuntu.conf new file mode 100644 index 00000000..2207329e --- /dev/null +++ b/conf/os/ubuntu.conf @@ -0,0 +1,2 @@ +NAME = 'Ubuntu' +PARENT = 'general' diff --git a/conf/os/ubuntu12.04.conf b/conf/os/ubuntu12.04.conf new file mode 100644 index 00000000..db810061 --- /dev/null +++ b/conf/os/ubuntu12.04.conf @@ -0,0 +1,3 @@ +NAME = 'Ubuntu-12.04-x86_64' +PARENT = 'Ubuntu' +DEPLOYABLE = True diff --git a/conf/os_field/dns.conf b/conf/os_field/dns.conf new file mode 100644 index 00000000..b97b1544 --- /dev/null +++ b/conf/os_field/dns.conf @@ -0,0 +1,2 @@ +NAME = 'dns' +VALIDATOR = is_valid_dns diff --git a/conf/os_field/gateway.conf b/conf/os_field/gateway.conf new file mode 100644 index 00000000..f9a3139e --- /dev/null +++ b/conf/os_field/gateway.conf @@ -0,0 +1,2 @@ +NAME = 'gateway' +VALIDATOR = is_valid_gateway diff --git a/conf/os_field/general.conf b/conf/os_field/general.conf new file mode 100644 index 00000000..4d8cb371 --- /dev/null +++ b/conf/os_field/general.conf @@ -0,0 +1 @@ +NAME = 'general' diff --git a/conf/os_field/general_list.conf b/conf/os_field/general_list.conf new file mode 100644 index 00000000..9b37cb99 --- /dev/null +++ b/conf/os_field/general_list.conf @@ -0,0 +1,2 @@ +NAME = 'general_list' +FIELD_TYPE = list diff --git a/conf/os_field/ip.conf b/conf/os_field/ip.conf new file mode 100644 index 00000000..4f532098 --- /dev/null +++ b/conf/os_field/ip.conf @@ -0,0 +1,2 @@ +NAME = 'ip' +VALIDATOR = is_valid_ip diff --git a/conf/os_field/netmask.conf b/conf/os_field/netmask.conf new file mode 100644 index 00000000..2dab8690 --- /dev/null +++ b/conf/os_field/netmask.conf @@ -0,0 +1,2 @@ +NAME = 'netmask' +VALIDATOR = is_valid_netmask diff --git a/conf/os_field/network.conf b/conf/os_field/network.conf new file mode 100644 index 00000000..c7f627f3 --- /dev/null +++ b/conf/os_field/network.conf @@ -0,0 +1,2 @@ +NAME = 'network' +VALIDATOR = is_valid_network diff --git a/conf/os_field/password.conf b/conf/os_field/password.conf new file mode 100644 index 00000000..bdb026e5 --- /dev/null +++ b/conf/os_field/password.conf @@ -0,0 +1,3 @@ +NAME = 'password' +VALIDATOR = is_valid_password +DESCRIPTION = 'password' diff --git a/conf/os_field/percentage.conf b/conf/os_field/percentage.conf new file mode 100644 index 00000000..2e61c899 --- /dev/null +++ b/conf/os_field/percentage.conf @@ -0,0 +1,3 @@ +NAME = 'percentage' +FIELD_TYPE = int +VALIDATOR = is_valid_percentage diff --git a/conf/os_field/size.conf b/conf/os_field/size.conf new file mode 100644 index 00000000..b3b686e8 --- /dev/null +++ b/conf/os_field/size.conf @@ -0,0 +1,2 @@ +NAME = 'size' +VALIDATOR = is_valid_size diff --git a/conf/os_field/username.conf b/conf/os_field/username.conf new file mode 100644 index 00000000..79907b1a --- /dev/null +++ b/conf/os_field/username.conf @@ -0,0 +1,3 @@ +NAME = 'username' +VALIDATOR = is_valid_username +DESCRIPTION = 'username' diff --git a/conf/os_installer/cobbler.conf b/conf/os_installer/cobbler.conf new file mode 100644 index 00000000..fb2043af --- /dev/null +++ b/conf/os_installer/cobbler.conf @@ -0,0 +1,9 @@ +NAME = 'cobbler' +INSTANCE_NAME = 'cobbler' +SETTINGS = { + 'cobbler_url': 'http://$cobbler_ip/cobbler_api', + 'credentials': { + 'username': 'cobbler', + 'password': 'cobbler' + } +} diff --git a/conf/os_metadata/general.conf b/conf/os_metadata/general.conf new file mode 100644 index 00000000..8caf1571 --- /dev/null +++ b/conf/os_metadata/general.conf @@ -0,0 +1,160 @@ +OS = 'general' +METADATA = { + 'general': { + '_self': { + 'required_in_whole_config': True + }, + 'language': { + '_self': { + 'field': 'general', + 'default_value': 'EN', + 'options': ['EN', 'CN'], + 'mapping_to': 'language' + } + }, + 'timezone': { + '_self': { + 'field': 'general', + 'default_value': 'UTC', + 'options': [ + 'America/New_York', 'America/Chicago', + 'America/Los_Angeles', 'Asia/Shanghai', + 'Asia/Tokyo', 'Europe/Paris', + 'Europe/London', 'Europe/Moscow', + 'Europe/Rome', 'Europe/Madrid', + 'Europe/Berlin', 'UTC' + ], + 'mapping_to': 'timezone' + } + }, + 'http_proxy': { + '_self': { + 'field': 'general', + 'default_callback': default_proxy, + 'options_callback': proxy_options, + 'mapping_to': 'http_proxy' + } + }, + 'https_proxy': { + '_self': { + 'field': 'general', + 'default_callback': default_proxy, + 'options_callback': proxy_options, + 'mapping_to': 'https_proxy' + } + }, + 'no_proxy': { + '_self': { + 'field': 'general_list', + 'default_callback': default_noproxy, + 'options_callback': noproxy_options, + 'autofill_callback': autofill_no_proxy, + 'mapping_to': 'no_proxy' + } + }, + 'ntp_server': { + '_self': { + 'is_required': True, + 'field': 'general', + 'default_callback': default_ntp_server, + 'options_callback': ntp_server_options, + 'mapping_to': 'ntp_server' + } + }, + 'dns_servers': { + '_self': { + 'is_required': True, + 'field': 'general_list', + 'default_callback': default_dns_servers, + 'options_callback': dns_servers_options, + 'mapping_to': 'nameservers' + } + }, + 'domain': { + '_self': { + 'field': 'general', + 'is_required' : True, + 'default_callback': default_domain, + 'options_callback': domain_options, + } + }, + 'search_path': { + '_self': { + 'field': 'general_list', + 'default_callback': default_search_path, + 'options_callback': search_path_options, + 'mapping_to': 'search_path' + } + }, + 'default_gateway': { + '_self': { + 'is_required': True, + 'field': 'ip', + 'default_callback': default_gateway, + 'mapping_to': 'gateway' + } + }, + 'local_repo': { + '_self': { + 'field': 'general', + 'default_callback': default_localrepo, + 'mapping_to': 'local_repo' + } + } + }, + 'server_credentials': { + '_self': { + 'required_in_whole_config': True, + 'mapping_to': 'server_credentials' + }, + 'username': { + '_self': { + 'is_required': True, + 'default_value': 'root', + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'default_value': 'root', + 'field': 'password', + 'mapping_to': 'password' + } + } + }, + 'partition': { + '_self': { + 'required_in_whole_config': True, + 'options': ['/boot', 'swap', '/var', '/home'], + 'mapping_to': 'partition' + }, + '$partition': { + '_self': { + 'validator': is_valid_partition, + 'mapping_to': '$partition' + }, + 'max_size': { + '_self': { + 'field': 'size', + 'mapping_to': 'max_vol_size' + }, + }, + 'percentage': { + '_self': { + 'field': 'percentage', + 'default_value': 10, + 'mapping_to': 'vol_percentage' + } + }, + 'size': { + '_self': { + 'field': 'size', + 'default_value': '1G', + 'mapping_to': 'vol_size' + }, + } + } + } +} diff --git a/conf/package_field/anytype.conf b/conf/package_field/anytype.conf new file mode 100644 index 00000000..dd65c593 --- /dev/null +++ b/conf/package_field/anytype.conf @@ -0,0 +1,2 @@ +NAME = 'anytype' +FIELD_TYPE = object diff --git a/conf/package_field/dns.conf b/conf/package_field/dns.conf new file mode 100644 index 00000000..b97b1544 --- /dev/null +++ b/conf/package_field/dns.conf @@ -0,0 +1,2 @@ +NAME = 'dns' +VALIDATOR = is_valid_dns diff --git a/conf/package_field/gateway.conf b/conf/package_field/gateway.conf new file mode 100644 index 00000000..f9a3139e --- /dev/null +++ b/conf/package_field/gateway.conf @@ -0,0 +1,2 @@ +NAME = 'gateway' +VALIDATOR = is_valid_gateway diff --git a/conf/package_field/general.conf b/conf/package_field/general.conf new file mode 100644 index 00000000..4d8cb371 --- /dev/null +++ b/conf/package_field/general.conf @@ -0,0 +1 @@ +NAME = 'general' diff --git a/conf/package_field/integer.conf b/conf/package_field/integer.conf new file mode 100644 index 00000000..45f000e3 --- /dev/null +++ b/conf/package_field/integer.conf @@ -0,0 +1,2 @@ +NAME = 'integer' +FIELD_TYPE = int diff --git a/conf/package_field/ip.conf b/conf/package_field/ip.conf new file mode 100644 index 00000000..0389cef9 --- /dev/null +++ b/conf/package_field/ip.conf @@ -0,0 +1,2 @@ +NAME = 'ip address' +VALIDATOR = is_valid_ip diff --git a/conf/package_field/netmask.conf b/conf/package_field/netmask.conf new file mode 100644 index 00000000..2dab8690 --- /dev/null +++ b/conf/package_field/netmask.conf @@ -0,0 +1,2 @@ +NAME = 'netmask' +VALIDATOR = is_valid_netmask diff --git a/conf/package_field/network.conf b/conf/package_field/network.conf new file mode 100644 index 00000000..c7f627f3 --- /dev/null +++ b/conf/package_field/network.conf @@ -0,0 +1,2 @@ +NAME = 'network' +VALIDATOR = is_valid_network diff --git a/conf/package_field/password.conf b/conf/package_field/password.conf new file mode 100644 index 00000000..bdb026e5 --- /dev/null +++ b/conf/package_field/password.conf @@ -0,0 +1,3 @@ +NAME = 'password' +VALIDATOR = is_valid_password +DESCRIPTION = 'password' diff --git a/conf/package_field/percentage.conf b/conf/package_field/percentage.conf new file mode 100644 index 00000000..2e61c899 --- /dev/null +++ b/conf/package_field/percentage.conf @@ -0,0 +1,3 @@ +NAME = 'percentage' +FIELD_TYPE = int +VALIDATOR = is_valid_percentage diff --git a/conf/package_field/roles.conf b/conf/package_field/roles.conf new file mode 100644 index 00000000..a0319ed2 --- /dev/null +++ b/conf/package_field/roles.conf @@ -0,0 +1,3 @@ +NAME = 'roles' +FIELD_TYPE = list +DESCRIPTION = 'roles' diff --git a/conf/package_field/size.conf b/conf/package_field/size.conf new file mode 100644 index 00000000..b3b686e8 --- /dev/null +++ b/conf/package_field/size.conf @@ -0,0 +1,2 @@ +NAME = 'size' +VALIDATOR = is_valid_size diff --git a/conf/package_field/username.conf b/conf/package_field/username.conf new file mode 100644 index 00000000..79907b1a --- /dev/null +++ b/conf/package_field/username.conf @@ -0,0 +1,3 @@ +NAME = 'username' +VALIDATOR = is_valid_username +DESCRIPTION = 'username' diff --git a/conf/package_installer/chef-icehouse.conf b/conf/package_installer/chef-icehouse.conf new file mode 100644 index 00000000..378117f5 --- /dev/null +++ b/conf/package_installer/chef-icehouse.conf @@ -0,0 +1,10 @@ +NAME = 'chef_installer' +INSTANCE_NAME = 'chef_installer' +SETTINGS = { + 'chef_url': 'https://$chef_ip', + 'chef_server_ip': '$chef_ip', + 'chef_server_dns': '$chef_hostname', + 'key_dir': '', + 'client_name': '', + 'databags': [] +} diff --git a/conf/package_metadata/ceph.conf b/conf/package_metadata/ceph.conf new file mode 100644 index 00000000..e46427d6 --- /dev/null +++ b/conf/package_metadata/ceph.conf @@ -0,0 +1,79 @@ +ADAPTER = 'ceph' +METADATA = { + 'global_config': { + '_self': { + 'required_in_whole_config': True, + 'mapping_to': 'global' + }, + 'osd_pool_pg_num': { + '_self': { + 'is_required': True, + 'field': 'general', + 'default_value': '1024', + 'mapping_to': 'osd_pool_pg_num' + } + }, + 'osd_pool_pgp_num': { + '_self': { + 'is_required': True, + 'field': 'general', + 'default_value': '1024', + 'mapping_to': 'osd_pool_pgp_num' + } + }, + 'osd_pool_size': { + '_self': { + 'is_required': True, + 'field': 'general', + 'default_value': '3', + 'mapping_to': 'osd_pool_size' + } + } + }, + 'osd_config': { + '_self': { + 'mapping_to': 'osd_config' + }, + 'journal_size': { + '_self': { + 'field': 'general', + 'default_value': '10000', + 'mapping_to': 'journal_size' + } + }, + 'op_threads': { + '_self': { + 'field': 'integer', + 'default_value': 10, + 'mapping_to': 'op_threads' + } + } + }, + "osd_devices": { + '_self': { + 'mapping_to': 'osd_devices' + }, + '$device': { + '_self': { + 'validator': is_valid_partition + }, + 'journal': { + '_self': { + 'field': 'general', + 'mapping_to': 'journal' + } + } + } + }, + 'network_mapping': { + '_self': { + 'required_in_whole_config': True + }, + '$interface_type': { + '_self': { + 'is_required': True, + 'field': 'general' + } + } + } +} diff --git a/conf/package_metadata/ceph_openstack.conf b/conf/package_metadata/ceph_openstack.conf new file mode 100644 index 00000000..b1cd7250 --- /dev/null +++ b/conf/package_metadata/ceph_openstack.conf @@ -0,0 +1,99 @@ +ADAPTER = 'ceph_openstack_icehouse' +METADATA = { + 'ceph_config': { + '_self': { + 'required_in_whole_config': True + }, + 'global_config': { + '_self': { + 'required_in_whole_config': True, + }, + 'osd_pool_pg_num': { + '_self': { + 'is_required': True, + 'field': 'general', + 'default_value': '1024', + 'mapping_to': 'osd_pool_pg_num' + } + }, + 'osd_pool_pgp_num': { + '_self': { + 'is_required': True, + 'field': 'general', + 'default_value': '1024', + 'mapping_to': 'osd_pool_pgp_num' + } + }, + 'osd_pool_size': { + '_self': { + 'is_required': True, + 'field': 'general', + 'default_value': '3', + 'mapping_to': 'osd_pool_size' + } + } + }, + 'osd_config': { + '_self': { + }, + 'journal_size': { + '_self': { + 'field': 'general', + 'default_value': '10000', + 'mapping_to': 'journal_size' + } + }, + 'op_threads': { + '_self': { + 'field': 'integer', + 'default_value': 10, + 'mapping_to': 'op_threads' + } + } + }, + "osd_devices": { + '_self': { + 'mapping_to': 'osd_devices' + }, + '$device': { + '_self': { + 'validator': is_valid_partition + }, + 'journal': { + '_self': { + 'field': 'general', + 'mapping_to': 'journal' + } + } + } + } + }, + 'network_mapping': { + '_self': { + 'required_in_whole_config': True, + 'key_extensions': { + '$interface_type': ['public_network', 'cluster_network'] + } + }, + '$interface_type': { + '_self': { + 'required_in_whole_config': True, + 'field': 'anytype', + 'autofill_callback': autofill_network_mapping, + 'mapping_to': '$interface_type' + }, + 'interface': { + '_self': { + 'is_required': True, + 'field': 'general', + } + }, + 'subnet': { + '_self': { + 'is_required': False, + 'field': 'general' + } + } + } + } +} diff --git a/conf/package_metadata/openstack.conf b/conf/package_metadata/openstack.conf new file mode 100644 index 00000000..e357e983 --- /dev/null +++ b/conf/package_metadata/openstack.conf @@ -0,0 +1,93 @@ +ADAPTER = 'openstack' +METADATA = { + 'security': { + '_self': { + 'required_in_whole_config': True, + }, + 'service_credentials': { + '_self': { + 'required_in_whole_config': True, + 'key_extensions': { + '$service': ['image', 'compute', 'dashboard', 'identity', 'metering', 'rabbitmq', 'volume', 'mysql'] + }, + 'mapping_to': 'service_credentials' + }, + '$service': { + '_self': { + 'required_in_whole_config': True, + 'mapping_to': '$service' + }, + 'username': { + '_self': { + 'is_required': True, + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'field': 'password', + 'mapping_to': 'password' + } + } + } + }, + 'console_credentials': { + '_self': { + 'required_in_whole_config': True, + 'key_extensions': { + '$console': ['admin', 'compute', 'dashboard', 'image', 'metering', 'network', 'object-store', 'volume'] + } + }, + '$console': { + '_self': { + 'required_in_whole_config': True, + 'mapping_to': '$console' + }, + 'username': { + '_self': { + 'is_required': True, + 'field': 'username', + 'mapping_to': 'username' + } + }, + 'password': { + '_self': { + 'is_required': True, + 'field': 'password', + 'mapping_to': 'password' + } + } + } + } + }, + 'network_mapping': { + '_self': { + 'required_in_whole_config': True, + 'key_extensions': { + '$interface_type': ['management', 'external', 'storage', 'tenant'] + } + }, + '$interface_type': { + '_self': { + 'required_in_whole_config': True, + 'field': 'anytype', + 'autofill_callback': autofill_network_mapping, + 'mapping_to': '$interface_type' + }, + 'interface': { + '_self': { + 'is_required': True, + 'field': 'general', + } + }, + 'subnet': { + '_self': { + 'is_required': False, + 'field': 'general' + } + } + } + } +} diff --git a/conf/role/ceph.conf b/conf/role/ceph.conf new file mode 100644 index 00000000..c89cfa47 --- /dev/null +++ b/conf/role/ceph.conf @@ -0,0 +1,21 @@ +ADAPTER_NAME = 'ceph_firefly' +ROLES = [ +{ + 'role': 'ceph-mon', + 'display_name': 'Ceph Mon', + 'description': 'ceph monitor server' +}, { + 'role': 'ceph-osd', + 'display_name': 'Ceph OSD', + 'description': 'ceph storage server' +}, { + 'role': 'ceph-mds', + 'display_name': 'Ceph MDS', + 'description': 'ceph metadata server', + 'optional': True +}, { + 'role': 'ceph-radosgw', + 'display_name': 'Ceph Radosgw', + 'description': 'ceph object gateway', + 'optional': True +}] diff --git a/conf/role/chef_ceph_openstack.conf b/conf/role/chef_ceph_openstack.conf new file mode 100644 index 00000000..1b3da0e0 --- /dev/null +++ b/conf/role/chef_ceph_openstack.conf @@ -0,0 +1,81 @@ +ADAPTER_NAME = 'ceph_openstack_icehouse' +ROLES = [{ + 'role': 'os-ceph-compute-worker', + 'display_name': 'compute node', + 'description': 'compute node' +}, { + 'role': 'os-network', + 'display_name': 'network node', + 'description': 'network node including network server' +}, { + 'role': 'os-network-server', + 'display_name': 'network server node', + 'description': 'network server node' +}, { + 'role': 'os-network-worker', + 'display_name': 'network node', + 'description': 'network node including network server' +}, { + 'role': 'os-ceph-block-storage-controller', + 'display_name': 'storage controller node', + 'description': 'storage controller node' +}, { + 'role': 'os-block-storage-volume', + 'display_name': 'storage node', + 'description': 'storage node' +}, { + 'role': 'os-ceph-image', + 'display_name': 'image node', + 'description': 'image node' +}, { + 'role': 'os-compute-vncproxy', + 'display_name': 'vnc proxy node', + 'description': 'vnc proxy node' +}, { + 'role': 'os-compute-controller', + 'display_name': 'controller-only node', + 'description': 'controller node for nova APIs' +}, { + 'role': 'os-ceph-controller', + 'display_name': 'controller node', + 'description': 'controller node for nova APIs' +},{ + 'role': 'os-ops-messaging', + 'display_name': 'message queue node', + 'description': 'message queue node' +}, { + 'role': 'os-ops-database', + 'display_name': 'database node', + 'description': 'database node' +}, { + 'role': 'os-identity', + 'display_name': 'keystone node', + 'description': 'keystone node' +}, { + 'role': 'os-dashboard', + 'display_name': 'dashboard node', + 'description': 'dashboard node' +}, { + 'role': 'os-ha', + 'display_name': 'ha proxy node', + 'description': 'ha proxy node', + 'optional': True +}, { + 'role': 'ceph-mds', + 'display_name': 'ceph metadata server', + 'description': 'ceph metadata server', + 'optional': True +}, { + 'role': 'ceph-os-mon', + 'display_name': 'ceph monitor server', + 'description': 'ceph monitor server' +}, { + 'role': 'ceph-osd', + 'display_name': 'ceph storage server', + 'description': 'ceph storage server' +}, { + 'role': 'ceph-os-radosgw', + 'display_name': 'ceph object gateway', + 'description': 'ceph object gateway', + 'optional': True +}] diff --git a/conf/role/openstack_chef.conf b/conf/role/openstack_chef.conf new file mode 100644 index 00000000..b8da4f25 --- /dev/null +++ b/conf/role/openstack_chef.conf @@ -0,0 +1,69 @@ +ADAPTER_NAME = 'openstack_icehouse' +ROLES = [{ + 'role': 'os-compute-worker', + 'display_name': 'compute node', + 'description': 'compute node' +}, { + 'role': 'os-network', + 'display_name': 'network node', + 'description': 'network node including network server' +}, { + 'role': 'os-network-server', + 'display_name': 'network server node', + 'description': 'network server node' +}, { + 'role': 'os-network-worker', + 'display_name': 'network node', + 'description': 'network node including network server' +}, { + 'role': 'os-block-storage-controller', + 'display_name': 'storage controller node', + 'description': 'storage controller node' +}, { + 'role': 'os-block-storage-volume', + 'display_name': 'storage node', + 'description': 'storage node', + 'optional': True +}, { + 'role': 'os-image', + 'display_name': 'image node', + 'description': 'image node' +}, { + 'role': 'os-compute-vncproxy', + 'display_name': 'vnc proxy node', + 'description': 'vnc proxy node' +}, { + 'role': 'os-controller', + 'display_name': 'controller node', + 'description': 'controller node including identity, dashboard, network server, and block stroage controller services' +}, { + 'role': 'os-compute-controller', + 'display_name': 'Nova controller node', + 'description': 'controller node for nova APIs' +}, { + 'role': 'os-ops-messaging', + 'display_name': 'message queue node', + 'description': 'message queue node' +}, { + 'role': 'os-ops-database', + 'display_name': 'database node', + 'description': 'database node' +}, { + 'role': 'os-identity', + 'display_name': 'keystone node', + 'description': 'keystone node' +}, { + 'role': 'os-dashboard', + 'display_name': 'dashboard node', + 'description': 'dashboard node' +}, { + 'role': 'ha-proxy', + 'display_name': 'ha proxy node', + 'description': 'ha proxy node', + 'optional': True +}, { + 'role': 'allinone-compute', + 'display_name': 'all in one compute', + 'description': 'all in one compute', + 'optional': True +}] diff --git a/conf/setting b/conf/setting index ee5c10fc..8e54e329 100644 --- a/conf/setting +++ b/conf/setting @@ -1,27 +1,18 @@ -PROVIDER_NAME = 'mix' -GLOBAL_CONFIG_PROVIDER = 'file' -CLUSTER_CONFIG_PROVIDER = 'db' -HOST_CONFIG_PROVIDER = 'db' CONFIG_DIR = '/etc/compass' -GLOBAL_CONFIG_FILENAME = 'global_config' -CONFIG_FILE_FORMAT = 'python' DATABASE_TYPE = 'mysql' -DATABASE_FILE = '/opt/compass/db/app.db' DATABASE_USER = 'root' DATABASE_PASSWORD = 'root' DATABASE_SERVER = '127.0.0.1:3306' -DATABASE_NAME = 'db' -SQLALCHEMY_DATABASE_URI = 'mysql://%s:%s@%s/%s' % (DATABASE_USER, DATABASE_PASSWORD, DATABASE_SERVER, DATABASE_NAME) -OS_INSTALLER = 'cobbler' -COBBLER_INSTALLER_URL = 'http://localhost/cobbler_api' -COBBLER_INSTALLER_TOKEN = ['cobbler', 'cobbler'] -PACKAGE_INSTALLER = 'chef' -CHEF_INSTALLER_URL = 'https://localhost' -CHEF_GLOBAL_DATABAG_NAME = 'env_default' -INSTALLATION_LOGDIR = '/var/log/cobbler/anamon' -DEFAULT_LOGLEVEL = 'debug' +DATABASE_NAME = 'compass' +SQLALCHEMY_DATABASE_URI = '%s://%s:%s@%s/%s' % (DATABASE_TYPE, DATABASE_USER, DATABASE_PASSWORD, DATABASE_SERVER, DATABASE_NAME) +SQLALCHEMY_DATABASE_POOL_TYPE = 'instant' +INSTALLATION_LOGDIR = { + 'CobblerInstaller': '/var/log/cobbler/anamon', + 'ChefInstaller': '/var/log/chef' +} +DEFAULT_LOGLEVEL = 'info' DEFAULT_LOGDIR = '/var/log/compass' -DEFAULT_LOGINTERVAL = 1 +DEFAULT_LOGINTERVAL = 6 DEFAULT_LOGINTERVAL_UNIT = 'h' DEFAULT_LOGFORMAT = '%(asctime)s - %(filename)s - %(lineno)d - %(levelname)s - %(message)s' WEB_LOGFILE = 'compass.log' @@ -32,3 +23,11 @@ PROGRESS_UPDATE_INTERVAL=30 POLLSWITCH_INTERVAL=60 SWITCHES = [ ] +TMPL_DIR = '/etc/compass/templates' +COMPASS_SUPPORTED_PROXY = 'http://$ipaddr:3128' +COMPASS_SUPPORTED_DEFAULT_NOPROXY = ['127.0.0.1','$ipaddr','$hostname'] +COMPASS_SUPPORTED_NTP_SERVER = '$ipaddr' +COMPASS_SUPPORTED_DNS_SERVERS = ['$ipaddr'] +COMPASS_SUPPORTED_DOMAINS = ['$domains'] +COMPASS_SUPPORTED_DEFAULT_GATEWAY = '$gateway' +COMPASS_SUPPORTED_LOCAL_REPO = 'http://$ipaddr' diff --git a/conf/switch_list/switch_list.conf b/conf/switch_list/switch_list.conf new file mode 100644 index 00000000..21c46c0a --- /dev/null +++ b/conf/switch_list/switch_list.conf @@ -0,0 +1,3 @@ +SWITCH_LIST = [ + '127.0.0.1' +] diff --git a/conf/templates/chef_installer/ceph_firefly/environments/ceph_firefly.tmpl b/conf/templates/chef_installer/ceph_firefly/environments/ceph_firefly.tmpl new file mode 100644 index 00000000..9760cb03 --- /dev/null +++ b/conf/templates/chef_installer/ceph_firefly/environments/ceph_firefly.tmpl @@ -0,0 +1,69 @@ +#import simplejson as json +#import uuid +#from copy import deepcopy + +#set fsid = str(uuid.uuid4()) +#set public_network_subnet = $network_mapping.public_network.subnet +#set cluster_network_subnet = $network_mapping.cluster_network.subnet + +#set osd_pool_pg_num = $getVar('osd_pool_pg_num', '1024') +#set osd_pool_pgp_num = $getVar('osd_pool_pgp_num', '1024') +#set osd_pool_size = $getVar('osd_pool_size', '3') + +#set journal_size = $getVar('journal_size', '10000') +#set osd_op_threads = $getVar('op_threads', 10) + +#set devices = [] +#if not $getVar('osd_devices', {}) + #set devices_info = $osd_devices + #set devices_num = len($devices_info) + #set devices = [x for x in range($devices_num)] + #set index = 0 + #for device, config in $devices_info.iteritems() + #set temp = deepcopy($config) + #set temp["device"] = $device + #set devices[index] = $temp + #set index = $index + 1 + #end for +#end if +#set devices = json.dumps($devices, encoding='utf-8') + +{ + "name": "ceph_env", + "description": "", + "cookbook_versions": { + "ceph": "~> 0.2.1" + }, + "json_class": "Chef::Environment", + "chef_type": "environment", + "default_attributes": { + "ceph": { + "config": { + "fsid": "$fsid", + "global": { + "public network": "$public_network_subnet", + "cluster network": "$cluster_network_subnet", + "auth cluster required": "cephx", + "auth service required": "cephx", + "auth client required": "cephx", + "osd pool default pg num": "$osd_pool_pg_num", + "osd pool default pgp num": "$osd_pool_pgp_num", + "osd pool default size": "$osd_pool_size" + }, + "mon": { + "debug mon": "20", + "debug paxos": "1/5", + "debug auth": "2" + }, + "osd": { + "osd journal size": "$journal_size", + "filestore xattr use omap": true, + "osd op threads": $osd_op_threads + } + }, + "osd_devices": $devices + } + }, + "override_attributes": { + } +} diff --git a/conf/templates/chef_installer/ceph_openstack_icehouse/environments/ha_multinodes.tmpl b/conf/templates/chef_installer/ceph_openstack_icehouse/environments/ha_multinodes.tmpl new file mode 100644 index 00000000..816aa6f8 --- /dev/null +++ b/conf/templates/chef_installer/ceph_openstack_icehouse/environments/ha_multinodes.tmpl @@ -0,0 +1,407 @@ +#set ha_vip = $getVar('ha_vip') +#set ha_proxy_role = $getVar('os_ha', None) +#set ha_proxy_nic = $ha_proxy_role.management.interface + +#set controller_role = $get_role('os_compute_controller', $getVar('os_ceph_controller', None)) + +## Contoller node management IP/interface +#set controller_ip = $controller_role.management.ip +#set controller_nic = $controller_role.management.interface + +## Compute node management IP/interface +#set compute_role = $getVar('os_compute_worker', None) +#set compute_nic = $compute_role.management.interface + +## Network server/worker node IP/interface +#set network_server_role = $get_role('os_network_server', [$controller_role]) +#set network_worker_role = $get_role('os_network_worker', [$compute_role]) + +#set network_server_ip = $network_server_role.management.ip +#set network_server_nic = $network_server_role.management.interface + +## Network worker node management IP/interface +#set network_worker_ip = $network_worker_role.management.ip +#set network_worker_nic = $network_worker_role.management.interface +#set network_worker_public_nic = $network_worker_role.external.interface +#set network_worker_tenant_nic = $network_worker_role.tenant.interface + +## Database node management IP +#set db_role = $get_role('os_ops_database', $controller_role) +#set db_ip = $db_role.management.ip +#set db_nic = $db_role.management.interface + +## Message queue node management IP/interface +#set msg_queue_role = $get_role('os_ops_messaging', $controller_role) +#set msg_queue_ip = $msg_queue_role.management.ip + +## Identity (keystone) node IP/interface +#set identity_role = $get_role('os_identity', $controller_role) +#set identity_ip = $identity_role.management.ip +#set identity_nic = $identity_role.management.interface + +## Glance node management IP/interface +#set glance_role = $get_role('os_ceph_image', $controller_role) +#set glance_ip = $glance_role.management.ip +#set glance_nic = $glance_role.management.interface + +## Cinder node management IP/interface +#set cinder_role = $get_role('os_block_storage_controller', $controller_role) +#set cinder_controller_ip = $cinder_role.management.ip +#set cinder_controller_nic = $cinder_role.management.interface + +## Dashboard node management IP/interface +#set dash_role = $get_role('os_dashboard', $controller_role) +#set dash_ip = $dash_role.management.ip + +#def get_role($role_name, $default_roles=None) + #set target_role = $getVar($role_name, None) + #if $target_role is None and $default_roles is not None + #if isinstance($default_roles, list) + #for $role in $default_roles + #if $role is not None + #set target_role = $role + #break + #end if + #end for + #else + #set target_role = $default_roles + #end if + #end if + #return $target_role +#end def +{ + "name": "testing", + "description": "Environment used in Ceph and Openstack Icehouse", + "cookbook_versions": { + }, + "json_class": "Chef::Environment", + "chef_type": "environment", + "default_attributes": { + "ceph": { + "keystone environment": "openstack-ceph", + "radosgw domain": "test-ceph1", + "is_keystone_integration": true, + "config": { + "fsid": "82850ab3-f2b7-4eed-b6c2-29178a005750", + "global": { + "public network": "10.145.88.0/23", + "cluster network": "172.16.100.0/24", + "osd pool default pg num": "512", + "osd pool default pgp num": "512", + "osd pool default size": "2", + "max open files": "131072" + }, + "osd": { + "osd journal size": "10000", + "filestore xattr use omap": true, + "osd mkfs type": "xfs", + "osd mount options xfs": "rw,noatime,inode64,logbsize=256k,delaylog", + "osd mkfs options xfs": "-f -i size=2048", + "filestore max inline xattr size": "254", + "filestore max inline xattrs": "6", + "osd_op_threads": "20", + "filestore_queue_max_ops": "500", + "filestore_queue_committing_max_ops": "5000", + "journal_max_write_entries": "1000", + "journal_queue_max_ops": "3000", + "objecter_inflight_ops": "10240", + "filestore_queue_max_bytes": "1048576000", + "filestore_queue_committing_max_bytes": "1048576000", + "journal_max_write_bytes": "1048576000", + "journal_queue_max_bytes": "1048576000", + "ms_dispatch_throttle_bytes": "1048576000", + "objecter_infilght_op_bytes": "1048576000", + "filestore_max_sync_interval": "10", + "filestore_flusher": "false", + "filestore_flush_min": "0", + "filestore_sync_flush": true + } + } + }, + "haproxy": { + "incoming_address": "$ha_vip" + }, + "keepalived": { + "vip": { + "ipaddress": "$ha_vip", + "interface": "$ha_proxy_nic" + } + }, + "mysql": { + "server_root_password": "test", + "server_debian_password": "root", + "server_repl_password": "root", + "allow_remote_root": true, + "root_network_acl": "%" + }, + "collectd": { + "server": { + "host": "metrics", + "port": "4242", + "protocol": "tcp" + } + }, + "openstack": { + "auth": { + "validate_certs": false + }, + "block-storage": { + "syslog": { + "use": false + }, + "api": { + "ratelimit": "False" + }, + "debug": true, + "volume": { + "driver": "cinder.volume.drivers.rbd.RBDDriver" + }, + "rbd_pool": "volumes", + "rbd_secret_uuid": "8b8441cc-949c-43ce-8bbc-f50e3bfeeaee", + "rbd_ceph_conf": "/etc/ceph/ceph.conf", + "rbd_flatten_volume_from_snapshot": false, + "rbd_max_clone_depth": 5, + "glance_api_version": 2 + }, + "dashboard": { + "use_ssl": "false" + }, + "compute": { + "syslog": { + "use": false + }, + "libvirt": { + "bind_interface": "$compute_nic", + "images_type": "rbd", + "images_rbd_pool": "vms" + }, + "novnc_proxy": { + "bind_interface": "$compute_nic" + }, + "xvpvnc_proxy": { + "bind_interface": "$compute_nic" + }, + "ratelimit": { + "api": { + "enabled": false + }, + "volume": { + "enabled": false + } + }, + "network": { + "service_type": "neutron" + } + }, + "network": { + "verbose": "True", + "debug": "True", + "service_plugins": [ + "router" + ], + "ml2": { + "type_drivers": "gre", + "tenant_network_types": "gre", + "tunnel_id_ranges": "1:1000", + "enable_security_group": "True" + }, + "openvswitch": { + "tenant_network_type": "gre", + "enable_tunneling": "True", + "tunnel_id_ranges": "1:1000", + "bind_interface": "$network_worker_tenant_nic" + }, + "l3": { + "external_network_bridge_interface": "$network_worker_public_nic" + } + }, + "db": { + "bind_interface": "$db_nic", + "compute": { + "host": "$db_ip" + }, + "identity": { + "host": "$db_ip" + }, + "image": { + "host": "$db_ip" + }, + "network": { + "host": "$db_ip" + }, + "volume": { + "host": "$db_ip" + }, + "dashboard": { + "host": "$db_ip" + } + }, + "developer_mode": true, + "endpoints": { + "db": { + "host": "$db_ip" + }, + "mq": { + "host": "$msg_queue_ip" + }, + "compute-api": { + "host": "$ha_vip", + "scheme": "http", + "port": "8774", + "path": "/v2/%(tenant_id)s" + }, + "compute-api-bind": { + "bind_interface": "$controller_nic" + }, + "compute-ec2-admin": { + "host": "$ha_vip", + "scheme": "http", + "port": "8773", + "path": "/services/Admin" + }, + "compute-ec2-api": { + "host": "$ha_vip", + "scheme": "http", + "port": "8773", + "path": "/services/Cloud" + }, + "compute-novnc": { + "host": "$ha_vip", + "scheme": "http", + "port": "6080", + "path": "/vnc_auto.html" + }, + "compute-novnc-bind": { + "bind_interface": "$controller_nic" + }, + "compute-vnc-bind": { + "bind_interface" : "$compute_nic" + }, + "vnc_bind": { + "bind_interface": "$controller_nic" + }, + "image-api": { + "host": "$ha_vip", + "scheme": "http", + "port": "9292", + "path": "/v2" + }, + "image-api-bind": { + "bind_interface": "$glance_nic" + }, + "image-registry": { + "bind_interface": "$glance_nic" + }, + "image-registry-bind": { + "bind_interface": "$glance_nic" + }, + "identity-bind": { + "bind_interface": "$identity_nic" + }, + "identity-api": { + "host": "$ha_vip", + "scheme": "http", + "port": "5000", + "path": "/v2.0" + }, + "identity-admin": { + "host": "$ha_vip", + "scheme": "http", + "port": "35357", + "path": "/v2.0" + }, + "block-storage-api": { + "host": "$ha_vip", + "scheme": "http", + "port": "8776", + "path": "/v1/%(tenant_id)s" + }, + "block-storage-api-bind": { + "bind_interface": "$cinder_controller_nic" + }, + "network-api": { + "host": "$ha_vip", + "scheme": "http", + "port": "9696", + "path": "" + }, + "network-api-bind": { + "bind_interface": "$network_server_nic" + } + }, + "identity": { + "admin_user": "admin", + "bind_interface": "$identity_nic", + "catalog": { + "backend": "sql" + }, + "debug": true, + "roles": [ + "admin", + "member" + ], + "syslog": { + "use": false + }, + "tenants": [ + "admin", + "service", + "demo" + ], + "token": { + "backend": "sql" + }, + "users": { + "admin": { + "password": "admin", + "default_tenant": "admin", + "roles": { + "admin": [ + "admin" + ] + } + }, + "demo": { + "password": "demo", + "default_tenant": "demo", + "roles": { + "member": [ + "demo" + ] + } + } + } + }, + "image": { + "api": { + "bind_interface": "$glance_nic", + "default_store": "rbd" + }, + "debug": true, + "registry": { + "bind_interface": "$glance_nic" + }, + "syslog": { + "use": false + }, + "upload_image": { + "cirros": "http://download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img" + }, + "upload_images": [ + "cirros" + ] + }, + "memcached_servers": [ + "$identity_ip:11211" + ], + "mq": { + "user": "guest", + "password": "test", + "vhost": "/nova", + "network": { + "service_type": "rabbitmq" + } + } + } + } +} diff --git a/conf/templates/chef_installer/ceph_openstack_icehouse/environments/multinodes.tmpl b/conf/templates/chef_installer/ceph_openstack_icehouse/environments/multinodes.tmpl new file mode 100644 index 00000000..485c9d79 --- /dev/null +++ b/conf/templates/chef_installer/ceph_openstack_icehouse/environments/multinodes.tmpl @@ -0,0 +1,463 @@ +#import simplejson as json +#import uuid +#from copy import deepcopy + +## Ceph cluster config +#set fsid = str(uuid.uuid4()) +#set rbd_secret_uuid = str(uuid.uuid4()) + +#set ceph_osd_role = $getVar('ceph_osd', None) +#set public_network_subnet = $ceph_osd_role.public_network.subnet +#set cluster_network_subnet = $ceph_osd_role.cluster_network.subnet + +#set osd_pool_pg_num = $getVar('osd_pool_pg_num', '1024') +#set osd_pool_pgp_num = $getVar('osd_pool_pgp_num', '1024') +#set osd_pool_size = $getVar('osd_pool_size', '3') + +#set journal_size = $getVar('journal_size', '10000') +#set osd_op_threads = $getVar('op_threads', 10) + +#set devices = [] +#if $getVar('osd_devices', None) != None + #set devices_info = $osd_devices + #set devices_num = len($devices_info) + #set devices = [x for x in range($devices_num)] + #set index = 0 + #for device, config in $devices_info.iteritems() + #set temp = deepcopy($config) + #set temp["device"] = $device + #set devices[index] = $temp + #set index = $index + 1 + #end for +#end if +#set devices = json.dumps($devices, encoding='utf-8') + +#set radosgw_role = $getVar('ceph_os_radosgw', '') +#set radosgw_domain = '' +#if $radosgw_role != '' + #set radosgw_domain = $radosgw_role.hostname +#end if + + +## OpenStack config +## Contoller node management IP/interface +#set controller_role = $get_role('os_compute_controller', $getVar('os_ceph_controller', None)) +#set controller_ip = $controller_role.management.ip +#set controller_nic = $controller_role.management.interface + +## Compute node management IP/interface +#set compute_role = $getVar('os_ceph_compute_worker', None) +#set compute_nic = $compute_role.management.interface + +## Network server/worker node IP/interface +#set network = $getVar('os_network', None) +#set network_server_role = $get_role('os_network_server', [$network, $controller_role]) +#set network_worker_role = $get_role('os_network_worker', [$network, $compute_role]) + +#set network_server_ip = $network_server_role.management.ip +#set network_server_nic = $network_server_role.management.interface + +## Network worker node management IP/interface +#set network_worker_ip = $network_worker_role.management.ip +#set network_worker_nic = $network_worker_role.management.interface +#set network_worker_public_nic = $network_worker_role.external.interface +#set network_worker_tenant_nic = $network_worker_role.tenant.interface + +## Database node management IP +#set db_role = $get_role('os_ops_database', $controller_role) +#set db_ip = $db_role.management.ip +#set db_nic = $db_role.management.interface + +## Message queue node management IP/interface +#set msg_queue_role = $get_role('os_ops_messaging', $controller_role) +#set msg_queue_ip = $msg_queue_role.management.ip + +## Identity (keystone) node IP/interface +#set identity_role = $get_role('os_identity', $controller_role) +#set identity_ip = $identity_role.management.ip +#set identity_nic = $identity_role.management.interface + +## Glance node management IP/interface +#set glance_role = $get_role('os_ceph_image', $controller_role) +#set glance_ip = $glance_role.management.ip +#set glance_nic = $glance_role.management.interface + +## Cinder node management IP/interface +#set cinder_role = $get_role('os_ceph_block_storage_controller', $controller_role) +#set cinder_controller_ip = $cinder_role.management.ip +#set cinder_controller_nic = $cinder_role.management.interface + +## Dashboard node management IP/interface +#set dash_role = $get_role('os_dashboard', $controller_role) +#set dash_ip = $dash_role.management.ip + +#def get_role($role_name, $default_roles=None) + #set target_role = $getVar($role_name, None) + #if $target_role is None and $default_roles is not None + #if isinstance($default_roles, list) + #for $role in $default_roles + #if $role is not None + #set target_role = $role + #break + #end if + #end for + #else + #set target_role = $default_roles + #end if + #end if + #return $target_role +#end def +{ + "name": "testing", + "description": "Environment used in testing the upstream cookbooks and reference Chef repository", + "cookbook_versions": { + }, + "json_class": "Chef::Environment", + "chef_type": "environment", + "default_attributes": { + "ceph": { + "keystone environment": "openstack-ceph", + "radosgw domain": "$radosgw_domain", + "config": { + "fsid": "$fsid", + "global": { + "public network": "$public_network_subnet", + "cluster network": "$cluster_network_subnet", + "osd pool default pg num": "$osd_pool_pg_num", + "osd pool default pgp num": "$osd_pool_pgp_num", + "osd pool default size": "$osd_pool_size", + "max open files": "131072" + }, + "osd": { + "osd journal size": "$journal_size", + "filestore xattr use omap": true, + "osd mkfs type": "xfs", + "osd mount options xfs": "rw,noatime,inode64,logbsize=256k,delaylog", + "osd mkfs options xfs": "-f -i size=2048", + "filestore max inline xattr size": "254", + "filestore max inline xattrs": "6", + "osd_op_threads": "$osd_op_threads", + "filestore_queue_max_ops": "500", + "filestore_queue_committing_max_ops": "5000", + "journal_max_write_entries": "1000", + "journal_queue_max_ops": "3000", + "objecter_inflight_ops": "10240", + "filestore_queue_max_bytes": "1048576000", + "filestore_queue_committing_max_bytes": "1048576000", + "journal_max_write_bytes": "1048576000", + "journal_queue_max_bytes": "1048576000", + "ms_dispatch_throttle_bytes": "1048576000", + "objecter_infilght_op_bytes": "1048576000", + "filestore_max_sync_interval": "10", + "filestore_flusher": "false", + "filestore_flush_min": "0", + "filestore_sync_flush": true + } + }, + "osd_devices": $devices + }, + "mysql": { + "server_root_password": "test", + "server_debian_password": "root", + "server_repl_password": "root", + "allow_remote_root": true, + "root_network_acl": "%" + }, + "collectd": { + "server": { + "host": "metrics", + "port": "4242", + "protocol": "tcp" + } + }, + "openstack": { + "auth": { + "validate_certs": false + }, + "block-storage": { + "syslog": { + "use": false + }, + "api": { + "ratelimit": "False" + }, + "volume": { + "driver": "cinder.volume.drivers.rbd.RBDDriver" + }, + "debug": true, + "rbd_pool": "volumes", + "rbd_secret_uuid": "$rbd_secret_uuid", + "rbd_ceph_conf": "/etc/ceph/ceph.conf", + "rbd_flatten_volume_from_snapshot": false, + "rbd_max_clone_depth": 5, + "glance_api_version": 2 + }, + "dashboard": { + "use_ssl": "false" + }, + "compute": { + "syslog": { + "use": false + }, + "libvirt": { + "bind_interface": "$compute_nic", + "images_type": "rbd", + "images_rbd_pool": "vms" + }, + "novnc_proxy": { + "bind_interface": "$compute_nic" + }, + "xvpvnc_proxy": { + "bind_interface": "$compute_nic" + }, + "ratelimit": { + "api": { + "enabled": false + }, + "volume": { + "enabled": false + } + }, + "network": { + "service_type": "neutron" + } + }, + "network": { + "verbose": "True", + "debug": "True", + "service_plugins": [ + "router" + ], + "ml2": { + "type_drivers": "gre", + "tenant_network_types": "gre", + "tunnel_id_ranges": "1:1000", + "enable_security_group": "True" + }, + "openvswitch": { + "tenant_network_type": "gre", + "enable_tunneling": "True", + "tunnel_id_ranges": "1:1000", + "bind_interface": "$network_worker_tenant_nic" + }, + "l3": { + "external_network_bridge_interface": "$network_worker_public_nic" + } + }, + "db": { + "bind_interface": "$db_nic", + "compute": { + "host": "$db_ip" + }, + "identity": { + "host": "$db_ip" + }, + "image": { + "host": "$db_ip" + }, + "network": { + "host": "$db_ip" + }, + "volume": { + "host": "$db_ip" + }, + "dashboard": { + "host": "$db_ip" + }, + "telemetry": { + "host": "$db_ip" + }, + "orchestration": { + "host": "$db_ip" + } + }, + "developer_mode": true, + "endpoints": { + "db": { + "host": "$db_ip" + }, + "mq": { + "host": "$msg_queue_ip" + }, + "compute-api": { + "host": "$controller_ip", + "scheme": "http", + "port": "8774", + "path": "/v2/%(tenant_id)s" + }, + "compute-api-bind": { + "bind_interface": "$controller_nic" + }, + "compute-ec2-admin": { + "host": "$controller_ip", + "scheme": "http", + "port": "8773", + "path": "/services/Admin" + }, + "compute-ec2-api": { + "host": "$controller_ip", + "scheme": "http", + "port": "8773", + "path": "/services/Cloud" + }, + "compute-novnc": { + "host": "$controller_ip", + "scheme": "http", + "port": "6080", + "path": "/vnc_auto.html" + }, + "compute-novnc-bind": { + "bind_interface": "$controller_nic" + }, + "compute-vnc-bind": { + "bind_interface" : "$compute_nic" + }, + "vnc_bind": { + "bind_interface": "$controller_nic" + }, + "image-api": { + "host": "$glance_ip", + "scheme": "http", + "port": "9292", + "path": "/v2" + }, + "image-api-bind": { + "bind_interface": "$glance_nic" + }, + "image-registry": { + "host": "$glance_ip", + "scheme": "http", + "port": "9191", + "path": "/v2" + }, + "image-registry-bind": { + "bind_interface": "$glance_nic" + }, + "identity-bind": { + "bind_interface": "$identity_nic" + }, + "identity-api": { + "host": "$identity_ip", + "scheme": "http", + "port": "5000", + "path": "/v2.0" + }, + "identity-admin": { + "host": "$identity_ip", + "scheme": "http", + "port": "35357", + "path": "/v2.0" + }, + "block-storage-api": { + "host": "$cinder_controller_ip", + "scheme": "http", + "port": "8776", + "path": "/v1/%(tenant_id)s" + }, + "block-storage-api-bind": { + "bind_interface": "$cinder_controller_nic" + }, + "telemetry-api": { + "host": "$controller_ip", + "scheme": "http", + "port": "8777", + "path": "/v1" + }, + "network-api": { + "host": "$network_server_ip", + "scheme": "http", + "port": "9696", + "path": "" + }, + "network-api-bind": { + "bind_interface": "$network_server_nic" + }, + "orchestration-api": { + "host": "$controller_ip", + "scheme": "http", + "port": "8004", + "path": "/v1/%(tenant_id)s" + }, + "orchestration-api-cfn": { + "host": "$controller_ip", + "scheme": "http", + "port": "8000", + "path": "/v1" + } + }, + "identity": { + "admin_user": "admin", + "bind_interface": "$identity_nic", + "catalog": { + "backend": "sql" + }, + "debug": true, + "roles": [ + "admin", + "member" + ], + "syslog": { + "use": false + }, + "tenants": [ + "admin", + "service", + "demo" + ], + "token": { + "backend": "sql" + }, + "users": { + "admin": { + "password": "admin", + "default_tenant": "admin", + "roles": { + "admin": [ + "admin" + ] + } + }, + "demo": { + "password": "demo", + "default_tenant": "demo", + "roles": { + "member": [ + "demo" + ] + } + } + } + }, + "image": { + "api": { + "bind_interface": "$glance_nic", + "default_store": "rbd" + }, + "debug": true, + "registry": { + "bind_interface": "$glance_nic" + }, + "syslog": { + "use": false + }, + "upload_image": { + "cirros": "http://download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img" + }, + "upload_images": [ + "cirros" + ] + }, + "memcached_servers": [ + "$identity_ip:11211" + ], + "mq": { + "user": "guest", + "password": "test", + "vhost": "/nova", + "network": { + "service_type": "rabbitmq" + } + } + } + } +} diff --git a/conf/templates/chef_installer/openstack_icehouse/databags/db_passwords.tmpl b/conf/templates/chef_installer/openstack_icehouse/databags/db_passwords.tmpl new file mode 100644 index 00000000..95c0373b --- /dev/null +++ b/conf/templates/chef_installer/openstack_icehouse/databags/db_passwords.tmpl @@ -0,0 +1,29 @@ +{ + "nova": { + "nova": "nova" + }, + "horizon": { + "horizon": "horizon" + }, + "keystone": { + "identity": "identity" + }, + "glance": { + "glance": "glance" + }, + "ceilometer": { + "ceilometer": "ceilometer" + }, + "neutron": { + "neutron": "neutron" + }, + "cinder": { + "cinder": "cinder" + }, + "heat": { + "heat": "heat" + }, + "dash": { + "dash": "dash" + } +} diff --git a/conf/templates/chef_installer/openstack_icehouse/databags/secrets.tmpl b/conf/templates/chef_installer/openstack_icehouse/databags/secrets.tmpl new file mode 100644 index 00000000..955ee4ae --- /dev/null +++ b/conf/templates/chef_installer/openstack_icehouse/databags/secrets.tmpl @@ -0,0 +1,8 @@ +{ + "openstack_identity_bootstrap_token": { + "openstack_identity_bootstrap_token": "openstack_identity_bootstrap_token" + }, + "neutron_metadata_secret": { + "neutron_metadata_secret": "neutron_metadata_secret" + } +} diff --git a/conf/templates/chef_installer/openstack_icehouse/databags/service_passwords.tmpl b/conf/templates/chef_installer/openstack_icehouse/databags/service_passwords.tmpl new file mode 100644 index 00000000..7f381a05 --- /dev/null +++ b/conf/templates/chef_installer/openstack_icehouse/databags/service_passwords.tmpl @@ -0,0 +1,20 @@ +{ + "openstack-image": { + "openstack-image" : "openstack-image" + }, + "openstack-compute": { + "openstack-compute": "openstack-compute" + }, + "openstack-block-storage": { + "openstack-block-storage": "openstack-block-storage" + }, + "openstack-orchestration": { + "openstack-orchestration": "openstack-orchestration" + }, + "openstack-network": { + "openstack-network": "openstack-network" + }, + "rbd": { + "rbd": "rbd" + } +} diff --git a/conf/templates/chef_installer/openstack_icehouse/databags/user_passwords.tmpl b/conf/templates/chef_installer/openstack_icehouse/databags/user_passwords.tmpl new file mode 100644 index 00000000..0ad87cfe --- /dev/null +++ b/conf/templates/chef_installer/openstack_icehouse/databags/user_passwords.tmpl @@ -0,0 +1,5 @@ +{ + "admin": { + "admin": "admin" + } +} diff --git a/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl b/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl new file mode 100644 index 00000000..51387b74 --- /dev/null +++ b/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl @@ -0,0 +1,334 @@ +#set credentials = $service_credentials + +## allinone compute management IP/interface +#set allinone_compute_mgmt_nic = $allinone_compute.management.interface +#set allinone_compute_mgmt_ip = $allinone_compute.management.ip + +{ + "name": "testing", + "description": "Environment used in testing the upstream cookbooks and reference Chef repository", + "cookbook_versions": { + }, + "json_class": "Chef::Environment", + "chef_type": "environment", + "default_attributes": { + "local_repo": "" + }, + "override_attributes": { + "mysql": { + "server_root_password": "test", + "server_debian_password": "root", + "server_repl_password": "root", + "allow_remote_root": true, + "root_network_acl": "%" + }, + "collectd": { + "server": { + "host": "metrics", + "port": "4242", + "protocol": "tcp" + } + }, + "openstack": { + "auth": { + "validate_certs": false + }, + "block-storage": { + "syslog": { + "use": false + }, + "api": { + "ratelimit": "False" + }, + "debug": true, + "image_api_chef_role": "os-image", + "identity_service_chef_role": "os-identity", + "rabbit_server_chef_role": "os-ops-messaging" + }, + "dashboard": { + "use_ssl": "false" + }, + "compute": { + "syslog": { + "use": false + }, + "libvirt": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "novnc_proxy": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "xvpvnc_proxy": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "image_api_chef_role": "os-image", + "identity_service_chef_role": "os-identity", + "nova_setup_chef_role": "os-compute-api", + "rabbit_server_chef_role": "os-ops-messaging", + "ratelimit": { + "api": { + "enabled": false + }, + "volume": { + "enabled": false + } + }, + "network": { + "service_type": "neutron", + "fixed_range": "10.0.0.0/8" + } + }, + "network": { + "verbose": "True", + "debug": "True", + "service_plugins": [ + "neutron.services.l3_router.l3_router_plugin.L3RouterPlugin" + ], + "ml2": { + "type_drivers": "local,flat,vlan,gre", + "tenant_network_types": "vlan,gre", + "network_vlan_ranges": "physnet1:1000:2999", + "enable_security_group": "True" + }, + "openvswitch": { + "tenant_network_type": "vlan", + "network_vlan_ranges": "physnet1:1000:2999", + "bridge_mappings": "physnet1:br-eth1", + "fw_driver": "neutron.agent.firewall.NoopFirewallDriver" + } + }, + "db": { + "bind_interface": "$allinone_compute_mgmt_nic", + "compute": { + "host": "$allinone_compute_mgmt_ip" + }, + "identity": { + "host": "$allinone_compute_mgmt_ip" + }, + "image": { + "host": "$allinone_compute_mgmt_ip" + }, + "network": { + "host": "$allinone_compute_mgmt_ip" + }, + "volume": { + "host": "$allinone_compute_mgmt_ip" + }, + "dashboard": { + "host": "$allinone_compute_mgmt_ip" + }, + "telemetry": { + "host": "$allinone_compute_mgmt_ip" + }, + "orchestration": { + "host": "$allinone_compute_mgmt_ip" + } + }, + "developer_mode": true, + "endpoints": { + "db": { + "host": "$allinone_compute_mgmt_ip" + }, + "mq": { + "host": "$allinone_compute_mgmt_ip" + }, + "compute-api": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "8774", + "path": "/v2/%(tenant_id)s" + }, + "compute-api-bind": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "compute-ec2-admin": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "8773", + "path": "/services/Admin" + }, + "compute-ec2-api": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "8773", + "path": "/services/Cloud" + }, + "compute-xvpvnc": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "6081", + "path": "/console" + }, + "compute-novnc": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "6080", + "path": "/vnc_auto.html" + }, + "compute-novnc-bind": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "vnc_bind": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "image-api": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "9292", + "path": "/v2" + }, + "image-api-bind": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "image-registry": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "9191", + "path": "/v2" + }, + "image-registry-bind": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "identity-bind": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "identity-api": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "5000", + "path": "/v2.0" + }, + "identity-admin": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "35357", + "path": "/v2.0" + }, + "block-storage-api": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "8776", + "path": "/v1/%(tenant_id)s" + }, + "block-storage-api-bind": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "telemetry-api": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "8777", + "path": "/v1" + }, + "network-api": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "9696", + "path": "" + }, + "network-api-bind": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "network-openvswitch": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "orchestration-api": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "8004", + "path": "/v1/%(tenant_id)s" + }, + "orchestration-api-cfn": { + "host": "$allinone_compute_mgmt_ip", + "scheme": "http", + "port": "8000", + "path": "/v1" + } + }, + "identity": { + "admin_user": "admin", + "bind_interface": "$allinone_compute_mgmt_nic", + "catalog": { + "backend": "sql" + }, + "debug": true, + "rabbit_server_chef_role": "os-ops-messaging", + "roles": [ + "admin", + "keystone_admin", + "keystone_service_admin", + "member", + "netadmin", + "sysadmin" + ], + "syslog": { + "use": false + }, + "tenants": [ + "admin", + "service", + "demo" + ], + "token": { + "backend": "sql" + }, + "users": { + "admin": { + "password": "admin", + "default_tenant": "admin", + "roles": { + "admin": [ + "admin" + ], + "keystone_admin": [ + "admin" + ], + "keystone_service_admin": [ + "admin" + ] + } + }, + "demo": { + "password": "demo", + "default_tenant": "demo", + "roles": { + "member": [ + "demo" + ] + } + } + } + }, + "image": { + "api": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "debug": true, + "identity_service_chef_role": "os-identity", + "rabbit_server_chef_role": "os-ops-messaging", + "registry": { + "bind_interface": "$allinone_compute_mgmt_nic" + }, + "syslog": { + "use": false + }, + "upload_image": { + "cirros": "http://download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img" + }, + "upload_images": [ + "cirros" + ] + }, + "memcached_servers": [ + "$allinone_compute_mgmt_ip:11211" + ], + "mq": { + "user": "$credentials.rabbitmq.username", + "password": "$credentials.rabbitmq.password", + "vhost": "/nova", + "network": { + "service_type": "rabbitmq" + } + } + } + } +} diff --git a/conf/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl b/conf/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl new file mode 100644 index 00000000..562f8a33 --- /dev/null +++ b/conf/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl @@ -0,0 +1,370 @@ +#set controller_role = $get_role('os_compute_controller', $getVar('os_controller', None)) + +## Contoller node management IP/interface +#set controller_ip = $controller_role.management.ip +#set controller_nic = $controller_role.management.interface + +## Compute node management IP/interface +#set compute_role = $getVar('os_compute_worker', None) +#set compute_nic = $compute_role.management.interface + +## Network server/worker node IP/interface +#set network = $getVar('os_network', None) +#set network_server_role = $get_role('os_network_server', [$network, $controller_role]) +#set network_worker_role = $get_role('os_network_worker', [$network, $compute_role]) + +#set network_server_ip = $network_server_role.management.ip +#set network_server_nic = $network_server_role.management.interface + +## Network worker node management IP/interface +#set network_worker_ip = $network_worker_role.management.ip +#set network_worker_nic = $network_worker_role.management.interface +#set network_worker_tenant_nic = $network_worker_role.tenant.interface +#set network_worker_public_nic = $network_worker_role.external.interface + +## Database node management IP +#set db_role = $get_role('os_ops_database', $controller_role) +#set db_ip = $db_role.management.ip +#set db_nic = $db_role.management.interface + +## Message queue node management IP/interface +#set msg_queue_role = $get_role('os_ops_messaging', $controller_role) +#set msg_queue_ip = $msg_queue_role.management.ip + +## Identity (keystone) node IP/interface +#set identity_role = $get_role('os_identity', $controller_role) +#set identity_ip = $identity_role.management.ip +#set identity_nic = $identity_role.management.interface + +## Glance node management IP/interface +#set glance_role = $get_role('os_image', $controller_role) +#set glance_ip = $glance_role.management.ip +#set glance_nic = $glance_role.management.interface + +## Cinder node management IP/interface +#set cinder_role = $get_role('os_block_storage_controller', $controller_role) +#set cinder_controller_ip = $cinder_role.management.ip +#set cinder_controller_nic = $cinder_role.management.interface + +## Dashboard node management IP/interface +#set dash_role = $get_role('os_dashboard', $controller_role) +#set dash_ip = $dash_role.management.ip + +#def get_role($role_name, $default_roles=None) + #set target_role = $getVar($role_name, None) + #if $target_role is None and $default_roles is not None + #if isinstance($default_roles, list) + #for $role in $default_roles + #if $role is not None + #set target_role = $role + #break + #end if + #end for + #else + #set target_role = $default_roles + #end if + #end if + #return $target_role +#end def +{ + "name": "testing", + "description": "Environment used in testing the upstream cookbooks and reference Chef repository", + "cookbook_versions": { + }, + "json_class": "Chef::Environment", + "chef_type": "environment", + "default_attributes": { + "local_repo": "", + "mysql": { + "server_root_password": "test", + "server_debian_password": "root", + "server_repl_password": "root", + "allow_remote_root": true, + "root_network_acl": "%" + }, + "collectd": { + "server": { + "host": "metrics", + "port": "4242", + "protocol": "tcp" + } + }, + "openstack": { + "auth": { + "validate_certs": false + }, + "block-storage": { + "syslog": { + "use": false + }, + "api": { + "ratelimit": "False" + }, + "debug": true + }, + "dashboard": { + "use_ssl": "false" + }, + "compute": { + "syslog": { + "use": false + }, + "libvirt": { + "bind_interface": "$compute_nic" + }, + "novnc_proxy": { + "bind_interface": "$compute_nic" + }, + "xvpvnc_proxy": { + "bind_interface": "$compute_nic" + }, + "ratelimit": { + "api": { + "enabled": false + }, + "volume": { + "enabled": false + } + }, + "network": { + "service_type": "neutron" + } + }, + "network": { + "verbose": "True", + "debug": "True", + "service_plugins": [ + "router" + ], + "ml2": { + "type_drivers": "gre", + "tenant_network_types": "gre", + "tunnel_id_ranges": "1:1000", + "enable_security_group": "True" + }, + "openvswitch": { + "tenant_network_type": "gre", + "enable_tunneling": "True", + "tunnel_id_ranges": "1:1000", + "bind_interface": "$network_worker_tenant_nic" + }, + "l3": { + "external_network_bridge_interface": "$network_worker_public_nic" + } + }, + "db": { + "bind_interface": "$db_nic", + "compute": { + "host": "$db_ip" + }, + "identity": { + "host": "$db_ip" + }, + "image": { + "host": "$db_ip" + }, + "network": { + "host": "$db_ip" + }, + "volume": { + "host": "$db_ip" + }, + "dashboard": { + "host": "$db_ip" + }, + "telemetry": { + "host": "$db_ip" + }, + "orchestration": { + "host": "$db_ip" + } + }, + "developer_mode": true, + "endpoints": { + "db": { + "host": "$db_ip" + }, + "mq": { + "host": "$msg_queue_ip" + }, + "compute-api": { + "host": "$controller_ip", + "scheme": "http", + "port": "8774", + "path": "/v2/%(tenant_id)s" + }, + "compute-api-bind": { + "bind_interface": "$controller_nic" + }, + "compute-ec2-admin": { + "host": "$controller_ip", + "scheme": "http", + "port": "8773", + "path": "/services/Admin" + }, + "compute-ec2-api": { + "host": "$controller_ip", + "scheme": "http", + "port": "8773", + "path": "/services/Cloud" + }, + "compute-novnc": { + "host": "$controller_ip", + "scheme": "http", + "port": "6080", + "path": "/vnc_auto.html" + }, + "compute-novnc-bind": { + "bind_interface": "$controller_nic" + }, + "compute-vnc-bind": { + "bind_interface" : "$compute_nic" + }, + "vnc_bind": { + "bind_interface": "$controller_nic" + }, + "image-api": { + "host": "$glance_ip", + "scheme": "http", + "port": "9292", + "path": "/v2" + }, + "image-api-bind": { + "bind_interface": "$glance_nic" + }, + "image-registry": { + "host": "$glance_ip", + "scheme": "http", + "port": "9191", + "path": "/v2" + }, + "image-registry-bind": { + "bind_interface": "$glance_nic" + }, + "identity-bind": { + "bind_interface": "$identity_nic" + }, + "identity-api": { + "host": "$identity_ip", + "scheme": "http", + "port": "5000", + "path": "/v2.0" + }, + "identity-admin": { + "host": "$identity_ip", + "scheme": "http", + "port": "35357", + "path": "/v2.0" + }, + "block-storage-api": { + "host": "$cinder_controller_ip", + "scheme": "http", + "port": "8776", + "path": "/v1/%(tenant_id)s" + }, + "block-storage-api-bind": { + "bind_interface": "$cinder_controller_nic" + }, + "telemetry-api": { + "host": "$controller_ip", + "scheme": "http", + "port": "8777", + "path": "/v1" + }, + "network-api": { + "host": "$network_server_ip", + "scheme": "http", + "port": "9696", + "path": "" + }, + "network-api-bind": { + "bind_interface": "$network_server_nic" + }, + "orchestration-api": { + "host": "$controller_ip", + "scheme": "http", + "port": "8004", + "path": "/v1/%(tenant_id)s" + }, + "orchestration-api-cfn": { + "host": "$controller_ip", + "scheme": "http", + "port": "8000", + "path": "/v1" + } + }, + "identity": { + "admin_user": "admin", + "bind_interface": "$identity_nic", + "catalog": { + "backend": "sql" + }, + "debug": true, + "roles": [ + "admin", + "member" + ], + "syslog": { + "use": false + }, + "tenants": [ + "admin", + "service", + "demo" + ], + "token": { + "backend": "sql" + }, + "users": { + "admin": { + "password": "admin", + "default_tenant": "admin", + "roles": { + "admin": [ + "admin" + ] + } + }, + "demo": { + "password": "demo", + "default_tenant": "demo", + "roles": { + "member": [ + "demo" + ] + } + } + } + }, + "image": { + "api": { + "bind_interface": "$glance_nic" + }, + "debug": true, + "registry": { + "bind_interface": "$glance_nic" + }, + "syslog": { + "use": false + }, + "upload_image": { + "cirros": "http://download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img" + }, + "upload_images": [ + "cirros" + ] + }, + "memcached_servers": [ + "$identity_ip:11211" + ], + "mq": { + "user": "guest", + "password": "test", + "vhost": "/nova", + "network": { + "service_type": "rabbitmq" + } + } + } + } +} diff --git a/conf/templates/chef_installer/openstack_icehouse/nodes/os_compute_worker.tmpl b/conf/templates/chef_installer/openstack_icehouse/nodes/os_compute_worker.tmpl new file mode 100644 index 00000000..ee88c523 --- /dev/null +++ b/conf/templates/chef_installer/openstack_icehouse/nodes/os_compute_worker.tmpl @@ -0,0 +1,9 @@ +{ + "override": { + "openstack": { + "endpoints": { + "bind-host": "$os_compute_worker.management.ip" + } + } + } +} diff --git a/conf/templates/cobbler/CentOS-6.5-x86_64/system.tmpl b/conf/templates/cobbler/CentOS-6.5-x86_64/system.tmpl new file mode 100644 index 00000000..3db5e350 --- /dev/null +++ b/conf/templates/cobbler/CentOS-6.5-x86_64/system.tmpl @@ -0,0 +1,65 @@ +{ + "name": "$hostname", + "hostname": "$hostname", + "profile": "$profile", + "gateway": "$gateway", + #import simplejson as json + #set nameservers = json.dumps($nameservers, encoding='utf-8') + "name_servers": $nameservers, + #set search_path = ' '.join($search_path) + "name_servers_search": "$search_path", + "proxy": "$getVar('http_proxy', '')", + "modify_interface": + #set networks = $networks + #set rekeyed = {} + #set promic_nic = "" + #for $nic, $val in $networks.iteritems(): + #set ip_key = '-'.join(('ipaddress', $nic)) + #set netmask_key = '-'.join(('netmask', $nic)) + #set mgmt_key = '-'.join(('management', $nic)) + #set static_key = '-'.join(('static', $nic)) + #set $rekeyed[$ip_key] = $val.ip + #set $rekeyed[$netmask_key] = $val.netmask + #set $rekeyed[$mgmt_key] = $val.is_mgmt + #set $rekeyed[$static_key] = True + + #if $val.is_promiscuous: + #set promic_nic = $nic + #end if + #if $val.is_mgmt: + #set mac_key = '-'.join(('macaddress', $nic)) + #set dns_key = '-'.join(('dnsname', $nic)) + #set $rekeyed[$mac_key] = $mac + #set $rekeyed[$dns_key] = $dns + #end if + #end for + #set nic_info = json.dumps($rekeyed, encoding='utf-8') + $nic_info + , + "ksmeta":{ + #set partition_config = '' + #for k, v in $partition.iteritems(): + #set path = '' + #if v['vol_percentage']: + #set $path = k + ' ' + str(v['vol_percentage']) + '%' + #else: + #set $path = k + ' ' + str(v['vol_size']) + #end if + #set partition_config = ';'.join((partition_config, $path)) + #end for + #set partition_config = partition_config[1:] + #import crypt + #set $password = crypt.crypt($server_credentials.password, "az") + #set no_proxy = ','.join($getVar('no_proxy', [])) + "username": "$server_credentials.username", + "password": "$password", + "promisc_nics": "$promic_nic", + "partition": "$partition_config", + "https_proxy": "$getVar('https_proxy', '')", + "ntp_server": "$ntp_server", + "timezone": "$timezone", + "ignore_proxy": "$no_proxy", + "local_repo": "$getVar('local_repo', '')", + "disk_num": "1" + } +} diff --git a/conf/templates/cobbler/Ubuntu-12.04-x86_64/system.tmpl b/conf/templates/cobbler/Ubuntu-12.04-x86_64/system.tmpl new file mode 100644 index 00000000..3db5e350 --- /dev/null +++ b/conf/templates/cobbler/Ubuntu-12.04-x86_64/system.tmpl @@ -0,0 +1,65 @@ +{ + "name": "$hostname", + "hostname": "$hostname", + "profile": "$profile", + "gateway": "$gateway", + #import simplejson as json + #set nameservers = json.dumps($nameservers, encoding='utf-8') + "name_servers": $nameservers, + #set search_path = ' '.join($search_path) + "name_servers_search": "$search_path", + "proxy": "$getVar('http_proxy', '')", + "modify_interface": + #set networks = $networks + #set rekeyed = {} + #set promic_nic = "" + #for $nic, $val in $networks.iteritems(): + #set ip_key = '-'.join(('ipaddress', $nic)) + #set netmask_key = '-'.join(('netmask', $nic)) + #set mgmt_key = '-'.join(('management', $nic)) + #set static_key = '-'.join(('static', $nic)) + #set $rekeyed[$ip_key] = $val.ip + #set $rekeyed[$netmask_key] = $val.netmask + #set $rekeyed[$mgmt_key] = $val.is_mgmt + #set $rekeyed[$static_key] = True + + #if $val.is_promiscuous: + #set promic_nic = $nic + #end if + #if $val.is_mgmt: + #set mac_key = '-'.join(('macaddress', $nic)) + #set dns_key = '-'.join(('dnsname', $nic)) + #set $rekeyed[$mac_key] = $mac + #set $rekeyed[$dns_key] = $dns + #end if + #end for + #set nic_info = json.dumps($rekeyed, encoding='utf-8') + $nic_info + , + "ksmeta":{ + #set partition_config = '' + #for k, v in $partition.iteritems(): + #set path = '' + #if v['vol_percentage']: + #set $path = k + ' ' + str(v['vol_percentage']) + '%' + #else: + #set $path = k + ' ' + str(v['vol_size']) + #end if + #set partition_config = ';'.join((partition_config, $path)) + #end for + #set partition_config = partition_config[1:] + #import crypt + #set $password = crypt.crypt($server_credentials.password, "az") + #set no_proxy = ','.join($getVar('no_proxy', [])) + "username": "$server_credentials.username", + "password": "$password", + "promisc_nics": "$promic_nic", + "partition": "$partition_config", + "https_proxy": "$getVar('https_proxy', '')", + "ntp_server": "$ntp_server", + "timezone": "$timezone", + "ignore_proxy": "$no_proxy", + "local_repo": "$getVar('local_repo', '')", + "disk_num": "1" + } +} diff --git a/install/chef.sh b/install/chef.sh index fbac7dd4..a9967aa3 100755 --- a/install/chef.sh +++ b/install/chef.sh @@ -1,6 +1,19 @@ #!/bin/bash # +echo "Installing chef" +DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source $DIR/install.conf +if [ -f $DIR/env.conf ]; then + source $DIR/env.conf +else + echo "failed to load environment" + exit 1 +fi +source $DIR/install_func.sh + +echo "Installing chef related packages" + # create backup dir sudo mkdir -p /root/backup/chef @@ -11,10 +24,11 @@ else echo "chef-server has already installed" fi + +echo "reconfigure chef server" # configure chef-server -sudo rm -rf ~/chef-server-cleanse-* sudo chef-server-ctl cleanse -sudo mkdir -p /etc/chef-server +mkdir -p /etc/chef-server sudo cp -rn /etc/chef-server/chef-server.rb /root/backup/chef/ sudo rm -f /etc/chef-server/chef-server.rb sudo cp -rf $COMPASSDIR/misc/chef-server/chef-server.rb /etc/chef-server/chef-server.rb @@ -26,28 +40,7 @@ if [[ "$?" != "0" ]]; then exit 1 fi -if [[ -e /var/chef ]]; then - sudo rm -rf /var/chef -fi -sudo mkdir -p /var/chef/cookbooks/ -sudo cp -r $ADAPTERS_HOME/chef/cookbooks/* /var/chef/cookbooks/ -if [ $? -ne 0 ]; then - echo "failed to copy cookbooks to /var/chef/cookbooks/" - exit 1 -fi -sudo mkdir -p /var/chef/databags/ -sudo cp -r $ADAPTERS_HOME/chef/databags/* /var/chef/databags/ -if [ $? -ne 0 ]; then - echo "failed to copy databags to /var/chef/databags/" - exit 1 -fi -sudo mkdir -p /var/chef/roles/ -sudo cp -r $ADAPTERS_HOME/chef/roles/* /var/chef/roles/ -if [ $? -ne 0 ]; then - echo "failed to copy roles to /var/chef/roles/" - exit 1 -fi - +echo "configure chef client and knife" # configure chef client and knife rpm -q chef if [[ "$?" != "0" ]]; then @@ -58,8 +51,39 @@ fi sudo mkdir -p ~/.chef -sudo knife configure -y -i --defaults -r ~/chef-repo -s https://localhost:443 -u $USER --admin-client-name admin --admin-client-key /etc/chef-server/admin.pem --validation-client-name chef-validator --validation-key /etc/chef-server/chef-validator.pem < /etc/profile.d/celery_env.sh sudo chmod +x /etc/profile.d/celery_env.sh +source `which virtualenvwrapper.sh` +if ! lsvirtualenv |grep compass-core>/dev/null; then + mkvirtualenv --system-site-packages compass-core +fi cd $COMPASSDIR workon compass-core + python setup.py install if [[ "$?" != "0" ]]; then echo "failed to install compass package" @@ -44,48 +67,19 @@ else echo "compass package is installed in virtualenv under current dir" fi -sudo sed -i "/^COBBLER_INSTALLER_URL/c\COBBLER_INSTALLER_URL = 'http:\/\/$ipaddr/cobbler_api'" /etc/compass/setting -sudo sed -i "/^CHEF_INSTALLER_URL/c\CHEF_INSTALLER_URL = 'https:\/\/$ipaddr/'" /etc/compass/setting -sudo sed -i "/^DATABASE_TYPE/c\DATABASE_TYPE = 'mysql'" /etc/compass/setting -sudo sed -i "/^DATABASE_USER/c\DATABASE_USER = '${MYSQL_USER}'" /etc/compass/setting -sudo sed -i "/^DATABASE_PASSWORD/c\DATABASE_PASSWORD = '${MYSQL_PASSWORD}'" /etc/compass/setting -sudo sed -i "/^DATABASE_SERVER/c\DATABASE_SERVER = '${MYSQL_SERVER}:${MYSQL_PORT}'" /etc/compass/setting -sudo sed -i "/^DATABASE_NAME/c\DATABASE_NAME = '${MYSQL_DATABASE}'" /etc/compass/setting -sudo sed -i "/^COBBLER_INSTALLER_TOKEN/c\COBBLER_INSTALLER_TOKEN = ['$CBLR_USER', '$CBLR_PASSWD']" /etc/compass/setting -sudo sed -i "s/\$compass_ip/$ipaddr/g" /etc/compass/global_config -sudo sed -i "s/\$compass_hostname/$HOSTNAME/g" /etc/compass/global_config -sudo sed -i "s/\$compass_testmode/$TESTMODE/g" /etc/compass/global_config -sudo sed -e 's|$PythonHome|'$VIRTUAL_ENV'|' -i /var/www/compass/compass.wsgi -sudo sed -e 's|$Python|'$VIRTUAL_ENV/bin/python'|' -i /etc/init.d/compassd -sudo sed -e 's|$CeleryPath|'$VIRTUAL_ENV/bin/celeryd'|' -i /etc/init.d/compassd -sudo sed -e 's|$Python|'$VIRTUAL_ENV/bin/python'|' -i /usr/bin/compassd +sudo sed -i "s/\$ipaddr/$IPADDR/g" /etc/compass/setting +sudo sed -i "s/\$hostname/$HOSTNAME/g" /etc/compass/setting +sed -i "s/\$gateway/$OPTION_ROUTER/g" /etc/compass/setting +domains=$(echo $NAMESERVER_DOMAINS | sed "s/,/','/g") +sudo sed -i "s/\$domains/$domains/g" /etc/compass/setting -# add cookbooks, databags and roles -sudo chmod +x /opt/compass/bin/addcookbooks.py -sudo chmod +x /opt/compass/bin/adddatabags.py -sudo chmod +x /opt/compass/bin/addroles.py +sudo sed -i "s/\$cobbler_ip/$IPADDR/g" /etc/compass/os_installer/cobbler.conf +sudo sed -i "s/\$chef_ip/$IPADDR/g" /etc/compass/package_installer/chef-icehouse.conf +sudo sed -i "s/\$chef_hostname/$HOSTNAME/g" /etc/compass/package_installer/chef-icehouse.conf +sudo sed -i "s|\$PythonHome|$VIRTUAL_ENV|g" /opt/compass/bin/switch_virtualenv.py +sudo ln -s -f $VIRTUAL_ENV/bin/celery /opt/compass/bin/celery -/opt/compass/bin/addcookbooks.py -if [[ "$?" != "0" ]]; then - echo "failed to add cookbooks" - exit 1 -else - echo "cookbooks are added to chef server" -fi -/opt/compass/bin/adddatabags.py -if [[ "$?" != "0" ]]; then - echo "failed to add databags" - exit 1 -else - echo "databags are added to chef server" -fi -/opt/compass/bin/addroles.py -if [[ "$?" != "0" ]]; then - echo "failed to add roles" - exit 1 -else - echo "roles are added to chef server" -fi +deactivate sudo mkdir -p /var/log/redis sudo chown -R redis:root /var/log/redis @@ -103,6 +97,9 @@ else exit 1 fi +sudo chkconfig compass-progress-updated on +sudo chkconfig compass-celeryd on + /opt/compass/bin/refresh.sh if [[ "$?" != "0" ]]; then echo "failed to refresh compassd service" @@ -111,6 +108,11 @@ else echo "compassed service is refreshed" fi +/opt/compass/bin/clean_nodes.sh +/opt/compass/bin/clean_clients.sh +/opt/compass/bin/clean_environments.sh +/opt/compass/bin/remove_systems.sh + sudo service httpd status if [[ "$?" != "0" ]]; then echo "httpd is not started" @@ -119,7 +121,7 @@ else echo "httpd has already started" fi -sudo service redis status +sudo service redis status |grep running if [[ "$?" != "0" ]]; then echo "redis is not started" exit 1 @@ -127,24 +129,32 @@ else echo "redis has already started" fi -sudo service mysqld status +sudo service mysqld status |grep running if [[ "$?" != "0" ]]; then echo "mysqld is not started" exit 1 fi -service compassd status +killall -9 celery +service compass-celeryd restart +service compass-celeryd status |grep running if [[ "$?" != "0" ]]; then - echo "compassd is not started" + echo "compass-celeryd is not started" exit 1 else - echo "compassd has already started" + echo "compass-celeryd has already started" fi -compass check +service compass-progress-updated status |grep running if [[ "$?" != "0" ]]; then - echo "compass check failed" + echo "compass-progress-updated is not started" exit 1 +else + echo "compass-progress-updated has already started" fi -deactivate +#compass check +#if [[ "$?" != "0" ]]; then +# echo "compass check failed" +# exit 1 +#fi diff --git a/install/compass_web.sh b/install/compass_web.sh new file mode 100755 index 00000000..9afc85a8 --- /dev/null +++ b/install/compass_web.sh @@ -0,0 +1,43 @@ +#!/bin/bash +# Move files to their respective locations + +### BEGIN OF SCRIPT ### +echo "setup compass configuration" +DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source $DIR/install.conf +if [ -f $DIR/env.conf ]; then + source $DIR/env.conf +else + echo "failed to load environment" + exit 1 +fi +source $DIR/install_func.sh + +mkdir -p /var/www/compass_web +rm -rf /var/www/compass_web/* + +sudo cp -rf $WEB_HOME/public/* /var/www/compass_web/ +sudo cp -rf $WEB_HOME/v2 /var/www/compass_web/ + +if [[ $LOCAL_REPO = "y" ]]; then + echo "setting up local repo" + mkdir -p /tmp/repo + download -f https://s3-us-west-1.amazonaws.com/compass-local-repo/local_repo.tar.gz local_repo.tar.gz unzip /tmp/repo || exit $? + mv -f /tmp/repo/local_repo/* /var/www/compass_web/v2/ + if [[ "$?" != "0" ]]; then + echo "failed to setup local repo" + exit 1 + fi +fi + +sudo service httpd restart +sleep 10 + +echo "Checking if httpd is running" +sudo service httpd status +if [[ "$?" == "0" ]]; then + echo "httpd is running" +else + echo "httpd is not running" + exit 1 +fi diff --git a/install/dependency.sh b/install/dependency.sh index cda58ca7..79df9c42 100755 --- a/install/dependency.sh +++ b/install/dependency.sh @@ -2,7 +2,7 @@ echo 'Installing Required packages for Compass...' sudo yum clean all -sudo yum update -y +sudo yum update -y --skip-broken if [ "$tempest" == "true" ]; then sudo yum install -y virt-install libvirt qemu-kvm libxml2-devel libffi-devel libxslt-devel python-devel sshpass openssl-devel if [[ "$?" != "0" ]]; then @@ -10,7 +10,7 @@ if [ "$tempest" == "true" ]; then exit 1 fi fi -sudo yum install -y rsyslog logrotate ntp iproute openssh-clients python python-devel git wget syslinux amqp mod_wsgi httpd squid dhcp bind rsync yum-utils xinetd tftp-server gcc net-snmp-utils net-snmp python-daemon unzip openssl openssl098e ca-certificates redis mysql mysql-server mysql-devel python-virtualenv +sudo yum install -y rsyslog logrotate ntp iproute openssh-clients python python-devel git wget syslinux amqp mod_wsgi httpd squid dhcp bind rsync yum-utils xinetd tftp-server gcc net-snmp-utils net-snmp net-snmp-python unzip openssl openssl098e ca-certificates redis mysql mysql-server mysql-devel python-virtualenv python-setuptools if [[ "$?" != "0" ]]; then echo "failed to install yum dependency" exit 1 @@ -43,6 +43,5 @@ sudo chkconfig sshd on sudo chkconfig rsyslog on sudo chkconfig ntpd on sudo chkconfig redis on -sudo chkconfig mysqld on sudo chkconfig iptables off sudo chkconfig ip6tables off diff --git a/install/install.conf b/install/install.conf index 7f0d4f25..ac558824 100755 --- a/install/install.conf +++ b/install/install.conf @@ -10,10 +10,10 @@ export PACKAGE_INSTALLER=${PACKAGE_INSTALLER:-chef} # service NIC export NIC=${NIC:-} - +export IPADDR=${IPADDR:-} +export NETMASK=${NETMASK:-} + # DHCP config -# SUBNET variable specifies the subnet for DHCP server. Example: 192.168.0.0/16 -export SUBNET=${SUBNET:-} # DHCP option router address(Default is your management interface IP address )" export OPTION_ROUTER=${OPTION_ROUTER:-} # The IP range for DHCP clients (Default: local subnet start from 100 to 254) @@ -29,13 +29,8 @@ export NAMESERVER_DOMAINS=${NAMESERVER_DOMAINS:-} export CBLR_USER=${CBLR_USER:-} export CBLR_PASSWD=${CBLR_PASSWD:-} -# set the mysql user and password -export MYSQL_USER=${MYSQL_USER:-} -export MYSQL_OLD_PASSWORD=${MYSQL_OLD_PASSWORD:-} -export MYSQL_PASSWORD=${MYSQL_PASSWORD:-} -export MYSQL_SERVER=${MYSQL_SERVER:-} -export MYSQL_PORT=${MYSQL_PORT:-} -export MYSQL_DATABASE=${MYSQL_DATABASE:-} +# set default local repo flag +export LOCAL_REPO=${LOCAL_REPO:-} export IMAGE_TYPE=${IMAGE_TYPE:-"CentOS"} export IMAGE_TYPE_OTHER=${IMAGE_TYPE_OTHER:-"el"} @@ -57,11 +52,12 @@ export CENTOS_IMAGE_SOURCE=${CENTOS_IMAGE_SOURCE:-"http://mirror.rackspace.com/$ export UBUNTU_IMAGE_TYPE=${UBUNTU_IMAGE_TYPE:-"Ubuntu"} export UBUNTU_IMAGE_VERSION_MAJOR=${UBUNTU_IMAGE_VERSION_MAJOR:-"12"} export UBUNTU_IMAGE_VERSION_MINOR=${UBUNTU_IMAGE_VERSION_MINOR:-"04"} +export UBUNTU_IMAGE_PATCH_VERSION=${UBUNTU_IMAGE_PATCH_VERSION:=".4"} export UBUNTU_IMAGE_VERSION=${UBUNTU_IMAGE_VERSION:-"${UBUNTU_IMAGE_VERSION_MAJOR}.${UBUNTU_IMAGE_VERSION_MINOR}"} export UBUNTU_IMAGE_NAME=${UBUNTU_IMAGE_NAME:-"${UBUNTU_IMAGE_TYPE}-${UBUNTU_IMAGE_VERSION}"} export UBUNTU_IMAGE_ARCH=${UBUNTU_IMAGE_ARCH:-"x86_64"} export UBUNTU_IMAGE_ARCH_OTHER=${UBUNTU_IMAGE_ARCH_OTHER:-"amd64"} -export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-12.04.4-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} +export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-${UBUNTU_IMAGE_VERSION}${UBUNTU_IMAGE_PATCH_VERSION}-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} export COBBLER_PASSWORD=${COBBLER_PASSWORD:-"cobbler"} diff --git a/install/install.conf.template b/install/install.conf.template index 294a35ed..280332b1 100755 --- a/install/install.conf.template +++ b/install/install.conf.template @@ -1,6 +1,6 @@ -##################################################### -# Config File for Compass Installer Used by Testing # -##################################################### +##################################### +# Config File for Compass Installer # +##################################### # REPO_URL indicates the source where to download compass-web and compass-adapters from #export REPO_URL=https://review.openstack.org @@ -12,17 +12,18 @@ export PACKAGE_INSTALLER=chef # service NIC (A bridge "installation" is used for jenkins CI) export NIC=installation + +# default local repo config is "n" +export LOCAL_REPO=${LOCAL_REPO:-"y"} # DHCP config -# SUBNET variable specifies the subnet for DHCP server. Example: 192.168.0.0/16 -export netmask=$(ifconfig $NIC |grep Mask | cut -f 4 -d ':') -export ipaddr=`ifconfig $NIC | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'` -export SUBNET=$(ipcalc $ipaddr $netmask -n |cut -f 2 -d '=')/$(ipcalc $ipaddr $netmask -p |cut -f 2 -d '=') +export IPADDR=`ifconfig $NIC | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'` +export NETMASK=$(ifconfig $NIC |grep Mask | cut -f 4 -d ':') # DHCP option router address(Default is your management interface IP address )" export OPTION_ROUTER=`ifconfig $NIC | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'` # The IP range for DHCP clients (Default: local subnet start from 100 to 254) -export IP_START=`echo $ipaddr |cut -d. -f'1 2 3'`.128 -export IP_END=`echo $ipaddr |cut -d. -f'1 2 3'`.254 +export IP_START=`echo $IPADDR |cut -d. -f'1 2 3'`.128 +export IP_END=`echo $IPADDR |cut -d. -f'1 2 3'`.254 # TFTP server's IP address(Default: Management Interface/eth0 IP) export NEXTSERVER=`ifconfig $NIC | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'` # the domains covered by nameserver @@ -33,12 +34,6 @@ export ADAPTERS_SOURCE='http://git.openstack.org/stackforge/compass-adapters' # set the default cobbler user "cobbler" password, if not set, the default will be cobbler/cobbler export CBLR_USER=cobbler export CBLR_PASSWD=cobbler -export MYSQL_USER=root -export MYSQL_OLD_PASSWORD=root -export MYSQL_PASSWORD=root -export MYSQL_SERVER='127.0.0.1' -export MYSQL_PORT=3306 -export MYSQL_DATABASE=db # IMAGE_SOURCE is where you host your CentOS image export IMAGE_TYPE=${IMAGE_TYPE:-"CentOS"} @@ -61,11 +56,12 @@ export CENTOS_IMAGE_SOURCE=${CENTOS_IMAGE_SOURCE:-"http://mirror.rackspace.com/$ export UBUNTU_IMAGE_TYPE=${UBUNTU_IMAGE_TYPE:-"Ubuntu"} export UBUNTU_IMAGE_VERSION_MAJOR=${UBUNTU_IMAGE_VERSION_MAJOR:-"12"} export UBUNTU_IMAGE_VERSION_MINOR=${UBUNTU_IMAGE_VERSION_MINOR:-"04"} +export UBUNTU_IMAGE_PATCH_VERSION=${UBUNTU_IMAGE_PATCH_VERSION:=".4"} export UBUNTU_IMAGE_VERSION=${UBUNTU_IMAGE_VERSION:-"${UBUNTU_IMAGE_VERSION_MAJOR}.${UBUNTU_IMAGE_VERSION_MINOR}"} export UBUNTU_IMAGE_NAME=${UBUNTU_IMAGE_NAME:-"${UBUNTU_IMAGE_TYPE}-${UBUNTU_IMAGE_VERSION}"} export UBUNTU_IMAGE_ARCH=${UBUNTU_IMAGE_ARCH:-"x86_64"} export UBUNTU_IMAGE_ARCH_OTHER=${UBUNTU_IMAGE_ARCH_OTHER:-"amd64"} -export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-12.04.4-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} +export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-${UBUNTU_IMAGE_VERSION}${UBUNTU_IMAGE_PATCH_VERSION}-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} export COBBLER_PASSWORD=${COBBLER_PASSWORD:-"cobbler"} @@ -88,8 +84,8 @@ export SCRIPT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) export COMPASSDIR=${SCRIPT_DIR}/.. # Set test script variables -export NAMESERVERS=$ipaddr -export NTP_SERVER=$ipaddr -export GATEWAY=$ipaddr -export PROXY=http://$ipaddr:3128 +# export NAMESERVERS=$IPADDR +# export NTP_SERVER=$IPADDR +# export GATEWAY=$IPADDR +# export PROXY=http://$IPADDR:3128 export TESTMODE=${TESTMODE:-"True"} diff --git a/install/install.sh b/install/install.sh index 73c750e7..1f82b931 100755 --- a/install/install.sh +++ b/install/install.sh @@ -9,18 +9,55 @@ exec 2>&1 LOCKFILE="/tmp/`basename $0`" LOCKFD=99 +if [ -f $LOCKFILE ]; then + LOCKED_PID=$(cat $LOCKFILE | head -n 1) + ps -p $LOCKED_PID &> /dev/null + if [[ "$?" != "0" ]]; then + echo "the progress of pid $LOCKED_PID does not exist" + rm -f $LOCKFILE + else + echo "the progress of pid $LOCKED_PID is running" + exit 1 + fi +else + echo "$LOCKFILE not exist" +fi + # PRIVATE -_lock() { flock -$1 $LOCKFD; } -_no_more_locking() { _lock u; _lock xn && rm -f $LOCKFILE; } -_prepare_locking() { eval "exec $LOCKFD>\"$LOCKFILE\""; trap _no_more_locking EXIT; } +_lock() +{ + echo "lock $LOCKFILE" + flock -$1 $LOCKFD + pid=$$ + echo $pid 1>& $LOCKFD +} + +_no_more_locking() +{ + _lock u + _lock xn && rm -f $LOCKFILE +} + +_prepare_locking() +{ + eval "exec $LOCKFD>\"$LOCKFILE\"" + trap _no_more_locking EXIT +} # ON START _prepare_locking # PUBLIC -exlock_now() { _lock xn; } # obtain an exclusive lock immediately or fail +exlock_now() +{ + _lock xn || exit 1 +} # obtain an exclusive lock immediately or fail -exlock_now || exit 1 +exlock_now +if [[ "$?" != "0" ]]; then + echo "failed to acquire lock $LOCKFILE" + exit 1 +fi ### BEGIN OF SCRIPT ### DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) @@ -134,22 +171,21 @@ if [ $? -ne 0 ]; then exit 1 fi -export netmask=$(ifconfig $NIC |grep Mask | cut -f 4 -d ':') export ipaddr=$(ifconfig $NIC | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}') -export netaddr=$(ipcalc $ipaddr $netmask -n |cut -f 2 -d '=') -export netprefix=$(ipcalc $ipaddr $netmask -p |cut -f 2 -d '=') -loadvars SUBNET ${netaddr}/${netprefix} -ipcalc $SUBNET -c +loadvars IPADDR ${ipaddr} +ipcalc $IPADDR -c if [ $? -ne 0 ]; then - echo "subnet $SUBNET format should be x.x.x.x/x" + echo "ip addr $IPADDR format should be x.x.x.x" exit 1 fi -export netaddr=$(ipcalc $SUBNET -n |cut -f 2 -d '=') -export netprefix=$(ipcalc $SUBNET -p |cut -f 2 -d '=') -export netmask=$(ipcalc $SUBNET -m |cut -f 2 -d '=') -export expected_subnet=${netaddr}/${netprefix} -if [[ "$SUBNET" != "$expected_subnet" ]]; then - echo "expected subnet should be $expected_subnet" +export netmask=$(ifconfig $NIC |grep Mask | cut -f 4 -d ':') +loadvars NETMASK ${netmask} +export netaddr=$(ipcalc $IPADDR $NETMASK -n |cut -f 2 -d '=') +export netprefix=$(ipcalc $IPADDR $NETMASK -p |cut -f 2 -d '=') +subnet=${netaddr}/${netprefix} +ipcalc $subnet -c +if [ $? -ne 0 ]; then + echo "subnet $subnet format should be x.x.x.x/x" exit 1 fi loadvars OPTION_ROUTER $(route -n | grep '^0.0.0.0' | xargs | cut -d ' ' -f 2) @@ -158,8 +194,8 @@ if [ $? -ne 0 ]; then echo "router $OPTION_ROUTER format should be x.x.x.x" exit 1 fi -export ip_start=$(echo "$ipaddr"|cut -f 1,2,3 -d '.')."100" -export ip_end=$(echo "$ipaddr"|cut -f 1,2,3 -d '.')."250" +export ip_start=$(echo "$IPADDR"|cut -f 1,2,3 -d '.')."100" +export ip_end=$(echo "$IPADDR"|cut -f 1,2,3 -d '.')."250" loadvars IP_START "$ip_start" ipcalc $IP_START -c if [ $? -ne 0 ]; then @@ -168,9 +204,9 @@ if [ $? -ne 0 ]; then else echo "ip start address is $IP_START" fi -ip_start_net=$(ipcalc $IP_START $netmask -n |cut -f 2 -d '=') +ip_start_net=$(ipcalc $IP_START $NETMASK -n |cut -f 2 -d '=') if [[ "$ip_start_net" != "$netaddr" ]]; then - echo "ip start $IP_START is not in $SUBNET" + echo "ip start $IP_START is not in $subnet" exit 1 fi loadvars IP_END "$ip_end" @@ -179,9 +215,9 @@ if [ $? -ne 0 ]; then echo "ip end $IP_END format should be x.x.x.x" exit 1 fi -ip_end_net=$(ipcalc $IP_END $netmask -n |cut -f 2 -d '=') +ip_end_net=$(ipcalc $IP_END $NETMASK -n |cut -f 2 -d '=') if [[ "$ip_end_net" != "$netaddr" ]]; then - echo "ip end $IP_END is not in $SUBNET" + echo "ip end $IP_END is not in $subnet" exit 1 fi ip_start_int=$(ipaddr_convert $IP_START) @@ -192,21 +228,34 @@ if [ $ip_range -le 0 ]; then exit 1 fi echo "there will be at most $ip_range hosts deployed." -loadvars NEXTSERVER $ipaddr +loadvars NEXTSERVER $IPADDR ipcalc $NEXTSERVER -c if [ $? -ne 0 ]; then echo "next server $NEXTSERVER format should be x.x.x.x" exit 1 fi + +if [[ -z $LOCAL_REPO ]]; then + echo -e "\x1b[32mWould you like to set up a local repository?(y/n)\x1b[37m" + while true; do + read ans + case $ans in + y ) export LOCAL_REPO="y"; break;; + n ) export LOCAL_REPO="n"; break;; + * ) echo "I don't understand this";; + esac + done +fi loadvars NAMESERVER_DOMAINS "ods.com" loadvars WEB_SOURCE 'http://git.openstack.org/stackforge/compass-web' loadvars ADAPTERS_SOURCE 'http://git.openstack.org/stackforge/compass-adapters' -loadvars MYSQL_OLD_PASSWORD '' -loadvars MYSQL_PASSWORD 'root' echo "script dir: $SCRIPT_DIR" echo "compass dir is $COMPASSDIR" +echo "generate env.conf" +source ${COMPASSDIR}/install/setup_env.sh || exit $? + echo "Install the Dependencies" source ${COMPASSDIR}/install/dependency.sh || exit $? @@ -219,6 +268,9 @@ source ${COMPASSDIR}/install/$OS_INSTALLER.sh || exit $? echo "Install the Package Installer Tool" source ${COMPASSDIR}/install/$PACKAGE_INSTALLER.sh || exit $? +echo "Download and install Compass Web" +source ${COMPASSDIR}/install/compass_web.sh || exit $? + echo "Download and Setup Compass and related services" source ${COMPASSDIR}/install/compass.sh || exit $? diff --git a/install/install_func.sh b/install/install_func.sh new file mode 100755 index 00000000..1f4df8e9 --- /dev/null +++ b/install/install_func.sh @@ -0,0 +1,218 @@ +#!/bin/bash +# + +copy2dir() +{ + repo=$1 + destdir=$2 + git_project=$3 + git_branch=master + if [ -n "$4" ]; then + git_branch=$4 + fi + echo "copy $repo branch $git_branch to $destdir" + if [[ "$repo" =~ (git|http|https|ftp):// ]]; then + if [[ -d $destdir || -L $destdir ]]; then + cd $destdir + git status &> /dev/null + if [ $? -ne 0 ]; then + echo "$destdir is not git repo" + cd - + rm -rf $destdir + else + echo "$destdir is git repo" + cd - + fi + fi + + if [[ -d $destdir || -L $destdir ]]; then + echo "$destdir exists" + cd $destdir + git remote set-url origin $repo + git remote update + if [ $? -ne 0 ]; then + echo "failed to git remote update $repo in $destdir" + cd - + exit 1 + else + echo "git remote update $repo in $destdir succeeded" + fi + git reset --hard + git clean -x -f + git checkout $git_branch + git reset --hard remotes/origin/$git_branch + cd - + else + echo "create $destdir" + mkdir -p $destdir + git clone $repo $destdir + if [ $? -ne 0 ]; then + echo "failed to git clone $repo $destdir" + exit 1 + else + echo "git clone $repo $destdir suceeded" + fi + cd $destdir + git checkout $git_branch + git reset --hard remotes/origin/$git_branch + cd - + fi + cd $destdir + if [[ -z $ZUUL_PROJECT ]]; then + echo "ZUUL_PROJECT is not set" + elif [[ -z $ZUUL_BRANCH ]]; then + echo "ZUUL_BRANCH is not set" + elif [[ -z $ZUUL_REF ]]; then + echo "ZUUL_REF is not set" + elif [[ "$ZUUL_PROJECT" != "$git_project" ]]; then + echo "ZUUL_PROJECT $ZUUL_PROJECT is not equal to git_project $git_project" + elif [[ "$ZUUL_BRANCH" != "$git_branch" ]]; then + echo "ZUUL_BRANCH $ZUUL_BRANCH is not equal git_branch $git_branch" + else + git_repo=$ZUUL_URL/$ZUUL_PROJECT + git_ref=$ZUUL_REF + git reset --hard remotes/origin/$git_branch + git fetch $git_repo $git_ref && git checkout FETCH_HEAD + if [ $? -ne 0 ]; then + echo "failed to git fetch $git_repo $git_ref" + cd - + exit 1 + fi + git clean -x -f + fi + cd - + else + sudo rm -rf $destdir + sudo cp -rf $repo $destdir + if [ $? -ne 0 ]; then + echo "failed to copy $repo to $destdir" + exit 1 + else + echo "copy $repo to $destdir succeeded" + fi + fi + if [[ ! -d $destdir && ! -L $destdir ]]; then + echo "$destdir does not exist" + exit 1 + else + echo "$destdir is ready" + fi +} + +# TODO(xicheng): Please add comments to ths function. e.g, arg list +download() +{ + #download params: [] [] + force=0 + url="" + package="" + options=() + while [ $# -gt 0 ]; do + case "$1" in + -f | --force) + force=1 + shift 1 + ;; + -u | --url): + url=$2 + shift 2 + ;; + -p | --package): + package=$2 + shift 2 + ;; + -*) + echo "Unknown options: $1" + shift 1 + ;; + *) + options+=($1) + shift 1 + ;; + esac + done + set ${options[@]} + if [ -z "$url" ]; then + url=$1 + shift 1 + fi + if [ -z "$package" ]; then + package=${1:-$(basename $url)} + shift 1 + fi + echo "download options: $@" + action=${1:-""} + downloaded=0 + echo "download $package from $url and run $action" + if [[ "$force" == "0" || "$force" == "false" ]]; then + if [[ -f /tmp/${package} || -L /tmp/${package} ]]; then + echo "$package already exists" + downloaded=1 + fi + fi + if [[ "$url" =~ (http|https|ftp):// ]]; then + if [[ "$downloaded" == "0" ]]; then + echo "downloading $url to /tmp/${package}" + if [[ -f /tmp/${package} || -L /tmp/${package} ]]; then + curl -L -z /tmp/${package} -o /tmp/${package}.tmp $url + else + curl -L -o /tmp/${package}.tmp $url + fi + if [[ "$?" != "0" ]]; then + echo "failed to download $package" + exit 1 + else + echo "successfully download $package" + if [[ -f /tmp/${package}.tmp || -L /tmp/${package}.tmp ]]; then + mv -f /tmp/${package}.tmp /tmp/${package} + fi + fi + fi + else + echo "copy $url to /tmp/${package}" + cp -rf $url /tmp/${package} + fi + if [[ ! -f /tmp/${package} && ! -L /tmp/${package} ]]; then + echo "/tmp/$package is not created" + exit 1 + fi + if [[ -z "$action" ]]; then + echo "download $package is done" + return + else + echo "execute $action after downloading $package" + fi + if [[ "$action" == "install" ]]; then + echo "install /tmp/$package" + sudo rpm -Uvh /tmp/$package + if [[ "$?" != "0" ]]; then + echo "failed to install $package" + exit 1 + else + echo "$package is installed" + fi + elif [[ "$action" == "copy" ]]; then + destdir=$2 + echo "copy /tmp/$package to $destdir" + sudo cp /tmp/$package $destdir + if [[ "$?" != "0" ]]; then + echo "failed to copy $package to $destdir" + exit 1 + else + echo "$package is copied to $destdir" + fi + elif [[ "$action" == "unzip" ]]; then + destdir=$2 + echo "unzip /tmp/$package to $destdir" + sudo tar -C $destdir -xzvf /tmp/$package + if [[ "$?" != "0" ]]; then + echo "failed to unzip $package to $destdir" + exit 1 + else + echo "$package is unziped to $destdir" + fi + else + echo "unknown action $action" + exit 1 + fi +} diff --git a/install/prepare.sh b/install/prepare.sh index 54b6f804..f0c41794 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -1,99 +1,31 @@ #!/bin/bash # prepare the installation -copy2dir() -{ - repo=$1 - destdir=$2 - git_branch=master - if [[ "$repo" =~ (git|http|https|ftp):// ]]; then - if [[ -d $destdir || -L $destdir ]]; then - cd $destdir - git status &> /dev/null - if [ $? -ne 0 ]; then - echo "$destdir is not git repo" - rm -rf $destdir - else - echo "$destdir is git repo" - fi - cd - - fi - - if [[ -d $destdir || -L $destdir ]]; then - echo "$destdir exists" - cd $destdir - git remote set-url origin $repo - git remote update - if [ $? -ne 0 ]; then - echo "failed to git remote update $repo in $destdir" - exit 1 - else - echo "git remote update $repo in $destdir succeeded" - fi - git reset --hard - git clean -x -f - git checkout $git_branch - git reset --hard remotes/origin/$git_branch - else - echo "create $destdir" - mkdir -p $destdir - git clone $repo $destdir - if [ $? -ne 0 ]; then - echo "failed to git clone $repo $destdir" - exit 1 - else - echo "git clone $repo $destdir suceeded" - fi - cd $destdir - git reset --hard remotes/origin/$git_branch - fi - if [[ ! -z $ZUUL_REF || ! -z $GERRIT_REFSPEC ]]; then - if [[ ! -z $ZUUL_REF ]]; then - git_repo=$ZUUL_URL/$3 - git_ref=$ZUUL_REF - git_branch=$ZUUL_BRANCH - elif [[ ! -z $GERRIT_REFSPEC ]]; then - git_repo=https://$GERRIT_HOST/$3 - git_ref=$GERRIT_REFSPEC - git_branch=$GERRIT_BRANCH - fi - git reset --hard remotes/origin/$git_branch - git fetch $git_repo $git_ref && git checkout FETCH_HEAD - if [ $? -ne 0 ]; then - echo "failed to git fetch $git_repo $git_ref" - fi - git clean -x -f - fi - else - sudo rm -rf $destdir - sudo cp -rf $repo $destdir - if [ $? -ne 0 ]; then - echo "failed to copy $repo to $destdir" - exit 1 - else - echo "copy $repo to $destdir succeeded" - fi - fi - if [[ ! -d $destdir && ! -L $destdir ]]; then - echo "$destdir does not exist" - exit 1 - else - echo "$destdir is ready" - fi - cd $SCRIPT_DIR -} +### BEGIN OF SCRIPT ### +echo "prepare installation" +DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source $DIR/install.conf +if [ -f $DIR/env.conf ]; then + source $DIR/env.conf +else + echo "failed to load environment" + exit 1 +fi +source $DIR/install_func.sh # Create backup dir sudo mkdir -p /root/backup # update /etc/hosts +echo "update /etc/hosts" sudo cp -rn /etc/hosts /root/backup/hosts sudo rm -f /etc/hosts sudo cp -rf $COMPASSDIR/misc/hosts /etc/hosts -sudo sed -i "s/\$ipaddr \$hostname/$ipaddr $HOSTNAME/g" /etc/hosts +sudo sed -i "s/\$ipaddr \$hostname/$IPADDR $HOSTNAME/g" /etc/hosts sudo chmod 644 /etc/hosts # update rsyslog +echo "update rsyslog" sudo cp -rn /etc/rsyslog.conf /root/backup/ sudo rm -f /etc/rsyslog.conf sudo cp -rf $COMPASSDIR/misc/rsyslog/rsyslog.conf /etc/rsyslog.conf @@ -108,12 +40,14 @@ else fi # update logrotate.d +echo "update logrotate config" sudo cp -rn /etc/logrotate.d /root/backup/ rm -f /etc/logrotate.d/* sudo cp -rf $COMPASSDIR/misc/logrotate.d/* /etc/logrotate.d/ sudo chmod 644 /etc/logrotate.d/* # update ntp conf +echo "update ntp config" sudo cp -rn /etc/ntp.conf /root/backup/ sudo rm -f /etc/ntp.conf sudo cp -rf $COMPASSDIR/misc/ntp/ntp.conf /etc/ntp.conf @@ -130,10 +64,14 @@ else fi # update squid conf +echo "update squid config" sudo cp -rn /etc/squid/squid.conf /root/backup/ sudo rm -f /etc/squid/squid.conf sudo cp $COMPASSDIR/misc/squid/squid.conf /etc/squid/ -subnet_escaped=$(echo $SUBNET | sed -e 's/[\/&]/\\&/g') +export netaddr=$(ipcalc $IPADDR $NETMASK -n |cut -f 2 -d '=') +export netprefix=$(ipcalc $IPADDR $NETMASK -p |cut -f 2 -d '=') +subnet=${netaddr}/${netprefix} +subnet_escaped=$(echo $subnet | sed -e 's/[\/&]/\\&/g') sudo sed -i "s/acl localnet src \$subnet/acl localnet src $subnet_escaped/g" /etc/squid/squid.conf sudo chmod 644 /etc/squid/squid.conf sudo mkdir -p /var/squid/cache @@ -148,16 +86,20 @@ else fi #update mysqld +echo "update mysqld" sudo service mysqld restart MYSQL_USER=${MYSQL_USER:-root} -MYSQL_OLD_PASSWORD=${MYSQL_OLD_PASSWORD:-} +MYSQL_OLD_PASSWORD=${MYSQL_OLD_PASSWORD:-root} MYSQL_PASSWORD=${MYSQL_PASSWORD:-root} MYSQL_SERVER=${MYSQL_SERVER:-127.0.0.1} MYSQL_PORT=${MYSQL_PORT:-3306} -MYSQL_DATABASE=${MYSQL_DATABASE:-db} +MYSQL_DATABASE=${MYSQL_DATABASE:-compass} # first time set mysql password -sudo mysqladmin -h${MYSQL_SERVER} --port=${MYSQL_PORT} -u ${MYSQL_USER} password ${MYSQL_PASSWORD} sudo mysqladmin -h${MYSQL_SERVER} --port=${MYSQL_PORT} -u ${MYSQL_USER} -p"${MYSQL_OLD_PASSWORD}" password ${MYSQL_PASSWORD} +if [[ "$?" != "0" ]]; then +echo "setting up mysql initial password" +sudo mysqladmin -h${MYSQL_SERVER} --port=${MYSQL_PORT} -u ${MYSQL_USER} password ${MYSQL_PASSWORD} +fi mysql -h${MYSQL_SERVER} --port=${MYSQL_PORT} -u${MYSQL_USER} -p${MYSQL_PASSWORD} -e "show databases;" if [[ "$?" != "0" ]]; then echo "mysql password set failed" @@ -179,7 +121,7 @@ if [[ "$?" != "0" ]]; then echo "mysqld is not started" exit 1 else - echo "mysqld conf is updated" + echo "mysqld conf is updated" fi cd $SCRIPT_DIR @@ -193,9 +135,10 @@ if [ -z $ADAPTERS_SOURCE ]; then echo "adpaters source $ADAPTERS_SOURCE is not set" exit 1 fi -copy2dir "$ADAPTERS_SOURCE" "$ADAPTERS_HOME" "stackforge/compass-adapters" || exit $? +copy2dir "$ADAPTERS_SOURCE" "$ADAPTERS_HOME" "stackforge/compass-adapters" dev/experimental || exit $? if [ "$tempest" == "true" ]; then + echo "download tempest packages" if [[ ! -e /tmp/tempest ]]; then git clone http://git.openstack.org/openstack/tempest /tmp/tempest if [[ "$?" != "0" ]]; then @@ -240,10 +183,11 @@ fi source `which virtualenvwrapper.sh` if ! lsvirtualenv |grep compass-core>/dev/null; then - mkvirtualenv compass-core + mkvirtualenv --system-site-packages compass-core fi -workon compass-core cd $COMPASSDIR +workon compass-core +echo "install compass requirements" pip install -U -r requirements.txt if [[ "$?" != "0" ]]; then echo "failed to install compass requiremnts" @@ -260,68 +204,14 @@ else deactivate fi -download() -{ - url=$1 - package=${2:-$(basename $url)} - action=${3:-""} - if [[ -f /tmp/${package} || -L /tmp/${package} ]]; then - echo "$package already exists" - else - if [[ "$url" =~ (http|https|ftp):// ]]; then - echo "downloading $url to /tmp/${package}" - curl -L -o /tmp/${package}.tmp $url - if [[ "$?" != "0" ]]; then - echo "failed to download $package" - exit 1 - else - echo "successfully download $package" - mv -f /tmp/${package}.tmp /tmp/${package} - fi - else - cp -rf $url /tmp/${package} - fi - if [[ ! -f /tmp/${package} && ! -L /tmp/${package} ]]; then - echo "/tmp/$package is not created" - exit 1 - fi - fi - if [[ "$action" == "install" ]]; then - echo "install /tmp/$package" - sudo rpm -Uvh /tmp/$package - if [[ "$?" != "0" ]]; then - echo "failed to install $package" - exit 1 - else - echo "$package is installed" - fi - elif [[ "$action" == "copy" ]]; then - echo "copy /tmp/$package to $destdir" - destdir=$4 - sudo cp /tmp/$package $destdir - elif [[ "$action" == "unzip" ]]; then - unzipped_package=${package%%.zip} - destdir=$4 - echo "unzip /tmp/$package to /tmp/$unzipped_package and copy to $destdir" - sudo rm -rf /tmp/$unzipped_package - pushd `pwd` - cd /tmp - sudo unzip -o /tmp/$package - popd - sudo cp -rf /tmp/$unzipped_package/. $destdir - fi -} - -# download js mvc -download http://github.com/downloads/bitovi/javascriptmvc/$JS_MVC.zip $JS_MVC.zip unzip $WEB_HOME/public/ || exit $? - # download cobbler related packages centos_ppa_repo_packages=" ntp-4.2.6p5-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_TYPE,,}.${CENTOS_IMAGE_ARCH}.rpm openssh-clients-5.3p1-94.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm iproute-2.6.32-31.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm wget-1.12-1.8.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm -ntpdate-4.2.6p5-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_TYPE,,}.${CENTOS_IMAGE_ARCH}.rpm" +ntpdate-4.2.6p5-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_TYPE,,}.${CENTOS_IMAGE_ARCH}.rpm +yum-plugin-priorities-1.1.30-14.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.noarch.rpm" for f in $centos_ppa_repo_packages; do download http://rpmfind.net/linux/${IMAGE_TYPE,,}/${IMAGE_VERSION_MAJOR}/os/${IMAGE_ARCH}/Packages/$f $f || exit $? @@ -349,7 +239,11 @@ download $CHEF_SRV chef-server || exit $? download "$CENTOS_IMAGE_SOURCE" ${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso || exit $? download "$UBUNTU_IMAGE_SOURCE" ${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso || exit $? +# download local repo +download -f https://s3-us-west-1.amazonaws.com/compass-local-repo/local_repo.tar.gz local_repo.tar.gz || exit $? + # Install net-snmp +echo "install snmp config" if [[ ! -e /etc/snmp ]]; then sudo mkdir -p /etc/snmp fi @@ -365,6 +259,7 @@ sudo mkdir -p /var/lib/net-snmp/mib_indexes sudo chmod 755 /var/lib/net-snmp/mib_indexes # generate ssh key +echo "generate ssh key" if [[ ! -e $HOME/.ssh ]]; then sudo mkdir -p $HOME/.ssh fi diff --git a/install/setup_env.sh b/install/setup_env.sh new file mode 100755 index 00000000..36ce72fc --- /dev/null +++ b/install/setup_env.sh @@ -0,0 +1,14 @@ +cat << EOF > $SCRIPT_DIR/env.conf +NIC=\${NIC:-$NIC} +IPADDR=\${IPADDR:-$IPADDR} +NETMASK=\${NETMASK:-$NETMASK} +WEB_SOURCE=\${WEB_SOURCE:-$WEB_SOURCE} +ADAPTERS_SOURCE=\${ADAPTERS_SOURCE:-$ADAPTERS_SOURCE} +OPTION_ROUTER=\${OPTION_ROUTER:-$OPTION_ROUTER} +NAMESERVER_DOMAINS=\${NAMESERVER_DOMAINS:-$NAMESERVER_DOMAINS} +NEXTSERVER=\${NEXTSERVER:-$NEXTSERVER} +IP_START=\${IP_START:-$IP_START} +IP_END=\${IP_END:-$IP_END} +LOCAL_REPO=\${LOCAL_REPO:-$LOCAL_REPO} +EOF +chmod ugo+x $SCRIPT_DIR/env.conf diff --git a/misc/apache/compass.wsgi b/misc/apache/compass.wsgi deleted file mode 100755 index 5b8b9a24..00000000 --- a/misc/apache/compass.wsgi +++ /dev/null @@ -1,19 +0,0 @@ -#!/usr/bin/env python -import site -import sys -import os - -activate_this='$PythonHome/bin/activate_this.py' -execfile(activate_this, dict(__file__=activate_this)) -site.addsitedir('$PythonHome/lib/python2.6/site-packages') -sys.path.append('$PythonHome') -os.environ['PYTHON_EGG_CACHE'] = '/tmp/.egg' - -from compass.api import app as application -from compass.utils import flags -from compass.utils import logsetting -from compass.utils import setting_wrapper as setting - -flags.init() -flags.OPTIONS.logfile = setting.WEB_LOGFILE -logsetting.init() diff --git a/misc/apache/ods-server b/misc/apache/ods-server deleted file mode 100644 index da2daee4..00000000 --- a/misc/apache/ods-server +++ /dev/null @@ -1,18 +0,0 @@ -# Apache config for ods server -# -# Specify python path if you use virtualenv - - - DocumentRoot /var/www/compass_web - RewriteRule ^/$ /ods/ods.html [R=301,L] - WSGIScriptAlias /api /var/www/compass/compass.wsgi - - RewriteEngine on - RewriteRule ^/$ /ods/ods.html [R] - - - Options Indexes FollowSymLinks - Order allow,deny - Allow from all - - diff --git a/misc/apache/ods-server.conf b/misc/apache/ods-server.conf new file mode 100644 index 00000000..a313dd88 --- /dev/null +++ b/misc/apache/ods-server.conf @@ -0,0 +1,18 @@ +# Apache config for ods server +# +# Specify python path if you use virtualenv + +WSGIDaemonProcess compass threads=4 display-name=%{GROUP} +WSGIProcessGroup compass +WSGIScriptAlias /api /var/www/compass/compass.wsgi +WSGISocketPrefix /var/run/wsgi + + + DocumentRoot /var/www/compass_web/v2 + + + Options Indexes FollowSymLinks + Order allow,deny + Allow from all + + diff --git a/misc/ci/pxe-deploy.sh b/misc/ci/pxe-deploy.sh index af197dd1..545c95a8 100755 --- a/misc/ci/pxe-deploy.sh +++ b/misc/ci/pxe-deploy.sh @@ -1,6 +1,7 @@ #!/bin/bash -xe ln -s /var/log/cobbler/anamon cobbler_logs ln -s /var/log/compass compass_logs +ln -s /var/log/chef chef_logs cp compass-core/compass/apiclient/example.py /tmp/test.py chmod +x /tmp/test.py virsh destroy pxe01 diff --git a/misc/ci/pxe-prepare.sh b/misc/ci/pxe-prepare.sh index ee455f05..08f5eb36 100755 --- a/misc/ci/pxe-prepare.sh +++ b/misc/ci/pxe-prepare.sh @@ -1,9 +1,9 @@ #!/bin/bash -x if [[ ! -e /tmp/pxe01.raw ]]; then - qemu-img create -f raw /home/pxe01.raw 30G + qemu-img create -f raw /tmp/pxe01.raw 20G else rm -rf /tmp/pxe01.raw - qemu-img create -f raw /home/pxe01.raw 30G + qemu-img create -f raw /tmp/pxe01.raw 20G fi virsh list |grep pxe01 vmrc=$? @@ -17,7 +17,7 @@ virt-install --accelerate --hvm --connect qemu:///system \ --network=bridge:installation,mac=00:11:20:30:40:01 --pxe \ --network=network:default \ --name pxe01 --ram=8192 \ - --disk /home/pxe01.raw,format=raw \ + --disk /tmp/pxe01.raw,format=raw \ --vcpus=10 \ --graphics vnc,listen=0.0.0.0 --noautoconsole \ --os-type=linux --os-variant=rhel6 diff --git a/misc/ci/tempest_run.sh b/misc/ci/tempest_run.sh index a7a7bb44..18c24bb5 100755 --- a/misc/ci/tempest_run.sh +++ b/misc/ci/tempest_run.sh @@ -45,7 +45,6 @@ pip install tox==1.6.1 #Install setuptools twice so that it is really upgraded pip install -U setuptools pip install -U setuptools -pip install -U virtualenvwrapper yum install -y libxml2-devel libxslt-devel python-devel sshpass if [[ ! -e /tmp/tempest ]]; then git clone http://git.openstack.org/openstack/tempest /tmp/tempest @@ -59,15 +58,6 @@ else git clean -x -f -d -q git checkout grizzly-eol fi -source `which virtualenvwrapper.sh` -set +e -if ! lsvirtualenv |grep tempest>/dev/null; then - mkvirtualenv tempest - workon tempest -else - workon tempest -fi -set -e cd /tmp/tempest #Install Tempest including dependencies pip install -e . diff --git a/misc/ci/test-install.sh b/misc/ci/test-install.sh index 8dc400e6..3c294e45 100755 --- a/misc/ci/test-install.sh +++ b/misc/ci/test-install.sh @@ -13,8 +13,8 @@ else dhclient installation fi source compass-core/install/install.conf.template -set -e -/bin/bash -x compass-core/install/install.sh +/bin/bash -x compass-core/install/install.sh || exit $? echo "cache_peer 10.145.81.137 parent 3128 3130 default" >> /etc/squid/squid.conf service squid restart +service squid status |grep running || exit $? sleep 5 diff --git a/misc/rsyslog/rsyslog.conf b/misc/rsyslog/rsyslog.conf index fbbedc9f..3ebde45b 100644 --- a/misc/rsyslog/rsyslog.conf +++ b/misc/rsyslog/rsyslog.conf @@ -21,10 +21,10 @@ $InputTCPServerRun 514 $WorkDirectory /var/lib/rsyslog # Added for chef logfiles -$template Chef_log,"/var/log/cobbler/anamon/%hostname%/chef-client.log" +$template Chef_log,"/var/log/chef/%syslogtag%/chef-client.log" $template Raw, "%rawmsg%" $template CustomLog, "%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf%\n" -$template Openstack_log, "/var/log/cobbler/anamon/%hostname%/%programname%.log" +$template Chef_Openstack_log, "/var/log/chef/%hostname%/%programname%.log" #### GLOBAL DIRECTIVES #### # Use default timestamp format @@ -76,7 +76,7 @@ local7.* /var/log/boot.log local3.* -?Chef_log -local4.* -?Openstack_log;CustomLog +local4.* -?Chef_Openstack_log;CustomLog # ### begin forwarding rule ### # The statement between the begin ... end define a SINGLE forwarding diff --git a/misc/squid/squid.conf b/misc/squid/squid.conf index 7da498d7..018da203 100644 --- a/misc/squid/squid.conf +++ b/misc/squid/squid.conf @@ -14,8 +14,6 @@ acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machine acl CONNECT method CONNECT -acl NoCacheURL url_regex -i \.xml -cache deny NoCacheURL # # Recommended minimum Access Permission configuration: # @@ -49,25 +47,19 @@ http_port 3128 cache_mem 512 MB maximum_object_size_in_memory 512 KB -maximum_object_size 4096 MB +maximum_object_size 512 MB # Uncomment and adjust the following to add a disk cache directory. cache_dir aufs /var/squid/cache 25000 16 256 cache_store_log /var/log/squid/store.log -access_log /var/log/squid/access.log +access_log none # Leave coredumps in the first cache dir coredump_dir /var/spool/squid -reload_into_ims on # Add any of your own refresh_pattern entries above these. -refresh_pattern -i .rpm$ 86400 50% 518400 override-expire override-lastmod -refresh_pattern -i .deb$ 86400 50% 518400 override-expire override-lastmod -refresh_pattern -i .gem$ 86400 50% 518400 override-expire override-lastmod -refresh_pattern -i .rz$ 86400 50% 518400 override-expire override-lastmod -refresh_pattern -i .img$ 86400 50% 518400 override-expire override-lastmod -refresh_pattern . 0 20% 4320 +refresh_pattern . 86400 50% 518400 quick_abort_min -1 QB read_ahead_gap 100 MB diff --git a/regtest/regtest.conf b/regtest/regtest.conf index 6f466c64..c22b2b7d 100644 --- a/regtest/regtest.conf +++ b/regtest/regtest.conf @@ -3,56 +3,121 @@ export VIRT_NUM=${VIRT_NUM:-'1'} export VIRT_CPUS=${VIRT_CPUS:-'10'} export VIRT_MEM=${VIRT_MEM:-'8192'} export VIRT_DISK=${VIRT_DISK:-'30G'} +export CLEAN_OLD_DATA=${CLEAN_OLD_DATA:-true} + +export COMPASS_SERVER_URL=${COMPASS_SERVER_URL:-"http://$IPADDR/api"} +export COMPASS_USER_EMAIL=${COMPASS_USER_EMAIL:-'admin@huawei.com'} +export COMPASS_USER_PASSWORD=${COMPASS_USER_PASSWORD:-'admin'} +export CLUSTER_NAME=${CLUSTER_NAME:-'allinone'} export SWITCH_IPS=${SWITCH_IPS:-'10.145.81.219'} export SWITCH_VERSION=${SWITCH_VERSION:-'2c'} export SWITCH_COMMUNITY=${SWITCH_COMMUNITY:-'public'} export SWITCH_CREDENTIAL=${SWITCH_CREDENTIAL:-"version=${SWITCH_VERSION},community=${SWITCH_COMMUNITY}"} -export USE_POLL_SWITCHES=${USE_POLL_SWITCHES:-true} +export USE_POLL_SWITCHES=${USE_POLL_SWITCHES:-false} -export ADAPTER_OS_NAME_PATTERN=${ADAPTER_OS_NAME_PATTERN:-'(?i)centos.*'} -export ADAPTER_TARGET_SYSTEM_NAME=${ADAPTER_TARGET_SYSTEM_NAME:-'openstack'} -export HOST_ROLES=${HOST_ROLES:-''} +export LANGUAGE=${LANGUAGE:-'EN'} +export TIMEZONE=${TIMEZONE:-'America/Los_Angeles'} +export HOSTNAMES=${HOSTNAMES:-'allinone'} +export ADAPTER_OS_PATTERN=${ADAPTER_OS_PATTERN:-'(?i)centos.*'} +export ADAPTER_NAME=${ADAPTER_NAME:=''} +export ADAPTER_TARGET_SYSTEM_PATTERN=${ADAPTER_TARGET_SYSTEM_PATTERN:-'^openstack$'} +export ADAPTER_FLAVOR_PATTERN=${ADAPTER_FLAVOR_PATTERN:-'allinone'} +export HOST_ROLES=${HOST_ROLES:-'allinone=allinone-compute'} +export DEFAULT_ROLES=${DEFAULT_ROLES:-'allinone-compute'} -export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $ipaddr |cut -d. -f'1 2 3'`.50} -export MANAGEMENT_IP_END=${MANAGEMENT_IP_END:-`echo $ipaddr |cut -d. -f'1 2 3'`.100} -export MANAGEMENT_NETMASK=${MANAGEMENT_NETMASK:-'255.255.255.0'} -export MANAGEMENT_NIC=${MANAGEMENT_NIC:-'eth0'} -export MANAGEMENT_PROMISC=${MANAGEMENT_PROMISC:-'0'} -export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.1'} -export TENANT_IP_END=${TENANT_IP_END:-'172.16.2.254'} -export TENANT_NETMASK=${TENANT_NETMASK:-'255.255.255.0'} -export TENANT_NIC=${TENANT_NIC:-'eth1'} -export TENANT_PROMISC=${TENANT_PROMISC:-'0'} -export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.1'} -export PUBLIC_IP_END=${PUBLIC_IP_END:-'172.16.3.254'} -export PUBLIC_NETMASK=${PUBLIC_NETMASK:-'255.255.255.0'} -export PUBLIC_NIC=${PUBLIC_NIC:-'eth2'} -export PUBLIC_PROMISC=${PUBLIC_PROMISC:-'1'} -export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.1'} -export STORAGE_IP_END=${STORAGE_IP_END:-'172.16.4.254'} -export STORAGE_NETMASK=${STORAGE_NETMASK:-'255.255.255.0'} -export STORAGE_NIC=${STORAGE_NIC:-'eth3'} -export STORAGE_PROMISC=${STORAGE_PROMISC:-'0'} -export NAMESERVERS=${NAMESERVERS:-$ipaddr} -export NTP_SERVER=${NTP_SERVER:-$ipaddr} -export GATEWAY=${GATEWAY:-$ipaddr} -export PROXY=${PROXY:-http://$ipaddr:3128} -export SEARCH_PATH=${SEARCH_PATH:-'ods.com'} -export HA_VIP=${HA_VIP:-''} -export NETWORKING=${NETWORKING:-"nameservers=$NAMESERVERS;search_path=$SEARCH_PATH;gateway=$GATEWAY;proxy=$PROXY;ntp_server=$NTP_SERVER;ha_vip=$HA_VIP;management_ip_start=$MANAGEMENT_IP_START;management_ip_end=$MANAGEMENT_IP_END;management_netmask=$MANAGEMENT_NETMASK;management_gateway=;management_nic=$MANAGEMENT_NIC;management_promisc=$MANAGEMENT_PROMISC;tenant_ip_start=$TENANT_IP_START;tenant_ip_end=$TENANT_IP_END;tenant_netmask=$TENANT_NETMASK;tenant_gateway=;tenant_nic=$TENANT_NIC;tenant_promisc=$TENANT_PROMISC;public_ip_start=$PUBLIC_IP_START;public_ip_end=$PUBLIC_IP_END;public_netmask=$PUBLIC_NETMASK;public_gateway=;public_nic=$PUBLIC_NIC;public_promisc=$PUBLIC_PROMISC;storage_ip_start=$STORAGE_IP_START;storage_ip_end=$STORAGE_IP_END;storage_netmask=$STORAGE_NETMASK;storage_gateway=;storage_nic=$STORAGE_NIC;storage_promisc=$STORAGE_PROMISC"} +export NAMESERVERS=${NAMESERVERS:-$IPADDR} +export NTP_SERVER=${NTP_SERVER:-$IPADDR} +export GATEWAY=${GATEWAY:-$IPADDR} +export PROXY=${PROXY:-"http://${IPADDR}:3128"} +export IGNORE_PROXY=${IGNORE_PROXY:-} +export DOMAIN=${DOMAIN:-'ods.com'} +export SEARCH_PATH=${SEARCH_PATH:-${DOMAIN}} export HOME_PERCENTAGE=${HOME_PERCENTAGE:-'5'} export TMP_PERCENTAGE=${TMP_PERCENTAGE:-'5'} export VAR_PERCENTAGE=${VAR_PERCENTAGE:-'10'} -export PARTITION=${PARTITION:-"home:percentage=${HOME_PERCENTAGE},tmp:percentage=${TMP_PERCENTAGE},var:percentage=${VAR_PERCENTAGE}"} +export PARTITION=${PARTITION:-"/home=${HOME_PERCENTAGE}%,/tmp=${TMP_PERCENTAGE}%,/var=${VAR_PERCENTAGE}%"} +export LOCAL_REPO_URL=${LOCAL_REPO_URL:-"http://$IPADDR"} +export OS_CONFIG_FILENAME=${OS_CONFIG_FILENAME:-} +export PACKAGE_CONFIG_FILENAME=${PACKAGE_CONFIG_FILENAME:-} + +function ip_subnet { + ip_addr=$1 + ip_base="$(echo $ip_addr | cut -d. -f'1 2 3')" + echo "${ip_base}.0/24" +} + +if [ -z "$MANAGEMENT_SUBNET" ]; then + export MANAGEMENT_SUBNET=$(ip_subnet ${IPADDR}) +fi +export TENANT_SUBNET=${TENANT_SUBNET:-'172.16.2.0/24'} +export PUBLIC_SUBNET=${PUBLIC_SUBNET:-'172.16.3.0/24'} +export STORAGE_SUBNET=${STORAGE_SUBNET:-'172.16.4.0/24'} +export SUBNETS=${SUBNETS:-"${MANAGEMENT_SUBNET},${TENANT_SUBNET},${PUBLIC_SUBNET},${STORAGE_SUBNET}"} export SERVER_USERNAME=${SERVER_USERNAME:-root} export SERVER_PASSWORD=${SERVER_PASSWORD:-root} +export SERVER_CREDENTIAL=${SERVER_CREDENTIAL:-"${SERVER_USERNAME}=${SERVER_PASSWORD}"} export SERVICE_USERNAME=${SERVICE_USERNAME:-service} export SERVICE_PASSWORD=${SERVICE_PASSWORD:-service} +export SERVICE_IMAGE_CREDENTIAL=${SERVICE_IMAGE_CREDENTIAL:-"image:${SERVICE_USERNAME}=${SERVICE_PASSWORD}"} +export SERVICE_COMPUTE_CREDENTIAL=${SERVICE_COMPUTE_CREDENTIAL:-"compute:${SERVICE_USERNAME}=${SERVICE_PASSWORD}"} +export SERVICE_DASHBOARD_CREDENTIAL=${SERVICE_DASHBOARD_CREDENTIAL:-"dashboard:${SERVICE_USERNAME}=${SERVICE_PASSWORD}"} +export SERVICE_IDENTITY_CREDENTIAL=${SERVICE_IDENTITY_CREDENTIAL:-"identity:${SERVICE_USERNAME}=${SERVICE_PASSWORD}"} +export SERVICE_METERING_CREDENTIAL=${SERVICE_METERING_CREDENTIAL:-"metering:${SERVICE_USERNAME}=${SERVICE_PASSWORD}"} +export SERVICE_RABBITMQ_CREDENTIAL=${SERVICE_RABBITMQ_CREDENTIAL:-"rabbitmq:${SERVICE_USERNAME}=${SERVICE_PASSWORD}"} +export SERVICE_VOLUME_CREDENTIAL=${SERVICE_VOLUME_CREDENTIAL:-"volume:${SERVICE_USERNAME}=${SERVICE_PASSWORD}"} +export SERVICE_MYSQL_CREDENTIAL=${SERVICE_MYSQL_CREDENTIAL:-"mysql:${SERVICE_USERNAME}=${SERVICE_PASSWORD}"} +export SERVICE_CREDENTIALS=${SERVICE_CREDENTIALS:-"${SERVICE_IMAGE_CREDENTIAL},${SERVICE_COMPUTE_CREDENTIAL},${SERVICE_DASHBOARD_CREDENTIAL},${SERVICE_IDENTITY_CREDENTIAL},${SERVICE_METERING_CREDENTIAL},${SERVICE_RABBITMQ_CREDENTIAL},${SERVICE_VOLUME_CREDENTIAL},${SERVICE_MYSQL_CREDENTIAL}"} export CONSOLE_USERNAME=${CONSOLE_USERNAME:-console} export CONSOLE_PASSWORD=${CONSOLE_PASSWORD:-console} -export SECURITY=${SECURITY:-"server:${SERVER_USERNAME}=${SERVER_PASSWORD},service:${SERVICE_USERNAME}=${SERVICE_PASSWORD},console:${CONSOLE_USERNAME}=${CONSOLE_PASSWORD}"} +export CONSOLE_ADMIN_CREDENTIAL=${CONSOLE_ADMIN_CREDENTIAL:-"admin:${CONSOLE_USERNAME}=${CONSOLE_PASSWORD}"} +export CONSOLE_COMPUTE_CREDENTIAL=${CONSOLE_COMPUTE_CREDENTIAL:-"compute:${CONSOLE_USERNAME}=${CONSOLE_PASSWORD}"} +export CONSOLE_DASHBOARD_CREDENTIAL=${CONSOLE_DASHBOARD_CREDENTIAL:-"dashboard:${CONSOLE_USERNAME}=${CONSOLE_PASSWORD}"} +export CONSOLE_IMAGE_CREDENTIAL=${CONSOLE_IMAGE_CREDENTIAL:-"image:${CONSOLE_USERNAME}=${CONSOLE_PASSWORD}"} +export CONSOLE_METERING_CREDENTIAL=${CONSOLE_METERING_CREDENTIAL:-"metering:${CONSOLE_USERNAME}=${CONSOLE_PASSWORD}"} +export CONSOLE_NETWORK_CREDENTIAL=${CONSOLE_NETWORK_CREDENTIAL:-"network:${CONSOLE_USERNAME}=${CONSOLE_PASSWORD}"} +export CONSOLE_OBJECT_STORE_CREDENTIAL=${CONSOLE_OBJECT_STORE_CREDENTIAL:-"object-store:${CONSOLE_USERNAME}=${CONSOLE_PASSWORD}"} +export CONSOLE_VOLUME_CREDENTIAL=${CONSOLE_VOLUME_CREDENTIAL:-"volume:${CONSOLE_USERNAME}=${CONSOLE_PASSWORD}"} +export CONSOLE_CREDENTIALS=${CONSOLE_CREDENTIALS:-"${CONSOLE_ADMIN_CREDENTIAL},${CONSOLE_COMPUTE_CREDENTIAL},${CONSOLE_DASHBOARD_CREDENTIAL},${CONSOLE_IMAGE_CREDENTIAL},${CONSOLE_METERING_CREDENTIAL},${CONSOLE_NETWORK_CREDENTIAL},${CONSOLE_OBJECT_STORE_CREDENTIAL},${CONSOLE_VOLUME_CREDENTIAL}"} -export DASHBOARD_ROLE=${DASHBOARD_ROLE:-"os-controller"} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.50} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.50'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.50'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.50'} +export MANAGEMENT_INTERFACE=${MANAGEMENT_INTERFACE:-eth0} +export TENANT_INTERFACE=${TENANT_INTERFACE:-eth1} +export STORAGE_INTERFACE=${STORAGE_INTERFACE:-eth3} +export PUBLIC_INTERFACE=${PUBLIC_INTERFACE:-eth2} + +function next_ip { + ip_addr=$1 + ip_base="$(echo $ip_addr | cut -d. -f'1 2 3')" + ip_last="$(echo $ip_addr | cut -d. -f4)" + let ip_last_next=$ip_last+1 + echo "${ip_base}.${ip_last_next}" +} + +if [ -z "$HOST_NETWORKS" ]; then + IFS=, read -a HOSTNAME_LIST <<< "$HOSTNAMES" + MANAGE_IP=${MANAGEMENT_IP_START} + TENANT_IP=${TENANT_IP_START} + PUBLIC_IP=${PUBLIC_IP_START} + STORAGE_IP=${STORAGE_IP_START} + for HOSTNAME in ${HOSTNAME_LIST[@]}; do + if [ -z "$HOST_NETWORKS" ]; then + HOST_NETWORKS="${HOSTNAME}:${MANAGEMENT_INTERFACE}=${MANAGE_IP}|is_mgmt,${TENANT_INTERFACE}=${TENANT_IP},${PUBLIC_INTERFACE}=${PUBLIC_IP}|is_promiscuous,${STORAGE_INTERFACE}=${STORAGE_IP}" + else + HOST_NETWORKS="${HOST_NETWORKS};${HOSTNAME}:${MANAGEMENT_INTERFACE}=${MANAGE_IP}|is_mgmt,${TENANT_INTERFACE}=${TENANT_IP},${PUBLIC_INTERFACE}=${PUBLIC_IP}|is_promiscuous,${STORAGE_INTERFACE}=${STORAGE_IP}" + fi + MANAGE_IP=$(next_ip ${MANAGE_IP}) + TENANT_IP=$(next_ip ${TENANT_IP}) + PUBLIC_IP=$(next_ip ${PUBLIC_IP}) + STORAGE_IP=$(next_ip ${STORAGE_IP}) + done + export HOST_NETWORKS +fi + +export NETWORK_MAPPING=${NETWORK_MAPPING:-"management=${MANAGEMENT_INTERFACE},tenant=${TENANT_INTERFACE},storage=${STORAGE_INTERFACE},external=${PUBLIC_INTERFACE}"} export DEPLOYMENT_TIMEOUT=${DEPLOYMENT_TIMEOUT:-"90"} +export DASHBOARD_URL=${DASHBOARD_URL:-"http://${MANAGEMENT_IP_START}"} diff --git a/regtest/regtest.sh b/regtest/regtest.sh index 82105379..57fd5d3c 100755 --- a/regtest/regtest.sh +++ b/regtest/regtest.sh @@ -12,11 +12,7 @@ function mac_address() { } function tear_down_machines() { - if [[ -z $NO_TEAR_DOWN ]] || [[ $PRE_CLEAN == true ]]; then - virtmachines=$(virsh list | awk '{print$2}'| tail -n +3) - else - virtmachines= - fi + virtmachines=$(virsh list --name) for virtmachine in $virtmachines; do echo "destroy $virtmachine" virsh destroy $virtmachine @@ -25,11 +21,7 @@ function tear_down_machines() { exit 1 fi done - if [[ -z $NO_TEAR_DOWN ]] || [[ $PRE_CLEAN == true ]]; then - virtmachines=$(virsh list --all | awk '{print$2}'| tail -n +3) - else - virtmachines= - fi + virtmachines=$(virsh list --all --name) for virtmachine in $virtmachines; do echo "undefine $virtmachine" virsh undefine $virtmachine @@ -46,33 +38,25 @@ source ${REGTEST_DIR}/${REGTEST_CONF} source `which virtualenvwrapper.sh` workon compass-core -declare -A roles_list machines='' -for roles in ${HOST_ROLES//;/ }; do - roles_list[${#roles_list[@]}]=${roles} -done -echo "role list: ${roles_list[@]}" -roles_offset=0 -host_roles_list='' - -PRE_CLEAN=true tear_down_machines +tear_down_machines echo "setup $VIRT_NUM virt machines" for i in `seq $VIRT_NUM`; do - if [[ ! -e /home/pxe${i}.raw ]]; then + if [[ ! -e /tmp/pxe${i}.raw ]]; then echo "create image for instance pxe$i" - qemu-img create -f raw /home/pxe${i}.raw ${VIRT_DISK} + qemu-img create -f raw /tmp/pxe${i}.raw ${VIRT_DISK} if [[ "$?" != "0" ]]; then - echo "create image /home/pxe${i}.raw failed" + echo "create image /tmp/pxe${i}.raw failed" exit 1 fi else echo "recreate image for instance pxe$i" - rm -rf /home/pxe${i}.raw - qemu-img create -f raw /home/pxe${i}.raw ${VIRT_DISK} + rm -rf /tmp/pxe${i}.raw + qemu-img create -f raw /tmp/pxe${i}.raw ${VIRT_DISK} if [[ "$?" != "0" ]]; then - echo "create image /home/pxe${i}.raw failed" + echo "create image /tmp/pxe${i}.raw failed" exit 1 fi fi @@ -84,7 +68,7 @@ for i in `seq $VIRT_NUM`; do --network=bridge:installation \ --network=bridge:installation \ --name pxe${i} --ram=${VIRT_MEM} \ - --disk /home/pxe${i}.raw,format=raw \ + --disk /tmp/pxe${i}.raw,format=raw \ --vcpus=${VIRT_CPUS} \ --graphics vnc,listen=0.0.0.0 \ --noautoconsole \ @@ -120,23 +104,9 @@ for i in `seq $VIRT_NUM`; do else machines="${machines},${mac}" fi - - if [ $roles_offset -lt ${#roles_list[@]} ]; then - host_roles="host${i}=${roles_list[$roles_offset]}" - roles_offset=$(expr $roles_offset + 1) - else - host_roles="host${i}=" - fi - - if [ -z "$host_roles_list" ]; then - host_roles_list="$host_roles" - else - host_roles_list="${host_roles_list};$host_roles" - fi done echo "machines: $machines" -echo "host roles: $host_roles_list" virsh list # Avoid infinite relative symbolic links @@ -146,14 +116,23 @@ fi if [[ ! -L compass_logs ]]; then ln -s /var/log/compass compass_logs fi -if [[ ! -e compass_logs/squid_access.log ]]; then - ln -s /var/log/squid/access.log compass_logs/squid_access.log +if [[ ! -L chef_logs ]]; then + ln -s /var/log/chef chef_logs fi CLIENT_SCRIPT=/opt/compass/bin/client.py -/opt/compass/bin/refresh.sh -if [[ "$?" != "0" ]]; then - echo "failed to refresh" - exit 1 +if [[ "$CLEAN_OLD_DATA" == "0" || "$CLEAN_OLD_DATA" == "false" ]]; then + echo "keep old deployment data" +else + rm -rf /var/log/compass/* + /opt/compass/bin/refresh.sh + if [[ "$?" != "0" ]]; then + echo "failed to refresh" + exit 1 + fi + /opt/compass/bin/clean_nodes.sh + /opt/compass/bin/clean_clients.sh + /opt/compass/bin/clean_environments.sh + /opt/compass/bin/remove_systems.sh fi if [[ "$USE_POLL_SWITCHES" == "0" || "$USE_POLL_SWITCHES" == "false" ]]; then @@ -164,7 +143,7 @@ if [[ "$USE_POLL_SWITCHES" == "0" || "$USE_POLL_SWITCHES" == "false" ]]; then echo "switch,${switch_ip},huawei,${SWITCH_VERSION},${SWITCH_COMMUNITY},under_monitoring" >> ${TMP_SWITCH_MACHINE_FILE} switch_port=1 for mac in ${machines//,/ }; do - echo "machine,${switch_ip},${switch_port},1,${mac}" >> ${TMP_SWITCH_MACHINE_FILE} + echo "machine,${switch_ip},${switch_port},${mac}" >> ${TMP_SWITCH_MACHINE_FILE} let switch_port+=1 done break @@ -173,11 +152,15 @@ if [[ "$USE_POLL_SWITCHES" == "0" || "$USE_POLL_SWITCHES" == "false" ]]; then cat $TMP_SWITCH_MACHINE_FILE echo "=======================================================" /opt/compass/bin/manage_db.py set_switch_machines --switch_machines_file ${TMP_SWITCH_MACHINE_FILE} + if [[ "$?" != "0" ]]; then + echo "failed to set switch machines" + exit 1 + fi else POLL_SWITCHES_FLAG="poll_switches" fi -${CLIENT_SCRIPT} --logfile= --loglevel=info --logdir= --adapter_os_name="${ADAPTER_OS_NAME_PATTERN}" --adapter_target_system="${ADAPTER_TARGET_SYSTEM_NAME}" --networking="${NETWORKING}" --partitions="${PARTITION}" --credentials="${SECURITY}" --host_roles="${host_roles_list}" --dashboard_role="${DASHBOARD_ROLE}" --switch_ips="${SWITCH_IPS}" --machines="${machines}" --switch_credential="${SWITCH_CREDENTIAL}" --deployment_timeout="${DEPLOYMENT_TIMEOUT}" --${POLL_SWITCHES_FLAG} +${CLIENT_SCRIPT} --logfile= --loglevel=debug --logdir= --compass_server="${COMPASS_SERVER_URL}" --compass_user_email="${COMPASS_USER_EMAIL}" --compass_user_password="${COMPASS_USER_PASSWORD}" --cluster_name="${CLUSTER_NAME}" --language="${LANGUAGE}" --timezone="${TIMEZONE}" --hostnames="${HOSTNAMES}" --partitions="${PARTITIONS}" --subnets="${SUBNETS}" --adapter_os_pattern="${ADAPTER_OS_PATTERN}" --adapter_name="${ADAPTER_NAME}" --adapter_target_system_pattern="${ADAPTER_TARGET_SYSTEM_PATTERN}" --adapter_flavor_pattern="${ADAPTER_FLAVOR_PATTERN}" --http_proxy="${PROXY}" --https_proxy="${PROXY}" --no_proxy="${IGNORE_PROXY}" --ntp_server="${NTP_SERVER}" --dns_servers="${NAMESERVERS}" --domain="${DOMAIN}" --search_path="${SEARCH_PATH}" --default_gateway="${GATEWAY}" --server_credential="${SERVER_CREDENTIAL}" --local_repo_url="${LOCAL_REPO_URL}" --os_config_json_file="${OS_CONFIG_FILENAME}" --service_credentials="${SERVICE_CREDENTIALS}" --console_credentials="${CONSOLE_CREDENTIALS}" --host_networks="${HOST_NETWORKS}" --network_mapping="${NETWORK_MAPPING}" --package_config_json_file="${PACKAGE_CONFIG_FILENAME}" --host_roles="${HOST_ROLES}" --default_roles="${DEFAULT_ROLES}" --switch_ips="${SWITCH_IPS}" --machines="${machines}" --switch_credential="${SWITCH_CREDENTIAL}" --deployment_timeout="${DEPLOYMENT_TIMEOUT}" --${POLL_SWITCHES_FLAG} --dashboard_url="${DASHBOARD_URL}" rc=$? deactivate # Tear down machines after the test @@ -186,12 +169,12 @@ if [[ $rc != 0 ]]; then echo "deployment failed" exit 1 fi -if [[ $tempest == true ]]; then - ./tempest_run.sh - if [[ $? != 0 ]]; then - tear_down_machines - echo "tempest failed" - exit 1 - fi - tear_down_machines -fi +#if [[ $tempest == true ]]; then +# ./tempest_run.sh +# if [[ $? != 0 ]]; then +# tear_down_machines +# echo "tempest failed" +# exit 1 +# fi +# tear_down_machines +#fi diff --git a/regtest/regtest10.conf b/regtest/regtest10.conf new file mode 100644 index 00000000..c684f4a4 --- /dev/null +++ b/regtest/regtest10.conf @@ -0,0 +1,18 @@ +# conf to install openstack on centos with multi node flavor +export VIRT_NUM=${VIRT_NUM:-'12'} +export VIRT_CPUS=${VIRT_CPUS:-'2'} +export VIRT_MEM=${VIRT_MEM:-'8192'} +export VIRT_DISK=${VIRT_DISK:-'20G'} +export CLUSTER_NAME=${CLUSTER_NAME:-'multinodes-ubuntu'} +export ADAPTER_OS_PATTERN=${ADAPTER_OS_PATTERN:-'(?i)ubuntu.*'} +export HOSTNAMES=${HOSTNAMES:-'database,messaging,identity,compute-controller,compute-worker1,compute-worker2,network-server,network-worker,block-storage-volume,block-storage-controller,image,dashboard'} +export HOST_ROLES=${HOST_ROLES:-'database=os-ops-database;messaging=os-ops-messaging;identity=os-identity;compute-controller=os-compute-controller;network-server=os-network-server;network-worker=os-network-worker;block-storage-volume=os-block-storage-volume;block-storage-controller=os-block-storage-controller;image=os-image;dashboard=os-dashboard'} +export DEFAULT_ROLES=${DEFAULT_ROLES:-'os-compute-worker'} +export ADAPTER_FLAVOR_PATTERN=${ADAPTER_FLAVOR_PATTERN:-'multinodes'} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.90} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.90'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.90'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.90'} +export REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source ${REGTEST_DIR}/regtest.conf +export LOCAL_REPO_URL='' diff --git a/regtest/regtest2.conf b/regtest/regtest2.conf index a0bdd5fa..c803e325 100644 --- a/regtest/regtest2.conf +++ b/regtest/regtest2.conf @@ -1,9 +1,16 @@ -# Set test script variables -export VIRT_NUM=${VIRT_NUM:-'2'} -export VIRT_CPUS=${VIRT_CPUS:-'5'} +# conf to run 1 instance with single-contoller-multi-compute flavor +export VIRT_NUM=${VIRT_NUM:-'1'} +export VIRT_CPUS=${VIRT_CPUS:-'10'} export VIRT_MEM=${VIRT_MEM:-'8192'} export VIRT_DISK=${VIRT_DISK:-'30G'} -export HOST_ROLES=${HOST_ROLES:-'os-controller,os-ops-database,os-ops-messaging,os-image'} - -REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +export CLUSTER_NAME=${CLUSTER_NAME:-'single-controller'} +export HOSTNAMES=${HOSTNAMES:-'allinone'} +export HOST_ROLES=${HOST_ROLES:-'allinone=os-controller,os-compute-worker,os-network,os-block-storage-volume'} +export DEFAULT_ROLES=${DEFAULT_ROLES:-'os-compute-worker'} +export ADAPTER_FLAVOR_PATTERN=${ADAPTER_FLAVOR_PATTERN:-'single-contoller-multi-compute'} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.52} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.52'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.52'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.52'} +export REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) source ${REGTEST_DIR}/regtest.conf diff --git a/regtest/regtest3.conf b/regtest/regtest3.conf index 388e05f7..7112aa5b 100644 --- a/regtest/regtest3.conf +++ b/regtest/regtest3.conf @@ -1,10 +1,16 @@ # Set test script variables -export VIRT_NUM=${VIRT_NUM:-'7'} -export VIRT_CPUS=${VIRT_CPUS:-'4'} -export VIRT_MEM=${VIRT_MEM:-'6144'} +export VIRT_NUM=${VIRT_NUM:-'1'} +export VIRT_CPUS=${VIRT_CPUS:-'10'} +export VIRT_MEM=${VIRT_MEM:-'8192'} export VIRT_DISK=${VIRT_DISK:-'30G'} -export HOST_ROLES=${HOST_ROLES:-'os-controller,os-image;os-ops-database,os-ops-messaging;os-network,os-block-storage-worker;os-ha;os-ha'} -export HA_VIP=${HA_VIP:-`echo $ipaddr |cut -d. -f'1 2 3'`.253} - -REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +export CLUSTER_NAME=${CLUSTER_NAME:-'multinodes'} +export HOSTNAMES=${HOSTNAMES:-'allinone'} +export HOST_ROLES=${HOST_ROLES:-'allinone=os-ops-database,os-ops-messaging,os-identity,os-compute-controller,os-compute-worker,os-network-server,os-network-worker,os-block-storage-volume,os-block-storage-controller,os-image,os-dashboard'} +export DEFAULT_ROLES=${DEFAULT_ROLES:-'os-compute-worker'} +export ADAPTER_FLAVOR_PATTERN=${ADAPTER_FLAVOR_PATTERN:-'multinodes'} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.54} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.54'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.54'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.54'} +export REGTEST_DI=R$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) source ${REGTEST_DIR}/regtest.conf diff --git a/regtest/regtest4.conf b/regtest/regtest4.conf index 9ce86b63..0b863448 100644 --- a/regtest/regtest4.conf +++ b/regtest/regtest4.conf @@ -1,10 +1,13 @@ -# conf to run 10 intsances -export VIRT_NUM=${VIRT_NUM:-'10'} -export VIRT_CPUS=${VIRT_CPUS:-'3'} -export VIRT_MEM=${VIRT_MEM:-'6144'} +# conf to run openstack 2 intsances with single-contoller-multi-compute flavor +export VIRT_NUM=${VIRT_NUM:-'3'} +export VIRT_CPUS=${VIRT_CPUS:-'4'} +export VIRT_MEM=${VIRT_MEM:-'8192'} export VIRT_DISK=${VIRT_DISK:-'30G'} -export HOST_ROLES=${HOST_ROLES:-'os-controller,os-image;os-controller,os-image;os-ops-database,os-ops-messaging;os-network,os-block-storage-worker;os-ha;os-ha'} -export HA_VIP=${HA_VIP:-`echo $ipaddr |cut -d. -f'1 2 3'`.253} - -REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -source ${REGTEST_DIR}/regtest.conf +export HOSTNAMES=${HOSTNAMES:-'controller,network,compute'} +export HOST_ROLES=${HOST_ROLES:-'controller=os-controller;network=os-network,os-block-storage-volume'} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.56} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.56'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.56'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.56'} +export REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source ${REGTEST_DIR}/regtest2.conf diff --git a/regtest/regtest5.conf b/regtest/regtest5.conf index d9010973..8d644527 100644 --- a/regtest/regtest5.conf +++ b/regtest/regtest5.conf @@ -1,9 +1,13 @@ -# conf to run os-dashboard -export VIRT_NUM=${VIRT_NUM:-'1'} -export VIRT_CPUS=${VIRT_CPUS:-'10'} +# conf to install openstack on centos with multi node flavor +export VIRT_NUM=${VIRT_NUM:-'12'} +export VIRT_CPUS=${VIRT_CPUS:-'2'} export VIRT_MEM=${VIRT_MEM:-'8192'} export VIRT_DISK=${VIRT_DISK:-'20G'} -export HOST_ROLES=${HOST_ROLES:-'os-dashboard'} - -REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -source ${REGTEST_DIR}/regtest.conf +export HOSTNAMES=${HOSTNAMES:-'database,messaging,identity,compute-controller,compute-worker1,compute-worker2,network-server,network-worker,block-storage-volume,block-storage-controller,image,dashboard'} +export HOST_ROLES=${HOST_ROLES:-'database=os-ops-database;messaging=os-ops-messaging;identity=os-identity;compute-controller=os-compute-controller;network-server=os-network-server;network-worker=os-network-worker;block-storage-volume=os-block-storage-volume;block-storage-controller=os-block-storage-controller;image=os-image;dashboard=os-dashboard'} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.60} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.60'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.60'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.60'} +export REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source ${REGTEST_DIR}/regtest3.conf diff --git a/regtest/regtest6.conf b/regtest/regtest6.conf index 199e444b..6fe07d69 100644 --- a/regtest/regtest6.conf +++ b/regtest/regtest6.conf @@ -1,11 +1,25 @@ -# Set test script variables +# conf to run 1 instance with os only export VIRT_NUM=${VIRT_NUM:-'1'} export VIRT_CPUS=${VIRT_CPUS:-'10'} export VIRT_MEM=${VIRT_MEM:-'8192'} export VIRT_DISK=${VIRT_DISK:-'30G'} -export ADAPTER_OS_NAME_PATTERN=${ADAPTER_OS_NAME_PATTERN:-'(?i)ubuntu.*'} -export ADAPTER_TARGET_SYSTEM_NAME=${ADAPTER_TARGET_SYSTEM_NAME:-'openstack'} -export HOST_ROLES=${HOST_ROLES:-''} +export CLUSTER_NAME=${CLUSTER_NAME:-'osonly'} +export HOSTNAMES=${HOSTNAMES:-'centos'} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.80} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.80'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.80'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.80'} -REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +export REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) source ${REGTEST_DIR}/regtest.conf + +export HOST_ROLES='' +export ADAPTER_NAME='os_only' +export ADAPTER_TARGET_SYSTEM_PATTERN='' +export ADAPTER_FLAVOR_PATTERN='' +export SERVICE_CREDENTIALS='' +export CONSOLE_CREDENTIALS='' +export NETWORK_MAPPING='' +export DEFAULT_ROLES='' +export DASHBOARD_URL='' + diff --git a/regtest/regtest7.conf b/regtest/regtest7.conf index 2315625f..43b25ab4 100644 --- a/regtest/regtest7.conf +++ b/regtest/regtest7.conf @@ -1,12 +1,14 @@ -# Set test script variables -export VIRT_NUM=${VIRT_NUM:-'7'} -export VIRT_CPUS=${VIRT_CPUS:-'4'} -export VIRT_MEM=${VIRT_MEM:-'6144'} +# conf to run 1 instance with os only +export VIRT_NUM=${VIRT_NUM:-'1'} +export VIRT_CPUS=${VIRT_CPUS:-'10'} +export VIRT_MEM=${VIRT_MEM:-'8192'} export VIRT_DISK=${VIRT_DISK:-'30G'} -export ADAPTER_OS_NAME_PATTERN=${ADAPTER_OS_NAME_PATTERN:-'(?i)ubuntu.*'} -export ADAPTER_TARGET_SYSTEM_NAME=${ADAPTER_TARGET_SYSTEM_NAME:-'openstack'} -export HOST_ROLES=${HOST_ROLES:-'os-controller,os-image;os-ops-database,os-ops-messaging;os-network,os-block-storage-worker;os-ha;os-ha'} -export HA_VIP=${HA_VIP:-`echo $ipaddr |cut -d. -f'1 2 3'`.253} - -REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -source ${REGTEST_DIR}/regtest.conf +export HOSTNAMES=${HOSTNAMES:-'ubuntu'} +export ADAPTER_OS_PATTERN=${ADAPTER_OS_PATTERN:-'(?i)ubuntu.*'} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.82} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.82'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.82'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.82'} +export REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source ${REGTEST_DIR}/regtest6.conf +export LOCAL_REPO_URL='' diff --git a/regtest/regtest8.conf b/regtest/regtest8.conf new file mode 100644 index 00000000..d8ff6977 --- /dev/null +++ b/regtest/regtest8.conf @@ -0,0 +1,14 @@ +# conf to run 1 instance with allinone flavor +export VIRT_NUM=${VIRT_NUM:-'1'} +export VIRT_CPUS=${VIRT_CPUS:-'10'} +export VIRT_MEM=${VIRT_MEM:-'8192'} +export VIRT_DISK=${VIRT_DISK:-'30G'} +export CLUSTER_NAME=${CLUSTER_NAME:-'allinone-ubuntu'} +export ADAPTER_OS_PATTERN=${ADAPTER_OS_PATTERN:-'(?i)ubuntu.*'} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.84} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.84'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.84'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.84'} +export REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source ${REGTEST_DIR}/regtest.conf +export LOCAL_REPO_URL='' diff --git a/regtest/regtest9.conf b/regtest/regtest9.conf new file mode 100644 index 00000000..e75fab05 --- /dev/null +++ b/regtest/regtest9.conf @@ -0,0 +1,18 @@ +# conf to run openstack 2 intsances with single-contoller-multi-compute flavor +export VIRT_NUM=${VIRT_NUM:-'3'} +export VIRT_CPUS=${VIRT_CPUS:-'4'} +export VIRT_MEM=${VIRT_MEM:-'8192'} +export VIRT_DISK=${VIRT_DISK:-'30G'} +export CLUSTER_NAME=${CLUSTER_NAME:-'single-controller-ubuntu'} +export ADAPTER_OS_PATTERN=${ADAPTER_OS_PATTERN:-'(?i)ubuntu.*'} +export HOSTNAMES=${HOSTNAMES:-'controller,network,compute'} +export HOST_ROLES=${HOST_ROLES:-'controller=os-controller;network=os-network,os-block-storage-volume'} +export DEFAULT_ROLES=${DEFAULT_ROLES:-'os-compute-worker'} +export ADAPTER_FLAVOR_PATTERN=${ADAPTER_FLAVOR_PATTERN:-'single-contoller-multi-compute'} +export MANAGEMENT_IP_START=${MANAGEMENT_IP_START:-`echo $IPADDR |cut -d. -f'1 2 3'`.86} +export TENANT_IP_START=${TENANT_IP_START:-'172.16.2.86'} +export PUBLIC_IP_START=${PUBLIC_IP_START:-'172.16.3.86'} +export STORAGE_IP_START=${STORAGE_IP_START:-'172.16.4.86'} +export REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) +source ${REGTEST_DIR}/regtest.conf +export LOCAL_REPO_URL='' diff --git a/regtest/regtest_dashboard.conf b/regtest/regtest_dashboard.conf deleted file mode 100644 index bbc0c8d2..00000000 --- a/regtest/regtest_dashboard.conf +++ /dev/null @@ -1,10 +0,0 @@ -# Set test script variables -export VIRT_NUM=${VIRT_NUM:-'1'} -export VIRT_CPUS=${VIRT_CPUS:-'10'} -export VIRT_MEM=${VIRT_MEM:-'8192'} -export VIRT_DISK=${VIRT_DISK:-'20G'} -export HOST_ROLES=${HOST_ROLES:-'os-dashboard'} -export DASHBOARD_ROLE=${DASHBOARD_ROLE:-"os-dashboard"} -export DEPLOYMENT_TIMEOUT=${DEPLOYMENT_TIMEOUT:-'60'} -REGTEST_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -source ${REGTEST_DIR}/regtest.conf diff --git a/requirements.txt b/requirements.txt index 5557258c..2b1f112a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,19 +1,25 @@ +amqplib argparse -flask -flask-script -flask-restful -flask-sqlalchemy -flask-login celery -netaddr -paramiko -simplejson -requests -PyChef -redis -flask-wtf +Markdown==2.4.1 +Cheetah==2.4.1 +daemon +Flask +Flask-Login +Flask-RESTful +Flask-Script +Flask-SQLAlchemy +Flask-WTF itsdangerous importlib -MySQL-python +lazypy lockfile -daemon +MySQL-python +netaddr +paramiko==1.7.5 +PyChef +python-daemon +SQLAlchemy>=0.9.0 +simplejson +requests +redis diff --git a/service/compass-celeryd b/service/compass-celeryd new file mode 100755 index 00000000..9fdfb2da --- /dev/null +++ b/service/compass-celeryd @@ -0,0 +1,97 @@ +#!/bin/sh +# +# compassd Compass daemon +################################## + +# LSB header + +### BEGIN INIT INFO +# Provides: compassd +# Required-Start: $network $httpd +# Default-Start: 3 4 5 +# Default-Stop: 0 1 2 6 +# Short-Description: compassd +# Description: Compass daemon service +# +### END INIT INFO + +# chkconfig header + +# chkconfig: 345 98 98 +# description: This is a daemon that provides Compass daemon service +# +# Checking Sanity +DEBIAN=/etc/debian_version +SUSE=/etc/SuSE-release +CELERY=/opt/compass/bin/celery + +if [ -f $DEBIAN ]; then + . /lib/lsb/init-functions +elif [ -f $SUSE -a -r /etc/rc.status ]; then + . /etc/rc.status +else + . /etc/rc.d/init.d/functions +fi + +RETVAL=0 +start() { + echo -n "Starting Compass Celeryd: " + if [ -f $SUSE ]; then + startproc -f -p /var/run/celery-worker.pid -l /tmp/celery-worker.log "C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper $CELERY worker" + rc_status -v + RETVAL=$? + elif [ -f $DEBIAN ]; then + start_daemon -p /var/run/celery-worker.pid "C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper $CELERY worker &>/tmp/celery-worker.log & echo \$! > /var/run/celery-worker.pid" + RETVAL=$? + else + daemon --pidfile /var/run/celery-worker.pid "C_FORCE_ROOT=1 CELERY_CONFIG_MODULE=compass.utils.celeryconfig_wrapper $CELERY worker &>/tmp/celery-worker.log & echo \$! > /var/run/celery-worker.pid" + RETVAL=$? + fi + echo + return $RETVAL +} + +stop() { + echo -n "Stopping Compass Celeryd: " + if [ -f $SUSE ]; then + killproc -t 10 -p /var/run/celery-worker.pid $CELERY + rc_status -v + RETVAL=$? + elif [ -f $DEBIAN ]; then + killproc -p /var/run/celery-worker.pid $CELERY -TERM + RETVAL=$? + else + killproc -p /var/run/celery-worker.pid -d 30 $CELERY + RETVAL=$? + fi + echo +} + +restart() { + stop + start +} +case "$1" in + start|stop|restart) + $1 + ;; + status) + echo -n "Checking compass celeryd: " + if [ -f $SUSE ]; then + checkproc -v -p /var/run/celery-worker.pid $CELERY + rc_status -v + RETVAL=$? + elif [ -f $DEBIAN ]; then + status_of_proc -p /var/run/celery-worker.pid $CELERY + RETVAL=$? + else + status -p /var/run/celery-worker.pid $CELERY + RETVAL=$? + fi + ;; + *) + echo "Usage: $0 {start|stop|status|restart}" + exit 1 + ;; +esac +exit $RETVAL diff --git a/service/compass-progress-updated b/service/compass-progress-updated new file mode 100755 index 00000000..ab173ca1 --- /dev/null +++ b/service/compass-progress-updated @@ -0,0 +1,95 @@ +#!/bin/sh +# +# compassd-progress-updated Compass progress update daemon +################################## + +# LSB header + +### BEGIN INIT INFO +# Provides: compass progress updated +# Required-Start: $network $httpd +# Default-Start: 3 4 5 +# Default-Stop: 0 1 2 6 +# Short-Description: compassd +# Description: Compass daemon service +# +### END INIT INFO + +# chkconfig header + +# chkconfig: 345 99 99 +# description: This is a daemon that provides Compass daemon service +# +# Checking Sanity +DEBIAN=/etc/debian_version +SUSE=/etc/SuSE-release + +if [ -f $DEBIAN ]; then + . /lib/lsb/init-functions +elif [ -f $SUSE -a -r /etc/rc.status ]; then + . /etc/rc.status +else + . /etc/rc.d/init.d/functions +fi + +RETVAL=0 +start() { + echo -n "Starting Compass progress updated: " + if [ -f $SUSE ]; then + startproc -f -p /var/run/progress_update.pid -l /tmp/progress_update.log /opt/compass/bin/progress_update.py + rc_status -v + RETVAL=$? + elif [ -f $DEBIAN ]; then + start_daemon -p /var/run/progress_update.pid "/opt/compass/bin/progress_update.py &>/tmp/progress_update.log & echo \$! > /var/run/progress_update.pid" + RETVAL=$? + else + daemon --pidfile /var/run/progress_update.pid "/opt/compass/bin/progress_update.py &>/tmp/progress_update.log & echo \$! > /var/run/progress_update.pid" + RETVAL=$? + fi + echo +} + +stop() { + echo -n "Stopping Compass progress updated: " + if [ -f $SUSE ]; then + killproc -t 10 -p /var/run/progress_update.pid progress_updated + rc_status -v + RETVAL=$? + elif [ -f $DEBIAN ]; then + killproc -p /var/run/progress_update.pid progress_updated -TERM + RETVAL=$? + else + killproc -p /var/run/progress_update.pid -d 30 progress_updated + RETVAL=$? + fi + echo +} + +restart() { + stop + start +} +case "$1" in + start|stop|restart) + $1 + ;; + status) + echo -n "Checking compass progress_updated: " + if [ -f $SUSE ]; then + checkproc -v -p /var/run/progress_update.pid progress_updated + rc_status -v + RETVAL=$? + elif [ -f $DEBIAN ]; then + status_of_proc -p /var/run/progress_update.pid progress_updated + RETVAL=$? + else + status -p /var/run/progress_update.pid progress_updated + RETVAL=$? + fi + ;; + *) + echo "Usage: $0 {start|stop|status|restart}" + exit 1 + ;; +esac +exit $RETVAL diff --git a/setup.py b/setup.py index 25f5c311..e6c7f984 100644 --- a/setup.py +++ b/setup.py @@ -83,9 +83,6 @@ setup( install_requires=REQUIREMENTS, packages=find_packages(exclude=['compass.tests']), include_package_data=True, - #TODO login UI will be replaced by compass's own templates later - package_data={'compass': ['templates/*.jinja', 'static/js/*.js', - 'static/css/*.css', 'static/img/*.png']}, classifiers=[ 'Development Status :: 5 - Production/Stable', 'Environment :: Console', diff --git a/test-requirements.txt b/test-requirements.txt index 82584bd8..eac30daf 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -6,4 +6,4 @@ testrepository>=0.0.17 mimeparse coverage>=3.6 hacking>=0.8.0,<0.9 -virtualenv +pycrypto<=2.0.1 diff --git a/tools/install_venv.py b/tools/install_venv.py deleted file mode 100644 index 1385a3e8..00000000 --- a/tools/install_venv.py +++ /dev/null @@ -1,73 +0,0 @@ -# Copyright 2010 United States Government as represented by the -# Administrator of the National Aeronautics and Space Administration. -# All Rights Reserved. -# -# Copyright 2010 OpenStack Foundation -# Copyright 2013 IBM Corp. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -# Shamelessly copied from horizon project and renamed to Compass - -import os -import sys - -import install_venv_common as install_venv # noqa - - -def print_help(venv, root): - help = """ - Compass development environment setup is complete. - - Compass development uses virtualenv to track and manage Python - dependencies while in development and testing. - - To activate the Compass virtualenv for the extent of your current shell - session you can run: - - $ source %s/bin/activate - - Or, if you prefer, you can run commands in the virtualenv on a case by case - basis by running: - - $ %s/tools/with_venv.sh - - Also, make test will automatically use the virtualenv. - """ - print(help % (venv, root)) - - -def main(argv): - root = os.path.dirname(os.path.dirname(os.path.realpath(__file__))) - - if os.environ.get('tools_path'): - root = os.environ['tools_path'] - venv = os.path.join(root, '.venv') - if os.environ.get('venv'): - venv = os.environ['venv'] - - pip_requires = os.path.join(root, 'requirements.txt') - test_requires = os.path.join(root, 'test-requirements.txt') - py_version = "python%s.%s" % (sys.version_info[0], sys.version_info[1]) - project = 'Compass' - install = install_venv.InstallVenv(root, venv, pip_requires, test_requires, - py_version, project) - options = install.parse_args(argv) - install.check_python_version() - install.check_dependencies() - install.create_virtualenv(no_site_packages=options.no_site_packages) - install.install_dependencies() - print_help(venv, root) - -if __name__ == '__main__': - main(sys.argv) diff --git a/tools/install_venv_common.py b/tools/install_venv_common.py deleted file mode 100644 index 46822e32..00000000 --- a/tools/install_venv_common.py +++ /dev/null @@ -1,172 +0,0 @@ -# Copyright 2013 OpenStack Foundation -# Copyright 2013 IBM Corp. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -"""Provides methods needed by installation script for OpenStack development -virtual environments. - -Since this script is used to bootstrap a virtualenv from the system's Python -environment, it should be kept strictly compatible with Python 2.6. - -Synced in from openstack-common -""" - -from __future__ import print_function - -import optparse -import os -import subprocess -import sys - - -class InstallVenv(object): - - def __init__(self, root, venv, requirements, - test_requirements, py_version, - project): - self.root = root - self.venv = venv - self.requirements = requirements - self.test_requirements = test_requirements - self.py_version = py_version - self.project = project - - def die(self, message, *args): - print(message % args, file=sys.stderr) - sys.exit(1) - - def check_python_version(self): - if sys.version_info < (2, 6): - self.die("Need Python Version >= 2.6") - - def run_command_with_code(self, cmd, redirect_output=True, - check_exit_code=True): - """Runs a command in an out-of-process shell. - - Returns the output of that command. Working directory is self.root. - """ - if redirect_output: - stdout = subprocess.PIPE - else: - stdout = None - - proc = subprocess.Popen(cmd, cwd=self.root, stdout=stdout) - output = proc.communicate()[0] - if check_exit_code and proc.returncode != 0: - self.die('Command "%s" failed.\n%s', ' '.join(cmd), output) - return (output, proc.returncode) - - def run_command(self, cmd, redirect_output=True, check_exit_code=True): - return self.run_command_with_code(cmd, redirect_output, - check_exit_code)[0] - - def get_distro(self): - if (os.path.exists('/etc/fedora-release') or - os.path.exists('/etc/redhat-release')): - return Fedora( - self.root, self.venv, self.requirements, - self.test_requirements, self.py_version, self.project) - else: - return Distro( - self.root, self.venv, self.requirements, - self.test_requirements, self.py_version, self.project) - - def check_dependencies(self): - self.get_distro().install_virtualenv() - - def create_virtualenv(self, no_site_packages=True): - """Creates the virtual environment and installs PIP. - - Creates the virtual environment and installs PIP only into the - virtual environment. - """ - if not os.path.isdir(self.venv): - print('Creating venv...', end=' ') - if no_site_packages: - self.run_command(['virtualenv', '-q', '--no-site-packages', - self.venv]) - else: - self.run_command(['virtualenv', '-q', self.venv]) - print('done.') - else: - print("venv already exists...") - pass - - def pip_install(self, *args): - self.run_command(['tools/with_venv.sh', - 'pip', 'install', '--upgrade'] + list(args), - redirect_output=False) - - def install_dependencies(self): - print('Installing dependencies with pip (this can take a while)...') - - # First things first, make sure our venv has the latest pip and - # setuptools and pbr - self.pip_install('pip>=1.4') - self.pip_install('setuptools') - self.pip_install('pbr') - - self.pip_install('-r', self.requirements, '-r', self.test_requirements) - - def parse_args(self, argv): - """Parses command-line arguments.""" - parser = optparse.OptionParser() - parser.add_option('-n', '--no-site-packages', - action='store_true', - help="Do not inherit packages from global Python " - "install") - return parser.parse_args(argv[1:])[0] - - -class Distro(InstallVenv): - - def check_cmd(self, cmd): - return bool(self.run_command(['which', cmd], - check_exit_code=False).strip()) - - def install_virtualenv(self): - if self.check_cmd('virtualenv'): - return - - if self.check_cmd('easy_install'): - print('Installing virtualenv via easy_install...', end=' ') - if self.run_command(['easy_install', 'virtualenv']): - print('Succeeded') - return - else: - print('Failed') - - self.die('ERROR: virtualenv not found.\n\n%s development' - ' requires virtualenv, please install it using your' - ' favorite package management tool' % self.project) - - -class Fedora(Distro): - """This covers all Fedora-based distributions. - - Includes: Fedora, RHEL, CentOS, Scientific Linux - """ - - def check_pkg(self, pkg): - return self.run_command_with_code(['rpm', '-q', pkg], - check_exit_code=False)[1] == 0 - - def install_virtualenv(self): - if self.check_cmd('virtualenv'): - return - - if not self.check_pkg('python-virtualenv'): - self.die("Please install 'python-virtualenv'.") - - super(Fedora, self).install_virtualenv() diff --git a/tools/with_venv.sh b/tools/with_venv.sh deleted file mode 100755 index 7303990b..00000000 --- a/tools/with_venv.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -TOOLS_PATH=${TOOLS_PATH:-$(dirname $0)} -VENV_PATH=${VENV_PATH:-${TOOLS_PATH}} -VENV_DIR=${VENV_NAME:-/../.venv} -TOOLS=${TOOLS_PATH} -VENV=${VENV:-${VENV_PATH}/${VENV_DIR}} -source ${VENV}/bin/activate && "$@" From aee03228430d04a9bf47de1a941ca29b91af87ce Mon Sep 17 00:00:00 2001 From: xiaodongwang Date: Thu, 23 Oct 2014 08:50:05 -0700 Subject: [PATCH 20/23] second round of merge Change-Id: Ic76e794ce88250bb8b082f55dab7cd37526ca695 --- compass/hdsdiscovery/hdmanager.py | 5 +- compass/tests/hdsdiscovery/__init__.py | 13 + compass/tests/hdsdiscovery/test_base.py | 129 ++++ .../tests/hdsdiscovery/test_hdsdiscovery.py | 246 +++++++ compass/tests/hdsdiscovery/test_utils.py | 105 +++ compass/tests/log_analyzor/data/config | 97 +++ .../log_analyzor/test_adapter_matcher.py | 629 ++++++++++++++++++ .../tests/log_analyzor/test_file_matcher.py | 436 ++++++++++++ .../tests/log_analyzor/test_line_matcher.py | 229 +++++++ .../environments/allinone.tmpl | 4 +- install/dependency.sh | 1 + install/prepare.sh | 2 +- regtest/regtest.sh | 4 + 13 files changed, 1894 insertions(+), 6 deletions(-) create mode 100644 compass/tests/hdsdiscovery/__init__.py create mode 100755 compass/tests/hdsdiscovery/test_base.py create mode 100755 compass/tests/hdsdiscovery/test_hdsdiscovery.py create mode 100755 compass/tests/hdsdiscovery/test_utils.py create mode 100644 compass/tests/log_analyzor/data/config create mode 100755 compass/tests/log_analyzor/test_adapter_matcher.py create mode 100755 compass/tests/log_analyzor/test_file_matcher.py create mode 100755 compass/tests/log_analyzor/test_line_matcher.py diff --git a/compass/hdsdiscovery/hdmanager.py b/compass/hdsdiscovery/hdmanager.py index 81108141..38a19dbc 100644 --- a/compass/hdsdiscovery/hdmanager.py +++ b/compass/hdsdiscovery/hdmanager.py @@ -102,9 +102,10 @@ class HDManager(object): """ switch_lists = util.load_configs(setting.SWITCH_LIST_DIR) - switch_list = None + switch_list = [] for item in switch_lists: - switch_list = item['SWITCH_LIST'] + if item and 'SWITCH_LIST' in item and item['SWITCH_LIST']: + switch_list.extend(item['SWITCH_LIST']) if host in switch_list: return ("appliance", "Found", "") diff --git a/compass/tests/hdsdiscovery/__init__.py b/compass/tests/hdsdiscovery/__init__.py new file mode 100644 index 00000000..4ee55a4c --- /dev/null +++ b/compass/tests/hdsdiscovery/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/compass/tests/hdsdiscovery/test_base.py b/compass/tests/hdsdiscovery/test_base.py new file mode 100755 index 00000000..be096f9c --- /dev/null +++ b/compass/tests/hdsdiscovery/test_base.py @@ -0,0 +1,129 @@ +#!/usr/bin/python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""test hdsdiscovery base module.""" +import os +import unittest2 + +from mock import patch + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from compass.hdsdiscovery.base import BaseSnmpMacPlugin +from compass.hdsdiscovery.base import BaseSnmpVendor +from compass.hdsdiscovery.error import TimeoutError +from compass.utils import flags +from compass.utils import logsetting + + +class MockSnmpVendor(BaseSnmpVendor): + """snmp vendor mock class.""" + + def __init__(self): + BaseSnmpVendor.__init__(self, ["MockVendor", "FakeVendor"]) + + +class TestBaseSnmpMacPlugin(unittest2.TestCase): + """teset base snmp plugin class.""" + + def setUp(self): + super(TestBaseSnmpMacPlugin, self).setUp() + logsetting.init() + self.test_plugin = BaseSnmpMacPlugin('127.0.0.1', + {'version': '2c', + 'community': 'public'}) + + def tearDown(self): + del self.test_plugin + super(TestBaseSnmpMacPlugin, self).tearDown() + + @patch('compass.hdsdiscovery.utils.snmpget_by_cl') + def test_get_port(self, mock_snmpget): + """test snmp get port.""" + # Successfully get port number + mock_snmpget.return_value = 'IF-MIB::ifName.4 = STRING: ge-1/1/4' + result = self.test_plugin.get_port('4') + self.assertEqual('4', result) + + # Failed to get port number, switch is timeout + mock_snmpget.side_effect = TimeoutError("Timeout") + result = self.test_plugin.get_port('4') + self.assertIsNone(result) + + @patch('compass.hdsdiscovery.utils.snmpget_by_cl') + def test_get_vlan_id(self, mock_snmpget): + """test snmp get vlan.""" + # Port is None + self.assertIsNone(self.test_plugin.get_vlan_id(None)) + + # Port is not None + mock_snmpget.return_value = 'Q-BRIDGE-MIB::dot1qPvid.4 = Gauge32: 100' + result = self.test_plugin.get_vlan_id('4') + self.assertEqual('100', result) + + # Faild to query switch due to timeout + mock_snmpget.side_effect = TimeoutError("Timeout") + result = self.test_plugin.get_vlan_id('4') + self.assertIsNone(result) + + def test_get_mac_address(self): + """tet snmp get mac address.""" + # Correct input for mac numbers + mac_numbers = '0.224.129.230.57.173'.split('.') + mac = self.test_plugin.get_mac_address(mac_numbers) + self.assertEqual('00:e0:81:e6:39:ad', mac) + + # Incorrct input for mac numbers + mac_numbers = '0.224.129.230.57'.split('.') + mac = self.test_plugin.get_mac_address(mac_numbers) + self.assertIsNone(mac) + + +class BaseTest(unittest2.TestCase): + """base test class.""" + + def setUp(self): + super(BaseTest, self).setUp() + logsetting.init() + + def tearDown(self): + super(BaseTest, self).tearDown() + + def test_base_snmp_vendor(self): + """test base snmp vendor.""" + fake = MockSnmpVendor() + + is_vendor = fake.is_this_vendor("FakeVendor 1.1") + + self.assertTrue(is_vendor) + + # check case-insensitive match + self.assertFalse(fake.is_this_vendor("fakevendor1.1")) + + # breaks word-boudary match + self.assertFalse(fake.is_this_vendor("FakeVendor1.1")) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/hdsdiscovery/test_hdsdiscovery.py b/compass/tests/hdsdiscovery/test_hdsdiscovery.py new file mode 100755 index 00000000..f93745ac --- /dev/null +++ b/compass/tests/hdsdiscovery/test_hdsdiscovery.py @@ -0,0 +1,246 @@ +#!/usr/bin/python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""test hdsdiscovery module.""" +import os +import unittest2 + +from mock import Mock +from mock import patch + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from compass.hdsdiscovery.hdmanager import HDManager +from compass.hdsdiscovery.vendors.huawei.huawei import Huawei +from compass.hdsdiscovery.vendors.huawei.plugins.mac import Mac +from compass.hdsdiscovery.vendors.ovswitch.plugins.mac import Mac as OVSMac +from compass.utils import flags +from compass.utils import logsetting + + +SNMP_V2_CREDENTIALS = {'version': '2c', + 'community': 'public'} + + +class HuaweiTest(unittest2.TestCase): + """test huawei switch snmp get.""" + + def setUp(self): + super(HuaweiTest, self).setUp() + logsetting.init() + self.huawei = Huawei() + self.sys_info = 'Huawei Technologies' + + def tearDown(self): + del self.huawei + super(HuaweiTest, self).tearDown() + + def test_is_this_vendor(self): + """test device vendor is haiwei.""" + #Incorrect system information + incorrect_sys_info = "xxx" + self.assertFalse( + self.huawei.is_this_vendor(incorrect_sys_info)) + + #Correct vendor + self.assertTrue( + self.huawei.is_this_vendor(self.sys_info)) + + +class HuaweiMacTest(unittest2.TestCase): + """test get mac from huawei device.""" + + def setUp(self): + super(HuaweiMacTest, self).setUp() + logsetting.init() + host = '192.168.1.1' + credential = {'version': '2c', 'community': 'public'} + self.mac_plugin = Mac(host, credential) + + def tearDown(self): + del self.mac_plugin + super(HuaweiMacTest, self).tearDown() + + @patch("compass.hdsdiscovery.utils.snmpwalk_by_cl") + def test_process_data(self, mock_snmpwalk): + """get progress data function.""" + # GET operation haven't been implemeneted. + self.assertIsNone(self.mac_plugin.process_data('GET')) + + # SNMP Walk Timeout + #utils.snmpwalk_by_cl = Mock(return_value=None) + mock_snmpwalk.return_value = None + self.assertIsNone(self.mac_plugin.process_data()) + + # Successfully get MAC addresses from the switch + mock_snmp_walk_result = [ + {"iid": "40.110.212.77.198.190.88.1.48", "value": "10"}, + {"iid": "40.110.212.100.199.74.88.1.48", "value": "11"}, + {"iid": "0.12.41.53.220.2.88.1.48", "value": "12"} + ] + expected_mac_info = [ + {"mac": "28:6e:d4:4d:c6:be", "port": "1", "vlan": "88"}, + {"mac": "28:6e:d4:64:c7:4a", "port": "2", "vlan": "88"}, + {"mac": "00:0c:29:35:dc:02", "port": "3", "vlan": "88"} + ] + #utils.snmpwalk_by_cl = Mock(return_value=mock_snmp_walk_result) + mock_snmpwalk.return_value = mock_snmp_walk_result + self.mac_plugin.get_port = Mock() + self.mac_plugin.get_port.side_effect = ["1", "2", "3"] + result = self.mac_plugin.process_data() + self.assertEqual(expected_mac_info, result) + + +class OVSMacTest(unittest2.TestCase): + """ovs switch test.""" + + def setUp(self): + super(OVSMacTest, self).setUp() + logsetting.init() + self.host = '10.145.88.160' + self.credential = {'username': 'root', 'password': 'huawei'} + + @patch('compass.hdsdiscovery.utils.ssh_remote_execute') + def test_scan(self, ovs_mock): + """test scan ovs switch.""" + ovs_mock.return_value = [] + mac_instance = OVSMac(self.host, self.credential) + self.assertIsNone(mac_instance.scan()) + del mac_instance + + ovs_mock.return_value = ['\n', '\n', '\n'] + mac_instance = OVSMac(self.host, self.credential) + self.assertEqual([], mac_instance.scan()) + del mac_instance + + +class HDManagerTest(unittest2.TestCase): + """test HDManager.""" + + def setUp(self): + super(HDManagerTest, self).setUp() + logsetting.init() + self.manager = HDManager() + self.correct_host = '33.33.33.1' + self.correct_host_2 = '127.0.0.1' + self.correct_credential = {'version': '2c', 'community': 'public'} + + def tearDown(self): + del self.manager + super(HDManagerTest, self).tearDown() + + @patch('compass.hdsdiscovery.hdmanager.HDManager.get_sys_info') + def test_get_vendor(self, sys_info_mock): + """test get_vendor.""" + # Incorrect ip + vendor, state, err = self.manager.get_vendor('1234.1.1.1', + self.correct_credential) + self.assertIsNone(vendor) + self.assertEqual('error', state) + + # Incorrect credential + incorr_cred = {'version': '1v', 'community': 'private'} + vendor, state, err = self.manager.get_vendor(self.correct_host, + incorr_cred) + self.assertIsNone(vendor) + self.assertEqual('error', state) + + # SNMP get system description Timeout + excepted_err_msg = 'Timeout: No Response from 127.0.0.1.' + sys_info_mock.return_value = (None, excepted_err_msg) + result, state, err = self.manager.get_vendor(self.correct_host, + self.correct_credential) + self.assertIsNone(result) + self.assertEqual(state, 'unreachable') + self.assertEqual(err, excepted_err_msg) + + # No vendor plugin supported + excepted_err_msg = 'Not supported switch vendor!' + sys_info_mock.return_value = ('xxxxxx', excepted_err_msg) + result, state, err = self.manager.get_vendor(self.correct_host, + self.correct_credential) + self.assertIsNone(result) + self.assertEqual(state, 'notsupported') + self.assertEqual(err, excepted_err_msg) + + # Found the correct vendor + sys_info = ['Huawei Versatile Routing Platform Software', + 'ProCurve J9089A Switch 2610-48-PWR, revision R.11.25', + 'Pica8 XorPlus Platform Software'] + expected_vendor_names = ['huawei', 'hp', 'pica8', 'appliance'] + for info, expected_vendor in zip(sys_info, expected_vendor_names): + sys_info_mock.return_value = (info, '') + # the result is a tuple ($vendor, $state, $error_message) + result = self.manager.get_vendor(self.correct_host, + self.correct_credential) + self.assertEqual(result[0], expected_vendor) + + @patch('compass.hdsdiscovery.hdmanager.HDManager.get_sys_info') + def test_is_valid_vendor(self, sys_info_mock): + """test is_valid_vendor.""" + #non-exsiting vendor under vendors directory + self.assertFalse( + self.manager.is_valid_vendor(self.correct_host, + self.correct_credential, + 'xxxx') + ) + + #No system description retrieved + sys_info_mock.return_value = (None, 'TIMEOUT') + self.assertFalse( + self.manager.is_valid_vendor(self.correct_host, + self.correct_credential, + 'pica8') + ) + + #Incorrect vendor name + sys_info = 'Pica8 XorPlus Platform Software' + sys_info_mock.return_value = (sys_info, '') + self.assertFalse( + self.manager.is_valid_vendor(self.correct_host, + self.correct_credential, + 'huawei') + ) + + #Correct vendor name + self.assertTrue( + self.manager.is_valid_vendor(self.correct_host, + self.correct_credential, + 'pica8') + ) + + def test_learn(self): + """test learn.""" + #non-exsiting plugin + self.assertIsNone(self.manager.learn(self.correct_host, + self.correct_credential, + 'huawei', 'xxx')) + + #non-existing vendor + self.assertIsNone(self.manager.learn(self.correct_host, + self.correct_credential, + 'xxxx', 'mac')) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/hdsdiscovery/test_utils.py b/compass/tests/hdsdiscovery/test_utils.py new file mode 100755 index 00000000..46778ba1 --- /dev/null +++ b/compass/tests/hdsdiscovery/test_utils.py @@ -0,0 +1,105 @@ +#!/usr/bin/python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""test hdsdiscovery.utils module.""" +from mock import Mock +from mock import patch +import os +import unittest2 + + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from compass.hdsdiscovery.error import TimeoutError +from compass.hdsdiscovery import utils +from compass.utils import flags +from compass.utils import logsetting + + +SNMP_V2_CREDENTIALS = {'version': '2c', + 'community': 'public'} + + +class UtilsTest(unittest2.TestCase): + """test huawei switch snmp get.""" + + def setUp(self): + super(UtilsTest, self).setUp() + logsetting.init() + self.host = "127.0.0.1" + self.credentials = SNMP_V2_CREDENTIALS + + def tearDown(self): + super(UtilsTest, self).tearDown() + + def test_load_module(self): + """get load_module function.""" + # Successfully load HUAWEI module + huawei_vendor_path = "/".join( + (os.path.dirname( + os.path.dirname(os.path.dirname(os.path.realpath(__file__)))), + "hdsdiscovery/vendors/huawei") + ) + + # No module found + self.assertIsNone(utils.load_module("xxx", huawei_vendor_path)) + + @patch("compass.hdsdiscovery.utils.exec_command") + def test_snmpget_by_cl(self, mock_exec_command): + oid = "sysDescr.0" + # Incorrect credentials + incorr_credentials = {"version": "1v", "community": "public"} + self.assertIsNone(utils.snmpget_by_cl(self.host, + incorr_credentials, + oid)) + # Switch timeout, failed to execute SNMPGET + mock_exec_command.return_value = (1, None, "Timeout") + with self.assertRaises(TimeoutError): + utils.snmpget_by_cl(self.host, self.credentials, oid) + + # Successfully get system information + mock_exec_command.return_value = (0, "Huawei Technologies", None) + result = utils.snmpget_by_cl(self.host, self.credentials, oid) + self.assertEqual("Huawei Technologies", result) + + def test_snmpwalk_by_cl(self): + oid = "BRIDGE-MIB::dot1dTpFdbPort" + # the result of SNMPWALK is None + utils.exec_command = Mock(return_value=(0, None, None)) + result = utils.snmpwalk_by_cl(self.host, self.credentials, oid) + self.assertEqual([], result) + + # Successfully execute SNMPWALK + return_value = ("xxx.0.12.41.112.143.193 = INTEGER: 47\n" + "xxx.0.12.41.139.17.124 = INTEGER: 47\n") + expected_result = [ + {"iid": "0.12.41.112.143.193", "value": "47"}, + {"iid": "0.12.41.139.17.124", "value": "47"} + ] + utils.exec_command = Mock(return_value=(0, return_value, None)) + result = utils.snmpwalk_by_cl(self.host, self.credentials, oid) + self.assertEqual(expected_result, result) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/log_analyzor/data/config b/compass/tests/log_analyzor/data/config new file mode 100644 index 00000000..aab65d49 --- /dev/null +++ b/compass/tests/log_analyzor/data/config @@ -0,0 +1,97 @@ +ADAPTERS = [ + {'name': 'CentOS_openstack', 'os': 'CentOS', 'target_system': 'openstack'}, +] +ROLES = [ + {'name': 'os-single-controller', 'target_system': 'openstack'}, + {'name': 'os-network', 'target_system': 'openstack'}, + {'name': 'os-compute', 'target_system': 'openstack'}, +] +SWITCHES = [ + {'ip': '1.2.3.4', 'vendor': 'huawei', 'credential': {'version': 'v2c', 'community': 'public'}}, +] +MACHINES_BY_SWITCH = { + '1.2.3.4': [ + {'mac': '00:00:01:02:03:04', 'port': 1, 'vlan': 1}, + ], +} +CLUSTERS = [ + { + 'name': 'cluster1', + 'adapter': 'CentOS_openstack', + 'mutable': False, + 'security': { + 'server_credentials': { + 'username': 'root', 'password': 'huawei' + }, + 'service_credentials': { + 'username': 'service', 'password': 'huawei' + }, + 'console_credentials': { + 'username': 'admin', 'password': 'huawei' + } + }, + 'networking': { + 'interfaces': { + 'management': { + 'nic': 'eth0', + 'promisc': 0, + 'netmask': '255.255.255.0', + 'ip_end': '192.168.20.200', + 'gateway': '', + 'ip_start': '192.168.20.100' + }, + 'storage': { + 'nic': 'eth0', + 'promisc': 0, + 'netmask': '255.255.254.0', + 'ip_end': '10.145.88.200', + 'gateway': '10.145.88.1', + 'ip_start': '10.145.88.100' + }, + 'public': { + 'nic': 'eth2', + 'promisc': 1, + 'netmask': '255.255.254.0', + 'ip_end': '10.145.88.255', + 'gateway': '10.145.88.1', + 'ip_start': '10.145.88.100' + }, + 'tenant': { + 'nic': 'eth0', + 'promisc': 0, + 'netmask': '255.255.254.0', + 'ip_end': '10.145.88.120', + 'gateway': '10.145.88.1', + 'ip_start': '10.145.88.100' + } + }, + 'global': { + 'nameservers': '192.168.20.254', + 'proxy': 'http://192.168.20.254:3128', + 'ntp_server': '192.168.20.254', + 'search_path': 'ods.com', + 'gateway': '10.145.88.1' + }, + }, + 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', + }, +] +HOSTS_BY_CLUSTER = { + 'cluster1': [ + { + 'hostname': 'server1', + 'mac': '00:00:01:02:03:04', + 'mutable': False, + 'config': { + 'networking': { + 'interfaces': { + 'management': { + 'ip': '192.168.20.100', + }, + }, + }, + 'roles': ["os-single-controller", "os-network", "os-compute"], + }, + }, + ], +} diff --git a/compass/tests/log_analyzor/test_adapter_matcher.py b/compass/tests/log_analyzor/test_adapter_matcher.py new file mode 100755 index 00000000..cb5fe08a --- /dev/null +++ b/compass/tests/log_analyzor/test_adapter_matcher.py @@ -0,0 +1,629 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""test adapter matcher module""" + +import os +import unittest2 + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from compass.db import database +from compass.db.model import Adapter +from compass.db.model import Cluster +from compass.db.model import ClusterHost +from compass.db.model import ClusterState +from compass.db.model import HostState +from compass.db.model import Machine +from compass.db.model import Role +from compass.db.model import Switch + +from compass.log_analyzor import adapter_matcher +from compass.log_analyzor.file_matcher import FileMatcher +from compass.log_analyzor.line_matcher import IncrementalProgress +from compass.log_analyzor.line_matcher import LineMatcher +from compass.log_analyzor import progress_calculator + +from compass.utils import flags +from compass.utils import logsetting + + +class TestAdapterItemMatcher(unittest2.TestCase): + def setUp(self): + super(TestAdapterItemMatcher, self).setUp() + logsetting.init() + + def tearDown(self): + super(TestAdapterItemMatcher, self).tearDown() + + def test_update_progress(self): + test_update_progress_range = { + 'min_progress': 0.3, + 'max_progress': 0.7, + } + expected = ['sys.log', 0.0, 0.1] + file_matchers = [ + FileMatcher( + filename='sys.log', + min_progress=0.0, + max_progress=0.1, + line_matchers={ + 'start': LineMatcher( + pattern=r'NOTICE (?P.*)', + progress=IncrementalProgress(.1, .9, .1), + message_template='%(message)s', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='exit' + ), + } + ), + ] + matcher = adapter_matcher.AdapterItemMatcher( + file_matchers=file_matchers) + matcher.update_progress_range( + **test_update_progress_range) + file_matcher = matcher.file_matchers_[0] + result = [] + result.append(file_matcher.filename_) + result.append(file_matcher.min_progress_) + result.append(file_matcher.max_progress_) + self.assertEqual(expected, result) + + +class TestOSMatcher(unittest2.TestCase): + def setUp(self): + super(TestOSMatcher, self).setUp() + self.item_matcher = progress_calculator\ + .OS_INSTALLER_CONFIGURATIONS[ + 'CentOS' + ] + logsetting.init() + + def tearDown(self): + super(TestOSMatcher, self).tearDown() + + def test_min_larger_than_max(self): + test_min_larger_than_max = { + 'os_installer_name': 'os_installer', + 'os_pattern': r'.*.', + 'item_matcher': None, + 'min_progress': 1.0, + 'max_progress': 0.0, + } + self.assertRaises( + IndexError, + adapter_matcher.OSMatcher, + **test_min_larger_than_max + ) + + def test_progress_exceed_one(self): + test_progress_exceed_one = { + 'os_installer_name': 'os_installer', + 'os_pattern': r'.*.', + 'item_matcher': None, + 'min_progress': 1.1, + 'max_progress': 1.1, + } + self.assertRaises( + IndexError, + adapter_matcher.OSMatcher, + **test_progress_exceed_one + ) + + def test_match(self): + test_match = { + 'os_installer_name': 'cobbler', + 'os_pattern': r'CentOS.*', + 'item_matcher': self.item_matcher, + 'min_progress': 0.0, + 'max_progress': 0.6, + } + matcher = adapter_matcher.OSMatcher( + **test_match) + self.assertTrue(matcher.match( + 'cobbler', + 'CentOS6.4')) + + def test_installer_unmatch(self): + test_installer_unmatch = { + 'os_installer_name': 'razor', + 'os_pattern': r'CentOS.*', + 'item_matcher': self.item_matcher, + 'min_progress': 0.0, + 'max_progress': 0.6, + } + matcher = adapter_matcher.OSMatcher( + **test_installer_unmatch) + self.assertFalse(matcher.match( + 'cobbler', + 'CentOS6.4')) + + def test_os_unmatch(self): + test_os_unmatch = { + 'os_installer_name': 'cobbler', + 'os_pattern': r'Ubuntu.*', + 'item_matcher': self.item_matcher, + 'min_progress': 0.0, + 'max_progress': 0.6, + } + matcher = adapter_matcher.OSMatcher( + **test_os_unmatch) + self.assertFalse(matcher.match( + 'cobbler', + 'CentOS6.4')) + + def test_both_unmatch(self): + test_both_unmatch = { + 'os_installer_name': 'razor', + 'os_pattern': r'Ubuntu.*', + 'item_matcher': self.item_matcher, + 'min_progress': 0.0, + 'max_progress': 0.6, + } + matcher = adapter_matcher.OSMatcher( + **test_both_unmatch) + self.assertFalse(matcher.match( + 'cobbler', + 'CentOS6.4')) + + +class TestPackageMatcher(unittest2.TestCase): + def setUp(self): + super(TestPackageMatcher, self).setUp() + self.item_matcher = progress_calculator\ + .PACKAGE_INSTALLER_CONFIGURATIONS[ + 'openstack' + ] + logsetting.init() + + def tearDown(self): + super(TestPackageMatcher, self).tearDown() + + def test_match(self): + test_match = { + 'package_installer_name': 'chef', + 'target_system': 'openstack', + 'item_matcher': self.item_matcher, + 'min_progress': 0.6, + 'max_progress': 1.0, + } + matcher = adapter_matcher.PackageMatcher( + **test_match) + self.assertTrue(matcher.match( + 'chef', + 'openstack')) + + def test_installer_unmatch(self): + test_installer_unmatch = { + 'package_installer_name': 'puppet', + 'target_system': 'openstack', + 'item_matcher': self.item_matcher, + 'min_progress': 0.6, + 'max_progress': 1.0, + } + matcher = adapter_matcher.PackageMatcher( + **test_installer_unmatch) + self.assertFalse(matcher.match( + 'chef', + 'openstack')) + + def test_target_system_unmatch(self): + test_target_system_unmatch = { + 'package_installer_name': 'chef', + 'target_system': 'hadoop', + 'item_matcher': self.item_matcher, + 'min_progress': 0.6, + 'max_progress': 1.0, + } + matcher = adapter_matcher.PackageMatcher( + **test_target_system_unmatch) + self.assertFalse(matcher.match( + 'chef', + 'openstack')) + + def test_both_unmatch(self): + test_both_unmatch = { + 'package_installer_name': 'puppet', + 'target_system': 'hadoop', + 'item_matcher': self.item_matcher, + 'min_progress': 0.6, + 'max_progress': 1.0, + } + matcher = adapter_matcher.PackageMatcher( + **test_both_unmatch) + self.assertFalse(matcher.match( + 'chef', + 'openstack')) + + +class TestAdapterMatcher(unittest2.TestCase): + def setUp(self): + super(TestAdapterMatcher, self).setUp() + self.os_item_matcher = progress_calculator\ + .OS_INSTALLER_CONFIGURATIONS[ + 'CentOS' + ] + self.package_item_matcher = progress_calculator\ + .PACKAGE_INSTALLER_CONFIGURATIONS[ + 'openstack' + ] + logsetting.init() + database.create_db() + + def tearDown(self): + super(TestAdapterMatcher, self).tearDown() + database.drop_db() + + def test_match(self): + test_match = { + 'os_matcher': { + 'os_installer_name': 'cobbler', + 'os_pattern': 'CentOS.*', + 'item_matcher': self.os_item_matcher, + 'min_progress': 0.0, + 'max_progress': 0.6 + }, + 'package_matcher': { + 'package_installer_name': 'chef', + 'target_system': 'openstack', + 'item_matcher': self.package_item_matcher, + 'min_progress': 0.6, + 'max_progress': 1.0 + } + } + os_matcher = adapter_matcher.OSMatcher( + **test_match['os_matcher']) + package_matcher = adapter_matcher.PackageMatcher( + **test_match['package_matcher']) + matcher = adapter_matcher.AdapterMatcher( + os_matcher, package_matcher) + + self.assertTrue( + matcher.match( + 'cobbler', 'CentOS6.4', + 'chef', 'openstack')) + + def test_os_unmatch(self): + test_os_unmatch = { + 'os_matcher': { + 'os_installer_name': 'razor', + 'os_pattern': 'CentOS.*', + 'item_matcher': self.os_item_matcher, + 'min_progress': 0.0, + 'max_progress': 0.6 + }, + 'package_matcher': { + 'package_installer_name': 'chef', + 'target_system': 'openstack', + 'item_matcher': self.package_item_matcher, + 'min_progress': 0.6, + 'max_progress': 1.0 + } + } + os_matcher = adapter_matcher.OSMatcher( + **test_os_unmatch['os_matcher']) + package_matcher = adapter_matcher.PackageMatcher( + **test_os_unmatch['package_matcher']) + matcher = adapter_matcher.AdapterMatcher( + os_matcher, package_matcher) + + self.assertFalse( + matcher.match( + 'cobbler', 'CentOS6.4', + 'chef', 'openstack')) + + def test_package_unmatch(self): + test_package_unmatch = { + 'os_matcher': { + 'os_installer_name': 'cobbler', + 'os_pattern': 'CentOS.*', + 'item_matcher': self.os_item_matcher, + 'min_progress': 0.0, + 'max_progress': 0.6 + }, + 'package_matcher': { + 'package_installer_name': 'puppet', + 'target_system': 'openstack', + 'item_matcher': self.package_item_matcher, + 'min_progress': 0.6, + 'max_progress': 1.0 + } + } + os_matcher = adapter_matcher.OSMatcher( + **test_package_unmatch['os_matcher']) + package_matcher = adapter_matcher.PackageMatcher( + **test_package_unmatch['package_matcher']) + matcher = adapter_matcher.AdapterMatcher( + os_matcher, package_matcher) + + self.assertFalse( + matcher.match( + 'cobbler', 'CentOS6.4', + 'chef', 'openstack')) + + def test_both_unmatch(self): + test_both_unmatch = { + 'os_matcher': { + 'os_installer_name': 'cobbler', + 'os_pattern': 'Ubuntu*', + 'item_matcher': self.os_item_matcher, + 'min_progress': 0.0, + 'max_progress': 0.6 + }, + 'package_matcher': { + 'package_installer_name': 'chef', + 'target_system': 'hadoop', + 'item_matcher': self.package_item_matcher, + 'min_progress': 0.6, + 'max_progress': 1.0 + } + } + os_matcher = adapter_matcher.OSMatcher( + **test_both_unmatch['os_matcher']) + package_matcher = adapter_matcher.PackageMatcher( + **test_both_unmatch['package_matcher']) + matcher = adapter_matcher.AdapterMatcher( + os_matcher, package_matcher) + + self.assertFalse( + matcher.match( + 'cobbler', 'CentOS6.4', + 'chef', 'openstack')) + + def test_update_progress(self): + config = { + 'ADAPTERS': [ + { + 'name': 'CentOS_openstack', + 'os': 'CentOS', + 'target_system': 'openstack', + }, + ], + 'ROLES': [ + { + 'name': 'os-single-controller', + 'target_system': 'openstack', + }, + { + 'name': 'os-network', + 'target_system': 'openstack', + }, + { + 'name': 'os-compute', + 'target_system': 'openstack', + }, + ], + 'SWITCHES': [ + { + 'ip': '1.2.3.4', + 'vendor': 'huawei', + 'credential': { + 'version': 'v2c', + 'comunity': 'public', + } + }, + ], + 'MACHINES_BY_SWITCH': { + '1.2.3.4': [ + { + 'mac': '00:00:01:02:03:04', + 'port': 1, + 'vlan': 1 + }, + ], + }, + 'CLUSTERS': [ + { + 'name': 'cluster1', + 'adapter': 'CentOS_openstack', + 'mutable': False, + 'security': { + 'server_credentials': { + 'username': 'root', + 'password': 'huawei' + }, + 'service_credentials': { + 'username': 'service', + 'password': 'huawei' + }, + 'console_credentials': { + 'username': 'admin', + 'password': 'huawei' + } + }, + 'networking': { + 'interfaces': { + 'management': { + 'nic': 'eth0', + 'promisc': 0, + 'netmask': '255.255.255.0', + 'ip_end': '192.168.20.200', + 'gateway': '', + 'ip_start': '192.168.20.100' + }, + 'storage': { + 'nic': 'eth0', + 'promisc': 0, + 'netmask': '255.255.254.0', + 'ip_end': '10.145.88.200', + 'gateway': '10.145.88.1', + 'ip_start': '10.145.88.100' + }, + 'public': { + 'nic': 'eth2', + 'promisc': 1, + 'netmask': '255.255.254.0', + 'ip_end': '10.145.88.255', + 'gateway': '10.145.88.1', + 'ip_start': '10.145.88.100' + }, + 'tenant': { + 'nic': 'eth0', + 'promisc': 0, + 'netmask': '255.255.254.0', + 'ip_end': '10.145.88.120', + 'gateway': '10.145.88.1', + 'ip_start': '10.145.88.100' + } + }, + 'global': { + 'nameservers': '192.168.20.254', + 'proxy': 'http://192.168.20.254:3128', + 'ntp_server': '192.168.20.254', + 'search_path': 'ods.com', + 'gateway': '10.145.88.1' + }, + }, + 'partition': '/home 20%%;/tmp 10%%;/var 30%%;', + }, + ], + 'HOSTS_BY_CLUSTER': { + 'cluster1': [ + { + 'hostname': 'server1', + 'mac': '00:00:01:02:03:04', + 'mutable': False, + 'config': { + 'networking': { + 'interfaces': { + 'management': { + 'ip': '192.168.20.100', + }, + }, + }, + 'roles': [ + "os-single-controller", + "os-network", + "os-compute" + ], + }, + }, + ], + }, + } + self._prepare_database(config) + cluster_hosts = {} + with database.session() as session: + clusters = session.query(Cluster).all() + for cluster in clusters: + cluster_hosts[cluster.id] = [ + host.id for host in cluster.hosts] + + test_update_progress = { + 'os_matcher': { + 'os_installer_name': 'cobbler', + 'os_pattern': 'CentOS.*', + 'item_matcher': self.os_item_matcher, + 'min_progress': 0.0, + 'max_progress': 0.6 + }, + 'package_matcher': { + 'package_installer_name': 'chef', + 'target_system': 'openstack', + 'item_matcher': self.package_item_matcher, + 'min_progress': 0.6, + 'max_progress': 1.0 + } + } + os_matcher = adapter_matcher.OSMatcher( + **test_update_progress['os_matcher']) + package_matcher = adapter_matcher.PackageMatcher( + **test_update_progress['package_matcher']) + matcher = adapter_matcher.AdapterMatcher( + os_matcher, package_matcher) + for cluster_id in cluster_hosts.keys(): + matcher.update_progress( + cluster_id, + cluster_hosts[cluster_id]) + + expected_cluster_state = { + 'state': 'INSTALLING', + 'progress': 0.0 + } + cluster = {} + host = {} + with database.session(): + cluster_state = session.query(ClusterState).all() + cluster['state'] = cluster_state[0].state + cluster['progress'] = cluster_state[0].progress + self.assertEqual(expected_cluster_state, + cluster) + + def _prepare_database(self, config): + with database.session() as session: + adapters = {} + for adapter_config in config['ADAPTERS']: + adapter = Adapter(**adapter_config) + session.add(adapter) + adapters[adapter_config['name']] = adapter + + roles = {} + for role_config in config['ROLES']: + role = Role(**role_config) + session.add(role) + roles[role_config['name']] = role + + switches = {} + for switch_config in config['SWITCHES']: + switch = Switch(**switch_config) + session.add(switch) + switches[switch_config['ip']] = switch + + machines = {} + for switch_ip, machine_configs in ( + config['MACHINES_BY_SWITCH'].items() + ): + for machine_config in machine_configs: + machine = Machine(**machine_config) + machines[machine_config['mac']] = machine + machine.switch = switches[switch_ip] + session.add(machine) + + clusters = {} + for cluster_config in config['CLUSTERS']: + adapter_name = cluster_config['adapter'] + del cluster_config['adapter'] + cluster = Cluster(**cluster_config) + clusters[cluster_config['name']] = cluster + cluster.adapter = adapters[adapter_name] + cluster.state = ClusterState( + state="INSTALLING", progress=0.0, message='') + session.add(cluster) + + hosts = {} + for cluster_name, host_configs in ( + config['HOSTS_BY_CLUSTER'].items() + ): + for host_config in host_configs: + mac = host_config['mac'] + del host_config['mac'] + host = ClusterHost(**host_config) + hosts['%s.%s' % ( + host_config['hostname'], cluster_name)] = host + host.machine = machines[mac] + host.cluster = clusters[cluster_name] + host.state = HostState( + state="INSTALLING", progress=0.0, message='') + session.add(host) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/log_analyzor/test_file_matcher.py b/compass/tests/log_analyzor/test_file_matcher.py new file mode 100755 index 00000000..cce33299 --- /dev/null +++ b/compass/tests/log_analyzor/test_file_matcher.py @@ -0,0 +1,436 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""test file matcher module""" + +import datetime +import mock +import os +import unittest2 + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from compass.db import database +from compass.db.model import Adapter +from compass.db.model import Cluster +from compass.db.model import ClusterHost +from compass.db.model import ClusterState +from compass.db.model import HostState +from compass.db.model import LogProgressingHistory +from compass.db.model import Machine +from compass.db.model import Role +from compass.db.model import Switch + +from compass.log_analyzor import file_matcher + +from compass.log_analyzor.line_matcher import IncrementalProgress +from compass.log_analyzor.line_matcher import LineMatcher +from compass.log_analyzor.line_matcher import Progress + +from compass.utils import flags +from compass.utils import logsetting + + +def prepare_database(config): + with database.session() as session: + adapters = {} + for adapter_config in config['ADAPTERS']: + adapter = Adapter(**adapter_config) + session.add(adapter) + adapters[adapter_config['name']] = adapter + + roles = {} + for role_config in config['ROLES']: + role = Role(**role_config) + session.add(role) + roles[role_config['name']] = role + + switches = {} + for switch_config in config['SWITCHES']: + switch = Switch(**switch_config) + session.add(switch) + switches[switch_config['ip']] = switch + + machines = {} + for switch_ip, machine_configs in ( + config['MACHINES_BY_SWITCH'].items() + ): + for machine_config in machine_configs: + machine = Machine(**machine_config) + machines[machine_config['mac']] = machine + machine.switch = switches[switch_ip] + session.add(machine) + + clusters = {} + for cluster_config in config['CLUSTERS']: + adapter_name = cluster_config['adapter'] + del cluster_config['adapter'] + cluster = Cluster(**cluster_config) + clusters[cluster_config['name']] = cluster + cluster.adapter = adapters[adapter_name] + cluster.state = ClusterState( + state="INSTALLING", progress=0.0, message='') + session.add(cluster) + + hosts = {} + for cluster_name, host_configs in ( + config['HOSTS_BY_CLUSTER'].items() + ): + for host_config in host_configs: + mac = host_config['mac'] + del host_config['mac'] + host = ClusterHost(**host_config) + hosts['%s.%s' % ( + host_config['hostname'], cluster_name)] = host + host.machine = machines[mac] + host.cluster = clusters[cluster_name] + host.state = HostState( + state="INSTALLING", progress=0.0, message='') + session.add(host) + + +class TestFilterFileExist(unittest2.TestCase): + def setUp(self): + super(TestFilterFileExist, self).setUp() + logsetting.init() + + def tearDown(self): + super(TestFilterFileExist, self).tearDown() + + def test_filter(self): + pathname = 'NeverExists' + filter = file_matcher.FilterFileExist() + res = filter.filter(pathname) + self.assertFalse(res) + + +class TestCompositeFileFilter(unittest2.TestCase): + def setUp(self): + super(TestCompositeFileFilter, self).setUp() + self.file_path = os.path.dirname(os.path.abspath(__file__)) + logsetting.init() + + def tearDown(self): + super(TestCompositeFileFilter, self).tearDown() + + def test_filter(self): + filter_list = [ + file_matcher.FilterFileExist(), + file_matcher.FilterFileExist(), + ] + exists = self.file_path + '/test_file_matcher.py' + non_exists = '/nonexists' + composite_filter = file_matcher.CompositeFileFilter( + filter_list) + self.assertTrue( + composite_filter.filter(exists)) + self.assertFalse( + composite_filter.filter(non_exists)) + + def test_append_filter(self): + filter_list = [ + file_matcher.FilterFileExist(), + file_matcher.FilterFileExist(), + ] + composite_filter = file_matcher.CompositeFileFilter( + filter_list) + new_filter = file_matcher.FilterFileExist() + composite_filter.append_filter(new_filter) + self.assertEqual(3, len(composite_filter.filters_)) + + +class TestFileReader(unittest2.TestCase): + def setUp(self): + super(TestFileReader, self).setUp() + logsetting.init() + database.create_db() + self.config_file = '%s/data/config' % ( + os.path.dirname(os.path.abspath(__file__))) + + def tearDown(self): + super(TestFileReader, self).tearDown() + database.drop_db() + + def test_get_empty_history(self): + config_locals = {} + config_globals = {} + execfile(self.config_file, config_globals, config_locals) + prepare_database(config_locals) + expected = { + 'matcher_name': 'start', + 'progress': 0.0, + 'message': '', + 'severity': None + } + res = {} + reader = file_matcher.FileReader('dummy') + history = reader.get_history() + res.update( + { + 'matcher_name': history[0], + 'progress': history[1].progress, + 'message': history[1].message, + 'severity': history[1].severity + }) + self.assertEqual(expected, res) + + def test_get_existing_history(self): + config_locals = {} + config_globals = {} + execfile(self.config_file, config_globals, config_locals) + prepare_database(config_locals) + with database.session() as session: + history = LogProgressingHistory( + line_matcher_name='start', + progress=0.5, + message='dummy', + severity='INFO', + position=0, + partial_line='', + pathname='dummy') + session.add(history) + + expected = { + 'matcher_name': 'start', + 'progress': 0.5, + 'message': 'dummy', + 'severity': 'INFO' + } + res = {} + reader = file_matcher.FileReader('dummy') + history = reader.get_history() + res.update({ + 'matcher_name': history[0], + 'progress': history[1].progress, + 'message': history[1].message, + 'severity': history[1].severity + }) + self.assertEqual(expected, res) + + def test_update_history_from_none(self): + config_locals = {} + config_globals = {} + execfile(self.config_file, config_globals, config_locals) + prepare_database(config_locals) + + expected = { + 'progress': 0.5, + 'line_matcher_name': 'start' + } + reader = file_matcher.FileReader('dummy') + reader.update_history( + expected['line_matcher_name'], + Progress( + progress=expected['progress'], + message='', + severity='INFO')) + res = {} + with database.session() as session: + history = session.query( + LogProgressingHistory).first() + res.update({ + 'line_matcher_name': history.line_matcher_name, + 'progress': history.progress + }) + self.assertEqual(expected, res) + + def test_update_history_from_existing(self): + config_locals = {} + config_globals = {} + execfile(self.config_file, config_globals, config_locals) + prepare_database(config_locals) + + with database.session() as session: + history = LogProgressingHistory( + line_matcher_name='start', + progress=0.5, + message='dummy', + severity='INFO', + position=0, + partial_line='', + pathname='dummy') + session.add(history) + + expected = { + 'progress': 0.8, + 'line_matcher_name': 'start' + } + reader = file_matcher.FileReader('dummy') + reader.position_ = 1 + reader.update_history( + expected['line_matcher_name'], + Progress( + progress=expected['progress'], + message='', + severity='INFO')) + res = {} + with database.session() as session: + history = session.query( + LogProgressingHistory).first() + res.update({ + 'line_matcher_name': history.line_matcher_name, + 'progress': history.progress + }) + self.assertEqual(expected, res) + + def test_update_history_failure(self): + config_locals = {} + config_globals = {} + execfile(self.config_file, config_globals, config_locals) + prepare_database(config_locals) + + with database.session() as session: + history = LogProgressingHistory( + line_matcher_name='start', + progress=0.5, + message='dummy', + severity='INFO', + position=0, + partial_line='', + pathname='dummy') + session.add(history) + + expected = { + 'progress': 0.8, + 'line_matcher_name': 'start' + } + reader = file_matcher.FileReader('dummy') + reader.update_history( + expected['line_matcher_name'], + Progress( + progress=expected['progress'], + message='', + severity='INFO')) + res = {} + with database.session() as session: + history = session.query( + LogProgressingHistory).first() + res.update({ + 'line_matcher_name': history.line_matcher_name, + 'progress': history.progress + }) + self.assertNotEqual(expected, res) + + +class TestFileReaderFactory(unittest2.TestCase): + def setUp(self): + super(TestFileReaderFactory, self).setUp() + logsetting.init() + + def tearDown(self): + super(TestFileReaderFactory, self).tearDown() + + def test_get_file_reader_None(self): + reader_factory = file_matcher.FileReaderFactory( + 'dummy', + file_matcher.get_file_filter()) + + reader = reader_factory.get_file_reader('dummy', 'dummy') + self.assertIsNone(reader) + + +class TestFileMatcher(unittest2.TestCase): + def setUp(self): + super(TestFileMatcher, self).setUp() + logsetting.init() + + def tearDown(self): + super(TestFileMatcher, self).tearDown() + + def test_update_absolute_progress_range(self): + matcher = file_matcher.FileMatcher( + filename='sys.log', + min_progress=0.0, + max_progress=0.1, + line_matchers={ + 'start': LineMatcher( + pattern=r'NOTICE (?P.*)', + progress=IncrementalProgress(.1, .9, .1), + message_template='%(message)s', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='exit' + ), + } + ) + matcher.update_absolute_progress_range(0.5, 1.0) + expected = [0.5, 0.55] + res = [] + res.append(matcher.absolute_min_progress_) + res.append(matcher.absolute_max_progress_) + self.assertEqual(expected, res) + + def test_update_total_progress_none(self): + file_progress = Progress( + message=None, + progress=0.5, + severity='info') + + total_progress = file_progress + matcher = file_matcher.FileMatcher( + filename='sys.log', + min_progress=0.0, + max_progress=0.1, + line_matchers={ + 'start': LineMatcher( + pattern=r'NOTICE (?P.*)', + progress=IncrementalProgress(.1, .9, .1), + message_template='%(message)s', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='exit' + ), + } + ) + res = matcher.update_total_progress(file_progress, total_progress) + self.assertIsNone(res) + + def test_update_total_progress(self): + file_progress = Progress( + message='dummy', + progress=0.5, + severity='info') + + total_progress = Progress( + message='dummy', + progress=0.4, + severity='info') + + matcher = file_matcher.FileMatcher( + filename='sys.log', + min_progress=0.0, + max_progress=0.1, + line_matchers={ + 'start': LineMatcher( + pattern=r'NOTICE (?P.*)', + progress=IncrementalProgress(.1, .9, .1), + message_template='%(message)s', + unmatch_nextline_next_matcher_name='start', + match_nextline_next_matcher_name='exit' + ), + } + ) + matcher.update_total_progress(file_progress, total_progress) + self.assertEqual( + 0.5, + total_progress.progress) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/compass/tests/log_analyzor/test_line_matcher.py b/compass/tests/log_analyzor/test_line_matcher.py new file mode 100755 index 00000000..d68aed4e --- /dev/null +++ b/compass/tests/log_analyzor/test_line_matcher.py @@ -0,0 +1,229 @@ +#!/usr/bin/python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import unittest2 + +os.environ['COMPASS_IGNORE_SETTING'] = 'true' + + +from compass.utils import setting_wrapper as setting +reload(setting) + + +from compass.log_analyzor import line_matcher +from compass.utils import flags +from compass.utils import logsetting + + +class TestProgress(unittest2.TestCase): + """test class for Progress class.""" + + def setUp(self): + super(TestProgress, self).setUp() + logsetting.init() + + def tearDown(self): + super(TestProgress, self).tearDown() + + def test_repr(self): + config = { + 'progress': 0.5, + 'message': 'dummy', + 'severity': '' + } + expected = 'Progress[progress:0.5, message:dummy, severity:]' + test_line_matcher = line_matcher.Progress(**config) + self.assertEqual(expected, test_line_matcher.__repr__()) + + +class TestProgressCalculator(unittest2.TestCase): + def setUp(self): + super(TestProgressCalculator, self).setUp() + logsetting.init() + self._mock_progress() + + def tearDown(self): + super(TestProgressCalculator, self).tearDown() + + def _mock_progress(self): + self.progress = line_matcher.Progress( + progress=0.5, + message='', + severity='') + + def test_update_progress_progress(self): + test_1 = { + 'progress_data': 0.7, + 'message': '', + 'severity': '', + 'progress': self.progress + } + expected_1 = 0.7 + line_matcher.ProgressCalculator.update_progress( + **test_1) + self.assertEqual(expected_1, self.progress.progress) + + def test_update_progress_other(self): + test = { + 'progress_data': 0.5, + 'message': 'dummy', + 'severity': 'dummy', + 'progress': self.progress + } + expected_message = test['message'] + expected_severity = test['severity'] + line_matcher.ProgressCalculator.update_progress( + **test) + self.assertEqual(expected_message, self.progress.message) + self.assertEqual(expected_severity, self.progress.severity) + + +class TestIncrementalProgress(unittest2.TestCase): + def setUp(self): + super(TestIncrementalProgress, self).setUp() + logsetting.init() + + def tearDown(self): + super(TestIncrementalProgress, self).tearDown() + + def test_init(self): + test_exceed_one = { + 'min_progress': 1.1, + 'max_progress': 1.1, + 'incremental_ratio': 0.5, + } + self.assertRaises( + IndexError, + line_matcher.IncrementalProgress, + **test_exceed_one) + + def test_min_larger_than_max(self): + test_min_larger_than_max = { + 'min_progress': 0.7, + 'max_progress': 0.3, + 'incremental_ratio': 0.5, + } + self.assertRaises( + IndexError, + line_matcher.IncrementalProgress, + **test_min_larger_than_max) + + def test_invalid_ratio(self): + test_invalid_ratio = { + 'min_progress': 0.3, + 'max_progress': 0.7, + 'incremental_ratio': 1.1, + } + self.assertRaises( + IndexError, + line_matcher.IncrementalProgress, + **test_invalid_ratio) + + +class TestRelativeProgress(unittest2.TestCase): + def setUp(self): + super(TestRelativeProgress, self).setUp() + logsetting.init() + + def tearDown(self): + super(TestRelativeProgress, self).tearDown() + + def test_init(self): + self.assertRaises( + IndexError, + line_matcher.RelativeProgress, + progress=1.1) + + +class TestLineMatcher(unittest2.TestCase): + def setUp(self): + super(TestLineMatcher, self).setUp() + logsetting.init() + + def tearDown(self): + super(TestLineMatcher, self).tearDown() + + def test_progress_unsupported(self): + test_progress_unsupported = { + 'pattern': r' ', + 'progress': 'dummy', + } + self.assertRaises( + TypeError, + line_matcher.LineMatcher, + **test_progress_unsupported) + + def test_regex_not_match(self): + line = 'abc' + regex_ = r'^s' + progress = line_matcher.Progress( + progress=1, message='a', severity=' ') + test_regex_not_match = { + 'pattern': regex_, + 'unmatch_sameline_next_matcher_name': 'usn', + 'unmatch_nextline_next_matcher_name': 'unn', + 'match_sameline_next_matcher_name': 'msn', + 'match_nextline_next_matcher_name': 'mnn', + } + matcher = line_matcher.LineMatcher( + **test_regex_not_match) + expected = ('usn', 'unn') + self.assertEqual( + expected, + matcher.update_progress( + line, progress)) + + def test_regex_match(self): + line = 'abc' + regex_ = r'^a' + progress = line_matcher.Progress( + progress=1, message='a', severity=' ') + test_regex_match = { + 'pattern': regex_, + 'unmatch_sameline_next_matcher_name': 'usn', + 'unmatch_nextline_next_matcher_name': 'unn', + 'match_sameline_next_matcher_name': 'msn', + 'match_nextline_next_matcher_name': 'mnn', + } + matcher = line_matcher.LineMatcher( + **test_regex_match) + expected = ('msn', 'mnn') + self.assertEqual( + expected, + matcher.update_progress( + line, progress)) + + def test_wrong_message(self): + line = 'abc' + progress = line_matcher.Progress( + progress=1, message='a', severity=' ') + test_wrong_message = { + 'pattern': r'.*.', + 'message_template': 'Installing %(package)s' + } + matcher = line_matcher.LineMatcher( + **test_wrong_message) + self.assertRaises( + KeyError, + matcher.update_progress, + line=line, + progress=progress) + +if __name__ == '__main__': + flags.init() + logsetting.init() + unittest2.main() diff --git a/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl b/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl index 51387b74..3cae474e 100644 --- a/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl +++ b/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl @@ -12,9 +12,7 @@ "json_class": "Chef::Environment", "chef_type": "environment", "default_attributes": { - "local_repo": "" - }, - "override_attributes": { + "local_repo": "", "mysql": { "server_root_password": "test", "server_debian_password": "root", diff --git a/install/dependency.sh b/install/dependency.sh index 79df9c42..97e42ae3 100755 --- a/install/dependency.sh +++ b/install/dependency.sh @@ -43,5 +43,6 @@ sudo chkconfig sshd on sudo chkconfig rsyslog on sudo chkconfig ntpd on sudo chkconfig redis on +sudo chkconfig mysqld on sudo chkconfig iptables off sudo chkconfig ip6tables off diff --git a/install/prepare.sh b/install/prepare.sh index f0c41794..4efa058a 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -135,7 +135,7 @@ if [ -z $ADAPTERS_SOURCE ]; then echo "adpaters source $ADAPTERS_SOURCE is not set" exit 1 fi -copy2dir "$ADAPTERS_SOURCE" "$ADAPTERS_HOME" "stackforge/compass-adapters" dev/experimental || exit $? +copy2dir "$ADAPTERS_SOURCE" "$ADAPTERS_HOME" "stackforge/compass-adapters" || exit $? if [ "$tempest" == "true" ]; then echo "download tempest packages" diff --git a/regtest/regtest.sh b/regtest/regtest.sh index 57fd5d3c..2aa9498b 100755 --- a/regtest/regtest.sh +++ b/regtest/regtest.sh @@ -160,6 +160,10 @@ else POLL_SWITCHES_FLAG="poll_switches" fi +if [ -n "$LOCAL_REPO_URL" ]; then + PROXY= +fi + ${CLIENT_SCRIPT} --logfile= --loglevel=debug --logdir= --compass_server="${COMPASS_SERVER_URL}" --compass_user_email="${COMPASS_USER_EMAIL}" --compass_user_password="${COMPASS_USER_PASSWORD}" --cluster_name="${CLUSTER_NAME}" --language="${LANGUAGE}" --timezone="${TIMEZONE}" --hostnames="${HOSTNAMES}" --partitions="${PARTITIONS}" --subnets="${SUBNETS}" --adapter_os_pattern="${ADAPTER_OS_PATTERN}" --adapter_name="${ADAPTER_NAME}" --adapter_target_system_pattern="${ADAPTER_TARGET_SYSTEM_PATTERN}" --adapter_flavor_pattern="${ADAPTER_FLAVOR_PATTERN}" --http_proxy="${PROXY}" --https_proxy="${PROXY}" --no_proxy="${IGNORE_PROXY}" --ntp_server="${NTP_SERVER}" --dns_servers="${NAMESERVERS}" --domain="${DOMAIN}" --search_path="${SEARCH_PATH}" --default_gateway="${GATEWAY}" --server_credential="${SERVER_CREDENTIAL}" --local_repo_url="${LOCAL_REPO_URL}" --os_config_json_file="${OS_CONFIG_FILENAME}" --service_credentials="${SERVICE_CREDENTIALS}" --console_credentials="${CONSOLE_CREDENTIALS}" --host_networks="${HOST_NETWORKS}" --network_mapping="${NETWORK_MAPPING}" --package_config_json_file="${PACKAGE_CONFIG_FILENAME}" --host_roles="${HOST_ROLES}" --default_roles="${DEFAULT_ROLES}" --switch_ips="${SWITCH_IPS}" --machines="${machines}" --switch_credential="${SWITCH_CREDENTIAL}" --deployment_timeout="${DEPLOYMENT_TIMEOUT}" --${POLL_SWITCHES_FLAG} --dashboard_url="${DASHBOARD_URL}" rc=$? deactivate From ad79f85d44fbae40ba94a5be13298355788b5f1f Mon Sep 17 00:00:00 2001 From: Kui Shi Date: Mon, 27 Oct 2014 08:26:34 +0800 Subject: [PATCH 21/23] Update installation step in README.md Update the repo URL and directory name in installation step. Change-Id: I4a760d90e257803fbbd3eacb985b4060dc522418 Closes-Bug: #1386009 --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 3d2bbb69..d5a0ebab 100644 --- a/README.md +++ b/README.md @@ -5,8 +5,8 @@ A Deoployment Automation System. See Wiki page at https://wiki.openstack.org/wik How to install Compass? ----------------------- - 1. Run `git clone https://github.com/huawei-cloud/compass` - 2. Run `cd compass` to the Compass project directory. + 1. Run `git clone https://github.com/stackforge/compass-core` + 2. Run `cd compass-core` to the Compass project directory. 3. Run `./install/install.sh` to setup compass environment. Please note that before you execute `install.sh`, you may setup your environment variables in `install/install.conf`, explanations and examples of those variables can be found in `install.conf`. 4. Run `source /etc/profile` to setup compass profile. 5. Run `./bin/refresh.sh` to initialize database. From df4132bc15e9403e42b8b758575fb82de4af67ba Mon Sep 17 00:00:00 2001 From: Kui Shi Date: Mon, 27 Oct 2014 11:12:48 +0800 Subject: [PATCH 22/23] Download package via http to fit most network env Change-Id: Iea6bc3a93ce848ce0cca36cd3289920211369464 Closes-Bug: #1386016 --- install/compass_web.sh | 2 +- install/install.conf | 4 ++++ install/prepare.sh | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/install/compass_web.sh b/install/compass_web.sh index 9afc85a8..4a18ff8a 100755 --- a/install/compass_web.sh +++ b/install/compass_web.sh @@ -22,7 +22,7 @@ sudo cp -rf $WEB_HOME/v2 /var/www/compass_web/ if [[ $LOCAL_REPO = "y" ]]; then echo "setting up local repo" mkdir -p /tmp/repo - download -f https://s3-us-west-1.amazonaws.com/compass-local-repo/local_repo.tar.gz local_repo.tar.gz unzip /tmp/repo || exit $? + download -f "$COMPASS_LOCAL_REPO" $COMPASS_LOCAL_REPO_FILE unzip /tmp/repo || exit $? mv -f /tmp/repo/local_repo/* /var/www/compass_web/v2/ if [[ "$?" != "0" ]]; then echo "failed to setup local repo" diff --git a/install/install.conf b/install/install.conf index ac558824..ec4b14d0 100755 --- a/install/install.conf +++ b/install/install.conf @@ -59,6 +59,10 @@ export UBUNTU_IMAGE_ARCH=${UBUNTU_IMAGE_ARCH:-"x86_64"} export UBUNTU_IMAGE_ARCH_OTHER=${UBUNTU_IMAGE_ARCH_OTHER:-"amd64"} export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-${UBUNTU_IMAGE_VERSION}${UBUNTU_IMAGE_PATCH_VERSION}-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} +# Compass local repo +export COMPASS_LOCAL_REPO_FILE=${COMPASS_LOCAL_REPO_FILE:-"local_repo.tar.gz"} +export COMPASS_LOCAL_REPO=${COMPASS_LOCAL_REPO:-"http://s3-us-west-1.amazonaws.com/compass-local-repo/${COMPASS_LOCAL_REPO_FILE}"} + export COBBLER_PASSWORD=${COBBLER_PASSWORD:-"cobbler"} # Currently the use of Javascript MVC is set to version 3.2.4 diff --git a/install/prepare.sh b/install/prepare.sh index 4efa058a..acf6d221 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -240,7 +240,7 @@ download "$CENTOS_IMAGE_SOURCE" ${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso || download "$UBUNTU_IMAGE_SOURCE" ${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso || exit $? # download local repo -download -f https://s3-us-west-1.amazonaws.com/compass-local-repo/local_repo.tar.gz local_repo.tar.gz || exit $? +download -f "$COMPASS_LOCAL_REPO" $COMPASS_LOCAL_REPO_FILE || exit $? # Install net-snmp echo "install snmp config" From a60bdb09c642cc963e8a7ec5fcfeb5f0422cb13b Mon Sep 17 00:00:00 2001 From: xiaodongwang Date: Mon, 3 Nov 2014 17:33:40 -0800 Subject: [PATCH 23/23] merge code to master Change-Id: Id066d7f2878418dcd7fb3dc7f1f405dd8599ba85 --- README.md | 4 +- bin/clean_installers.py | 163 +++++++++++++ bin/client.py | 7 +- bin/delete_clusters.py | 65 +++-- bin/poll_switch.py | 2 +- bin/progress_update.py | 3 +- bin/refresh.sh | 5 +- compass/actions/clean.py | 182 ++++++++++++++ compass/actions/delete.py | 147 ++++++++++++ compass/actions/deploy.py | 225 ++--------------- compass/actions/util.py | 227 +++++++++++++++++- compass/api/api.py | 8 +- compass/db/api/cluster.py | 130 +++++++++- compass/db/api/host.py | 32 ++- compass/db/api/machine.py | 7 + compass/db/api/metadata.py | 15 +- compass/db/api/network.py | 14 ++ compass/db/api/utils.py | 30 +-- compass/db/models.py | 88 ++++++- compass/db/validator.py | 96 +++++++- compass/deployment/deploy_manager.py | 4 +- .../os_installers/cobbler/cobbler.py | 7 +- .../chef_installer/chef_installer.py | 28 ++- compass/hdsdiscovery/hdmanager.py | 9 +- .../vendors/appliance/plugins/mac.py | 13 +- compass/tasks/tasks.py | 104 +++++++- compass/tests/api/test_api.py | 8 +- compass/tests/db/api/test_cluster.py | 33 +-- compass/tests/db/api/test_host.py | 18 +- compass/utils/setting_wrapper.py | 7 +- conf/machine_list/machine_list.conf | 46 ++++ conf/os_field/domain.conf | 2 + conf/os_field/ip_list.conf | 3 + conf/os_field/url.conf | 2 + conf/os_metadata/general.conf | 12 +- .../environments/allinone.tmpl | 5 + .../environments/multinodes.tmpl | 5 + install/cobbler.sh | 24 +- install/compass.sh | 11 +- install/compass_web.sh | 2 +- install/install.conf | 9 +- install/install.conf.template | 2 +- install/install.sh | 3 + install/install_func.sh | 11 +- install/prepare.sh | 31 ++- install/setup_env.sh | 1 + regtest/regtest.sh | 16 +- tox.ini | 2 +- 48 files changed, 1478 insertions(+), 390 deletions(-) create mode 100755 bin/clean_installers.py create mode 100644 compass/actions/clean.py create mode 100644 compass/actions/delete.py create mode 100644 conf/machine_list/machine_list.conf create mode 100644 conf/os_field/domain.conf create mode 100644 conf/os_field/ip_list.conf create mode 100644 conf/os_field/url.conf diff --git a/README.md b/README.md index d5a0ebab..3d2bbb69 100644 --- a/README.md +++ b/README.md @@ -5,8 +5,8 @@ A Deoployment Automation System. See Wiki page at https://wiki.openstack.org/wik How to install Compass? ----------------------- - 1. Run `git clone https://github.com/stackforge/compass-core` - 2. Run `cd compass-core` to the Compass project directory. + 1. Run `git clone https://github.com/huawei-cloud/compass` + 2. Run `cd compass` to the Compass project directory. 3. Run `./install/install.sh` to setup compass environment. Please note that before you execute `install.sh`, you may setup your environment variables in `install/install.conf`, explanations and examples of those variables can be found in `install.conf`. 4. Run `source /etc/profile` to setup compass profile. 5. Run `./bin/refresh.sh` to initialize database. diff --git a/bin/clean_installers.py b/bin/clean_installers.py new file mode 100755 index 00000000..a2fef6fe --- /dev/null +++ b/bin/clean_installers.py @@ -0,0 +1,163 @@ +#!/usr/bin/env python +# +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Scripts to delete cluster and it hosts""" +import logging +import os +import os.path +import sys + + +current_dir = os.path.dirname(os.path.realpath(__file__)) +sys.path.append(current_dir) + + +import switch_virtualenv + +from compass.actions import clean +from compass.db.api import adapter_holder as adapter_api +from compass.db.api import database +from compass.db.api import user as user_api +from compass.tasks.client import celery +from compass.utils import flags +from compass.utils import logsetting +from compass.utils import setting_wrapper as setting + + +flags.add_bool('async', + help='run in async mode', + default=True) + +flags.add('os_installers', + help='comma seperated os installers', + default='') +flags.add('package_installers', + help='comma separated package installers', + default='') + + +def clean_installers(): + os_installers = [ + os_installer + for os_installer in flags.OPTIONS.os_installers.split(',') + if os_installer + ] + package_installers = [ + package_installer + for package_installer in flags.OPTIONS.package_installers.split(',') + if package_installer + ] + user = user_api.get_user_object(setting.COMPASS_ADMIN_EMAIL) + adapters = adapter_api.list_adapters(user) + filtered_os_installers = {} + filtered_package_installers = {} + for adapter in adapters: + logging.info( + 'got adapter: %s', adapter + ) + if 'os_installer' in adapter: + os_installer = adapter['os_installer'] + os_installer_name = os_installer['alias'] + if not os_installers or os_installer_name in os_installers: + filtered_os_installers[os_installer_name] = os_installer + else: + logging.info( + 'ignore os isntaller %s', os_installer_name + ) + else: + logging.info( + 'cannot find os installer in adapter %s', + adapter['name'] + ) + if 'package_installer' in adapter: + package_installer = adapter['package_installer'] + package_installer_name = package_installer['alias'] + if ( + not package_installers or + package_installer_name in package_installers + ): + filtered_package_installers[package_installer_name] = ( + package_installer + ) + else: + logging.info( + 'ignore package installer %s', package_installer_name + ) + else: + logging.info( + 'cannot find package installer in adapter %s', + adapter['name'] + ) + logging.info( + 'clean os installers: %s', filtered_os_installers.keys() + ) + logging.info( + 'clean package installers: %s', filtered_package_installers.keys() + ) + if flags.OPTIONS.async: + for os_installer_name, os_installer in filtered_os_installers.items(): + celery.send_task( + 'compass.tasks.clean_os_installer', + ( + os_installer['name'], + os_installer['settings'] + ) + ) + for package_installer_name, package_installer in ( + filtered_package_installers.items() + ): + celery.send_task( + 'compass.tasks.clean_package_installer', + ( + package_installer['name'], + package_installer['settings'] + ) + ) + else: + for os_installer_name, os_installer in ( + filtered_os_installers.items() + ): + try: + clean.clean_os_installer( + os_installer['name'], + os_installer['settings'] + ) + except Exception as error: + logging.error( + 'failed to clean os installer %s', os_installer_name + ) + logging.exception(error) + for package_installer_name, package_installer in ( + filtered_package_installers.items() + ): + try: + clean.clean_package_installer( + package_installer['name'], + package_installer['settings'] + ) + except Exception as error: + logging.error( + 'failed to clean package installer %s', + package_installer_name + ) + logging.exception(error) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + database.init() + clean_installers() diff --git a/bin/client.py b/bin/client.py index fa6a3c92..53101b04 100755 --- a/bin/client.py +++ b/bin/client.py @@ -16,11 +16,8 @@ """binary to deploy a cluster by compass client api.""" import logging -import netaddr import os import re -import requests -import simplejson as json import socket import sys import time @@ -32,6 +29,10 @@ sys.path.append(current_dir) import switch_virtualenv +import netaddr +import requests +import simplejson as json + from compass.apiclient.restful import Client from compass.utils import flags from compass.utils import logsetting diff --git a/bin/delete_clusters.py b/bin/delete_clusters.py index faa846c5..fef0a9d8 100755 --- a/bin/delete_clusters.py +++ b/bin/delete_clusters.py @@ -28,17 +28,19 @@ sys.path.append(current_dir) import switch_virtualenv +from compass.actions import delete from compass.db.api import cluster as cluster_api from compass.db.api import database -from compass.db.api import host as host_api from compass.db.api import user as user_api -from compass.db.api import utils -from compass.db import models +from compass.tasks.client import celery from compass.utils import flags from compass.utils import logsetting from compass.utils import setting_wrapper as setting +flags.add_bool('async', + help='run in async mode', + default=True) flags.add('clusternames', help='comma seperated cluster names', default='') @@ -47,27 +49,54 @@ flags.add_bool('delete_hosts', default=False) -if __name__ == '__main__': - flags.init() - logsetting.init() - database.init() +def delete_clusters(): clusternames = [ clustername for clustername in flags.OPTIONS.clusternames.split(',') if clustername ] - logging.info('delete clusters %s', clusternames) user = user_api.get_user_object(setting.COMPASS_ADMIN_EMAIL) + list_cluster_args = {} + if clusternames: + list_cluster_args['name'] = clusternames clusters = cluster_api.list_clusters( - user, name=clusternames + user, **list_cluster_args ) - if flags.OPTIONS.delete_hosts: - for cluster in clusters: - hosts = cluster_api.list_cluster_hosts( - user, cluster['id']) - for host in hosts: - logging.info('delete host %s', host['hostname']) - host_api.del_host(user, host['id']) + delete_underlying_host = flags.OPTIONS.delete_hosts for cluster in clusters: - logging.info('delete cluster %s', cluster['name']) - cluster_api.del_cluster(user, cluster['id']) + cluster_id = cluster['id'] + hosts = cluster_api.list_cluster_hosts(user, cluster_id) + host_id_list = [host['id'] for host in hosts] + logging.info( + 'delete cluster %s and cluster hosts %s', + cluster_id, host_id_list + ) + logging.info('delete underlying host? %s', delete_underlying_host) + if flags.OPTIONS.async: + celery.send_task( + 'compass.tasks.delete_cluster', + ( + setting.COMPASS_ADMIN_EMAIL, + cluster_id, + host_id_list, + delete_underlying_host + ) + ) + else: + try: + delete.delete_cluster( + cluster_id, + host_id_list, + setting.COMPASS_ADMIN_EMAIL, + delete_underlying_host + ) + except Exception as error: + logging.error('failed to delete cluster %s', cluster) + logging.exception(error) + + +if __name__ == '__main__': + flags.init() + logsetting.init() + database.init() + delete_clusters() diff --git a/bin/poll_switch.py b/bin/poll_switch.py index ab051e19..779fa1b8 100755 --- a/bin/poll_switch.py +++ b/bin/poll_switch.py @@ -16,7 +16,6 @@ """main script to poll machines which is connected to the switches.""" import functools -import lockfile import logging import os import sys @@ -28,6 +27,7 @@ sys.path.append(current_dir) import switch_virtualenv +import lockfile from multiprocessing import Pool from compass.actions import poll_switch diff --git a/bin/progress_update.py b/bin/progress_update.py index 7a968882..cc8c12bf 100755 --- a/bin/progress_update.py +++ b/bin/progress_update.py @@ -16,7 +16,6 @@ """main script to run as service to update hosts installing progress.""" import functools -import lockfile import logging import os import sys @@ -28,6 +27,8 @@ sys.path.append(current_dir) import switch_virtualenv +import lockfile + from compass.actions import update_progress from compass.db.api import database from compass.tasks.client import celery diff --git a/bin/refresh.sh b/bin/refresh.sh index b2c5ac84..3b992b39 100755 --- a/bin/refresh.sh +++ b/bin/refresh.sh @@ -2,10 +2,7 @@ set -e service mysqld restart /opt/compass/bin/manage_db.py createdb -echo "You may run '/opt/compass/bin/clean_nodes.sh' to clean nodes on chef server" -echo "You may run '/opt/compass/bin/clean_clients.sh' to clean clients on chef server" -echo "you may run '/opt/compass/bin/clean_environments.sh' to clean environments on chef server" -echo "you may run '/opt/compass/bin/remove_systems.sh' to clean systems on cobbler" +/opt/compass/bin/clean_installers.py /opt/compass/bin/clean_installation_logs.py service httpd restart service rsyslog restart diff --git a/compass/actions/clean.py b/compass/actions/clean.py new file mode 100644 index 00000000..c9a5d06c --- /dev/null +++ b/compass/actions/clean.py @@ -0,0 +1,182 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Module to clean installers +""" +import chef +import logging +import xmlrpclib + +from compass.actions import util + + +class CobblerInstaller(object): + """cobbler installer""" + CREDENTIALS = "credentials" + USERNAME = 'username' + PASSWORD = 'password' + + INSTALLER_URL = "cobbler_url" + + def __init__(self, settings): + username = settings[self.CREDENTIALS][self.USERNAME] + password = settings[self.CREDENTIALS][self.PASSWORD] + cobbler_url = settings[self.INSTALLER_URL] + try: + self.remote = xmlrpclib.Server(cobbler_url) + self.token = self.remote.login(username, password) + logging.info('cobbler %s client created', cobbler_url) + except Exception as error: + logging.error( + 'failed to login %s with (%s, %s)', + cobbler_url, username, password + ) + logging.exception(error) + + def clean(self): + systems = self.remote.get_systems() + for system in systems: + system_name = system['name'] + try: + self.remote.remove_system(system_name, self.token) + logging.info('system %s is removed', system_name) + except Exception as error: + logging.error( + 'failed to remove system %s', system_name + ) + logging.exception(error) + + +class ChefInstaller(object): + DATABAGS = "databags" + CHEFSERVER_URL = "chef_url" + CHEFSERVER_DNS = "chef_server_dns" + CHEFSERVER_IP = "chef_server_ip" + KEY_DIR = "key_dir" + CLIENT = "client_name" + + def __init__(self, settings): + installer_url = settings.get(self.CHEFSERVER_URL, None) + key_dir = settings.get(self.KEY_DIR, None) + client = settings.get(self.CLIENT, None) + try: + if installer_url and key_dir and client: + self.api = chef.ChefAPI(installer_url, key_dir, client) + else: + self.api = chef.autoconfigure() + logging.info( + 'chef client created %s(%s, %s)', + installer_url, key_dir, client + ) + except Exception as error: + logging.error( + 'failed to create chef client %s(%s, %s)', + installer_url, key_dir, client + ) + logging.exception(error) + + def clean(self): + try: + for node_name in chef.Node.list(api=self.api): + node = chef.Node(node_name, api=self.api) + node.delete() + logging.info('delete node %s', node_name) + except Exception as error: + logging.error('failed to delete some nodes') + logging.exception(error) + + try: + for client_name in chef.Client.list(api=self.api): + if client_name in ['chef-webui', 'chef-validator']: + continue + client = chef.Client(client_name, api=self.api) + client.delete() + logging.info('delete client %s', client_name) + except Exception as error: + logging.error('failed to delete some clients') + logging.exception(error) + + try: + for env_name in chef.Environment.list(api=self.api): + if env_name == '_default': + continue + env = chef.Environment(env_name, api=self.api) + env.delete() + logging.info('delete env %s', env_name) + except Exception as error: + logging.error('failed to delete some envs') + logging.exception(error) + + try: + for databag_name in chef.DataBag.list(api=self.api): + databag = chef.DataBag(databag_name, api=self.api) + for item_name, item in databag.items(): + item.delete() + logging.info( + 'delete item %s from databag %s', + item_name, databag_name + ) + except Exception as error: + logging.error('failed to delete some databag items') + logging.exception(error) + + +OS_INSTALLERS = { + 'cobbler': CobblerInstaller +} +PK_INSTALLERS = { + 'chef_installer': ChefInstaller +} + + +def clean_os_installer( + os_installer_name, os_installer_settings +): + with util.lock('serialized_action', timeout=100) as lock: + if not lock: + raise Exception( + 'failed to acquire lock to clean os installer' + ) + + if os_installer_name not in OS_INSTALLERS: + logging.error( + '%s not found in os_installers', + os_installer_name + ) + + os_installer = OS_INSTALLERS[os_installer_name]( + os_installer_settings + ) + os_installer.clean() + + +def clean_package_installer( + package_installer_name, package_installer_settings +): + with util.lock('serialized_action', timeout=100) as lock: + if not lock: + raise Exception( + 'failed to acquire lock to clean package installer' + ) + + if package_installer_name not in PK_INSTALLERS: + logging.error( + '%s not found in os_installers', + package_installer_name + ) + + package_installer = PK_INSTALLERS[package_installer_name]( + package_installer_settings + ) + package_installer.clean() diff --git a/compass/actions/delete.py b/compass/actions/delete.py new file mode 100644 index 00000000..1c1b13bc --- /dev/null +++ b/compass/actions/delete.py @@ -0,0 +1,147 @@ +# Copyright 2014 Huawei Technologies Co. Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Module to delete a given cluster +""" +import logging + +from compass.actions import util +from compass.db.api import cluster as cluster_api +from compass.db.api import user as user_db +from compass.deployment.deploy_manager import DeployManager +from compass.deployment.utils import constants as const + + +def delete_cluster( + cluster_id, host_id_list, + username=None, delete_underlying_host=False +): + """Delete cluster. + + :param cluster_id: id of the cluster. + :type cluster_id: int + + .. note:: + The function should be called out of database session. + """ + with util.lock('serialized_action', timeout=100) as lock: + if not lock: + raise Exception('failed to acquire lock to delete cluster') + + user = user_db.get_user_object(username) + + for host_id in host_id_list: + cluster_api.update_cluster_host_state( + user, cluster_id, host_id, state='ERROR' + ) + cluster_api.update_cluster_state( + user, cluster_id, state='ERROR' + ) + + cluster_api.update_cluster( + user, cluster_id, reinstall_distributed_system=True + ) + for host_id in host_id_list: + cluster_api.update_cluster_host( + user, cluster_id, host_id, reinstall_os=True + ) + + cluster_info = util.ActionHelper.get_cluster_info(cluster_id, user) + adapter_id = cluster_info[const.ADAPTER_ID] + + adapter_info = util.ActionHelper.get_adapter_info( + adapter_id, cluster_id, user) + hosts_info = util.ActionHelper.get_hosts_info( + cluster_id, host_id_list, user) + + logging.debug('adapter info: %s', adapter_info) + logging.debug('cluster info: %s', cluster_info) + logging.debug('hosts info: %s', hosts_info) + deploy_manager = DeployManager(adapter_info, cluster_info, hosts_info) + + deploy_manager.remove_hosts( + package_only=not delete_underlying_host, + delete_cluster=True + ) + util.ActionHelper.delete_cluster( + cluster_id, host_id_list, user, + delete_underlying_host + ) + + +def delete_cluster_host( + cluster_id, host_id, + username=None, delete_underlying_host=False +): + with util.lock('serialized_action', timeout=100) as lock: + if not lock: + raise Exception('failed to acquire lock to delete clusterhost') + + user = user_db.get_user_object(username) + cluster_info = util.ActionHelper.get_cluster_info(cluster_id, user) + adapter_id = cluster_info[const.ADAPTER_ID] + + adapter_info = util.ActionHelper.get_adapter_info( + adapter_id, cluster_id, user) + hosts_info = util.ActionHelper.get_hosts_info( + cluster_id, [host_id], user) + + deploy_manager = DeployManager(adapter_info, cluster_info, hosts_info) + logging.debug('Created deploy manager with %s %s %s' + % (adapter_info, cluster_info, hosts_info)) + + deploy_manager.remove_hosts( + package_only=not delete_underlying_host, + delete_cluster=False + ) + util.ActionHelper.delete_cluster_host( + cluster_id, host_id, user, + delete_underlying_host + ) + + +def delete_host( + host_id, cluster_id_list, username=None +): + with util.lock('serialized_action', timeout=100) as lock: + if not lock: + raise Exception('failed to acquire lock to delete host') + + user = user_db.get_user_object(username) + for cluster_id in cluster_id_list: + cluster_info = util.ActionHelper.get_cluster_info( + cluster_id, user) + adapter_id = cluster_info[const.ADAPTER_ID] + + adapter_info = util.ActionHelper.get_adapter_info( + adapter_id, cluster_id, user) + hosts_info = util.ActionHelper.get_hosts_info( + cluster_id, [host_id], user) + + deploy_manager = DeployManager( + adapter_info, cluster_info, hosts_info) + logging.debug('Created deploy manager with %s %s %s' + % (adapter_info, cluster_info, hosts_info)) + + deploy_manager.remove_hosts( + package_only=True, + delete_cluster=False + ) + + util.ActionHelper.delete_host( + host_id, user + ) + + +ActionHelper = util.ActionHelper diff --git a/compass/actions/deploy.py b/compass/actions/deploy.py index 26c3c086..dfc87f32 100644 --- a/compass/actions/deploy.py +++ b/compass/actions/deploy.py @@ -14,15 +14,12 @@ """Module to deploy a given cluster """ +import logging from compass.actions import util -from compass.db.api import adapter_holder as adapter_db -from compass.db.api import cluster as cluster_db -from compass.db.api import machine as machine_db from compass.db.api import user as user_db from compass.deployment.deploy_manager import DeployManager from compass.deployment.utils import constants as const -import logging def deploy(cluster_id, hosts_id_list, username=None): @@ -40,13 +37,13 @@ def deploy(cluster_id, hosts_id_list, username=None): user = user_db.get_user_object(username) - cluster_info = ActionHelper.get_cluster_info(cluster_id, user) + cluster_info = util.ActionHelper.get_cluster_info(cluster_id, user) adapter_id = cluster_info[const.ADAPTER_ID] - adapter_info = ActionHelper.get_adapter_info(adapter_id, cluster_id, - user) - hosts_info = ActionHelper.get_hosts_info(cluster_id, hosts_id_list, - user) + adapter_info = util.ActionHelper.get_adapter_info( + adapter_id, cluster_id, user) + hosts_info = util.ActionHelper.get_hosts_info( + cluster_id, hosts_id_list, user) deploy_manager = DeployManager(adapter_info, cluster_info, hosts_info) #deploy_manager.prepare_for_deploy() @@ -54,8 +51,8 @@ def deploy(cluster_id, hosts_id_list, username=None): % (adapter_info, cluster_info, hosts_info)) deployed_config = deploy_manager.deploy() - ActionHelper.save_deployed_config(deployed_config, user) - ActionHelper.update_state(cluster_id, hosts_id_list, user) + util.ActionHelper.save_deployed_config(deployed_config, user) + util.ActionHelper.update_state(cluster_id, hosts_id_list, user) def redeploy(cluster_id, hosts_id_list, username=None): @@ -69,20 +66,21 @@ def redeploy(cluster_id, hosts_id_list, username=None): raise Exception('failed to acquire lock to deploy') user = user_db.get_user_object(username) - cluster_info = ActionHelper.get_cluster_info(cluster_id, user) + cluster_info = util.ActionHelper.get_cluster_info(cluster_id, user) adapter_id = cluster_info[const.ADAPTER_ID] - adapter_info = ActionHelper.get_adapter_info(adapter_id, - cluster_id, - user) - hosts_info = ActionHelper.get_hosts_info(cluster_id, - hosts_id_list, - user) + adapter_info = util.ActionHelper.get_adapter_info( + adapter_id, cluster_id, user) + hosts_info = util.ActionHelper.get_hosts_info( + cluster_id, hosts_id_list, user) deploy_manager = DeployManager(adapter_info, cluster_info, hosts_info) # deploy_manager.prepare_for_deploy() deploy_manager.redeploy() - ActionHelper.update_state(cluster_id, hosts_id_list, user) + util.ActionHelper.update_state(cluster_id, hosts_id_list, user) + + +ActionHelper = util.ActionHelper class ServerPowerMgmt(object): @@ -117,192 +115,3 @@ class HostPowerMgmt(object): @staticmethod def reset(host_id, user): pass - - -class ActionHelper(object): - - @staticmethod - def get_adapter_info(adapter_id, cluster_id, user): - """Get adapter information. Return a dictionary as below, - { - "id": 1, - "name": "xxx", - "flavors": [ - { - "flavor_name": "xxx", - "roles": ['xxx', 'yyy', ...], - "template": "xxx.tmpl" - }, - ... - ], - "metadata": { - "os_config": { - ... - }, - "package_config": { - ... - } - }, - "os_installer": { - "name": "cobbler", - "settings": {....} - }, - "pk_installer": { - "name": "chef", - "settings": {....} - }, - ... - } - To view a complete output, please refer to backend doc. - """ - adapter_info = adapter_db.get_adapter(user, adapter_id) - metadata = cluster_db.get_cluster_metadata(user, cluster_id) - adapter_info.update({const.METADATA: metadata}) - - for flavor_info in adapter_info[const.FLAVORS]: - roles = flavor_info[const.ROLES] - flavor_info[const.ROLES] = ActionHelper._get_role_names(roles) - - return adapter_info - - @staticmethod - def _get_role_names(roles): - return [role[const.NAME] for role in roles] - - @staticmethod - def get_cluster_info(cluster_id, user): - """Get cluster information.Return a dictionary as below, - { - "id": 1, - "adapter_id": 1, - "os_version": "CentOS-6.5-x86_64", - "name": "cluster_01", - "flavor": { - "flavor_name": "zzz", - "template": "xx.tmpl", - "roles": [...] - } - "os_config": {..}, - "package_config": {...}, - "deployed_os_config": {}, - "deployed_package_config": {}, - "owner": "xxx" - } - """ - cluster_info = cluster_db.get_cluster(user, cluster_id) - - # convert roles retrieved from db into a list of role names - roles_info = cluster_info.setdefault( - const.FLAVOR, {}).setdefault(const.ROLES, []) - cluster_info[const.FLAVOR][const.ROLES] = \ - ActionHelper._get_role_names(roles_info) - - # get cluster config info - cluster_config = cluster_db.get_cluster_config(user, cluster_id) - cluster_info.update(cluster_config) - - deploy_config = cluster_db.get_cluster_deployed_config(user, - cluster_id) - cluster_info.update(deploy_config) - - return cluster_info - - @staticmethod - def get_hosts_info(cluster_id, hosts_id_list, user): - """Get hosts information. Return a dictionary as below, - { - "hosts": { - 1($host_id): { - "reinstall_os": True, - "mac": "xxx", - "name": "xxx", - "roles": [xxx, yyy] - }, - "networks": { - "eth0": { - "ip": "192.168.1.1", - "netmask": "255.255.255.0", - "is_mgmt": True, - "is_promiscuous": False, - "subnet": "192.168.1.0/24" - }, - "eth1": {...} - }, - "os_config": {}, - "package_config": {}, - "deployed_os_config": {}, - "deployed_package_config": {} - }, - 2: {...}, - .... - } - } - """ - hosts_info = {} - for host_id in hosts_id_list: - info = cluster_db.get_cluster_host(user, cluster_id, host_id) - logging.debug("checking on info %r %r" % (host_id, info)) - - info[const.ROLES] = ActionHelper._get_role_names(info[const.ROLES]) - - # TODO(grace): Is following line necessary?? - info.setdefault(const.ROLES, []) - - config = cluster_db.get_cluster_host_config(user, - cluster_id, - host_id) - info.update(config) - - networks = info[const.NETWORKS] - networks_dict = {} - # Convert networks from list to dictionary format - for entry in networks: - nic_info = {} - nic_info = { - entry[const.NIC]: { - const.IP_ADDR: entry[const.IP_ADDR], - const.NETMASK: entry[const.NETMASK], - const.MGMT_NIC_FLAG: entry[const.MGMT_NIC_FLAG], - const.PROMISCUOUS_FLAG: entry[const.PROMISCUOUS_FLAG], - const.SUBNET: entry[const.SUBNET] - } - } - networks_dict.update(nic_info) - - info[const.NETWORKS] = networks_dict - - hosts_info[host_id] = info - - return hosts_info - - @staticmethod - def save_deployed_config(deployed_config, user): - cluster_config = deployed_config[const.CLUSTER] - cluster_id = cluster_config[const.ID] - del cluster_config[const.ID] - - cluster_db.update_cluster_deployed_config(user, cluster_id, - **cluster_config) - - hosts_id_list = deployed_config[const.HOSTS].keys() - for host_id in hosts_id_list: - config = deployed_config[const.HOSTS][host_id] - cluster_db.update_cluster_host_deployed_config(user, - cluster_id, - host_id, - **config) - - @staticmethod - def update_state(cluster_id, host_id_list, user): - # update all clusterhosts state - for host_id in host_id_list: - cluster_db.update_cluster_host_state(user, cluster_id, host_id, - state='INSTALLING') - - # update cluster state - cluster_db.update_cluster_state(user, cluster_id, state='INSTALLING') - - @staticmethod - def get_machine_IPMI(machine_id, user): - machine_info = machine_db.get_machine(user, machine_id) - return machine_info[const.IPMI_CREDS] diff --git a/compass/actions/util.py b/compass/actions/util.py index de68423e..f8783119 100644 --- a/compass/actions/util.py +++ b/compass/actions/util.py @@ -21,8 +21,11 @@ import redis from contextlib import contextmanager -from compass.db.api import database -from compass.db import models +from compass.db.api import adapter_holder as adapter_db +from compass.db.api import cluster as cluster_db +from compass.db.api import host as host_db +from compass.db.api import machine as machine_db +from compass.deployment.utils import constants as const @contextmanager @@ -53,3 +56,223 @@ def lock(lock_name, blocking=True, timeout=10): logging.debug('released lock %s', lock_name) else: logging.debug('nothing to release %s', lock_name) + + +class ActionHelper(object): + + @staticmethod + def get_adapter_info(adapter_id, cluster_id, user): + """Get adapter information. Return a dictionary as below, + { + "id": 1, + "name": "xxx", + "flavors": [ + { + "flavor_name": "xxx", + "roles": ['xxx', 'yyy', ...], + "template": "xxx.tmpl" + }, + ... + ], + "metadata": { + "os_config": { + ... + }, + "package_config": { + ... + } + }, + "os_installer": { + "name": "cobbler", + "settings": {....} + }, + "pk_installer": { + "name": "chef", + "settings": {....} + }, + ... + } + To view a complete output, please refer to backend doc. + """ + adapter_info = adapter_db.get_adapter(user, adapter_id) + metadata = cluster_db.get_cluster_metadata(user, cluster_id) + adapter_info.update({const.METADATA: metadata}) + + for flavor_info in adapter_info[const.FLAVORS]: + roles = flavor_info[const.ROLES] + flavor_info[const.ROLES] = ActionHelper._get_role_names(roles) + + return adapter_info + + @staticmethod + def _get_role_names(roles): + return [role[const.NAME] for role in roles] + + @staticmethod + def get_cluster_info(cluster_id, user): + """Get cluster information.Return a dictionary as below, + { + "id": 1, + "adapter_id": 1, + "os_version": "CentOS-6.5-x86_64", + "name": "cluster_01", + "flavor": { + "flavor_name": "zzz", + "template": "xx.tmpl", + "roles": [...] + } + "os_config": {..}, + "package_config": {...}, + "deployed_os_config": {}, + "deployed_package_config": {}, + "owner": "xxx" + } + """ + cluster_info = cluster_db.get_cluster(user, cluster_id) + + # convert roles retrieved from db into a list of role names + roles_info = cluster_info.setdefault( + const.FLAVOR, {}).setdefault(const.ROLES, []) + cluster_info[const.FLAVOR][const.ROLES] = \ + ActionHelper._get_role_names(roles_info) + + # get cluster config info + cluster_config = cluster_db.get_cluster_config(user, cluster_id) + cluster_info.update(cluster_config) + + deploy_config = cluster_db.get_cluster_deployed_config(user, + cluster_id) + cluster_info.update(deploy_config) + + return cluster_info + + @staticmethod + def get_hosts_info(cluster_id, hosts_id_list, user): + """Get hosts information. Return a dictionary as below, + { + "hosts": { + 1($host_id): { + "reinstall_os": True, + "mac": "xxx", + "name": "xxx", + "roles": [xxx, yyy] + }, + "networks": { + "eth0": { + "ip": "192.168.1.1", + "netmask": "255.255.255.0", + "is_mgmt": True, + "is_promiscuous": False, + "subnet": "192.168.1.0/24" + }, + "eth1": {...} + }, + "os_config": {}, + "package_config": {}, + "deployed_os_config": {}, + "deployed_package_config": {} + }, + 2: {...}, + .... + } + } + """ + hosts_info = {} + for host_id in hosts_id_list: + info = cluster_db.get_cluster_host(user, cluster_id, host_id) + logging.debug("checking on info %r %r" % (host_id, info)) + + info[const.ROLES] = ActionHelper._get_role_names(info[const.ROLES]) + + # TODO(grace): Is following line necessary?? + info.setdefault(const.ROLES, []) + + config = cluster_db.get_cluster_host_config(user, + cluster_id, + host_id) + info.update(config) + + networks = info[const.NETWORKS] + networks_dict = {} + # Convert networks from list to dictionary format + for entry in networks: + nic_info = {} + nic_info = { + entry[const.NIC]: { + const.IP_ADDR: entry[const.IP_ADDR], + const.NETMASK: entry[const.NETMASK], + const.MGMT_NIC_FLAG: entry[const.MGMT_NIC_FLAG], + const.PROMISCUOUS_FLAG: entry[const.PROMISCUOUS_FLAG], + const.SUBNET: entry[const.SUBNET] + } + } + networks_dict.update(nic_info) + + info[const.NETWORKS] = networks_dict + + hosts_info[host_id] = info + + return hosts_info + + @staticmethod + def save_deployed_config(deployed_config, user): + cluster_config = deployed_config[const.CLUSTER] + cluster_id = cluster_config[const.ID] + del cluster_config[const.ID] + + cluster_db.update_cluster_deployed_config(user, cluster_id, + **cluster_config) + + hosts_id_list = deployed_config[const.HOSTS].keys() + for host_id in hosts_id_list: + config = deployed_config[const.HOSTS][host_id] + cluster_db.update_cluster_host_deployed_config(user, + cluster_id, + host_id, + **config) + + @staticmethod + def update_state(cluster_id, host_id_list, user): + # update all clusterhosts state + for host_id in host_id_list: + cluster_db.update_cluster_host_state(user, cluster_id, host_id, + state='INSTALLING') + + # update cluster state + cluster_db.update_cluster_state(user, cluster_id, state='INSTALLING') + + @staticmethod + def delete_cluster( + cluster_id, host_id_list, user, delete_underlying_host=False + ): + if delete_underlying_host: + for host_id in host_id_list: + host_db.del_host_from_database( + user, host_id + ) + cluster_db.del_cluster_from_database( + user, cluster_id + ) + + @staticmethod + def delete_cluster_host( + cluster_id, host_id, user, delete_underlying_host=False + ): + if delete_underlying_host: + host_db.del_host_from_database( + user, host_id + ) + cluster_db.del_cluster_host_from_database( + user, cluster_id, host_id + ) + + @staticmethod + def delete_host(host_id, user): + host_db.del_host_from_database( + user, host_id + ) + + @staticmethod + def get_machine_IPMI(machine_id, user): + machine_info = machine_db.get_machine(user, machine_id) + return machine_info[const.IPMI_CREDS] diff --git a/compass/api/api.py b/compass/api/api.py index f24f886e..098be35a 100644 --- a/compass/api/api.py +++ b/compass/api/api.py @@ -1346,7 +1346,7 @@ def delete_cluster(cluster_id): """Delete cluster.""" data = _get_request_data() return utils.make_json_response( - 200, + 202, cluster_api.del_cluster( current_user, cluster_id, **data ) @@ -1613,7 +1613,7 @@ def delete_cluster_host(cluster_id, host_id): """Delete cluster host.""" data = _get_request_data() return utils.make_json_response( - 200, + 202, cluster_api.del_cluster_host( current_user, cluster_id, host_id, **data ) @@ -1630,7 +1630,7 @@ def delete_clusterhost(clusterhost_id): """Delete cluster host.""" data = _get_request_data() return utils.make_json_response( - 200, + 202, cluster_api.del_clusterhost( current_user, clusterhost_id, **data ) @@ -1918,7 +1918,7 @@ def delete_host(host_id): """Delete host.""" data = _get_request_data() return utils.make_json_response( - 200, + 202, host_api.del_host( current_user, host_id, **data ) diff --git a/compass/db/api/cluster.py b/compass/db/api/cluster.py index 75cb1a20..20074780 100644 --- a/compass/db/api/cluster.py +++ b/compass/db/api/cluster.py @@ -292,9 +292,14 @@ def update_cluster(session, updater, cluster_id, **kwargs): @user_api.check_user_permission_in_session( permission.PERMISSION_DEL_CLUSTER ) -@utils.wrap_to_dict(RESP_FIELDS) +@utils.wrap_to_dict( + ['status', 'cluster', 'hosts'], + cluster=RESP_FIELDS, + hosts=RESP_CLUSTERHOST_FIELDS +) def del_cluster(session, deleter, cluster_id, **kwargs): """Delete a cluster.""" + from compass.tasks import client as celery_client cluster = utils.get_db_object( session, models.Cluster, id=cluster_id ) @@ -302,6 +307,32 @@ def del_cluster(session, deleter, cluster_id, **kwargs): session, cluster, deleter, reinstall_distributed_system_set=True ) + clusterhosts = [] + for clusterhost in cluster.clusterhosts: + clusterhosts.append(clusterhost) + + celery_client.celery.send_task( + 'compass.tasks.delete_cluster', + ( + deleter.email, cluster_id, + [clusterhost.host_id for clusterhost in clusterhosts] + ) + ) + return { + 'status': 'delete action sent', + 'cluster': cluster, + 'hosts': clusterhosts + } + + +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_CLUSTER +) +def del_cluster_from_database(session, deleter, cluster_id): + cluster = utils.get_db_object( + session, models.Cluster, id=cluster_id + ) return utils.del_db_object(session, cluster) @@ -518,10 +549,13 @@ def add_clusterhost_internal( session, models.Host, False, id=machine_id ) if host: - if host_api.is_host_editable( - session, host, cluster.creator, - reinstall_os_set=kwargs.get('reinstall_os', False), - exception_when_not_editable=False + if ( + host_dict and + host_api.is_host_editable( + session, host, cluster.creator, + reinstall_os_set=kwargs.get('reinstall_os', False), + exception_when_not_editable=False + ) ): if 'name' in host_dict: hostname = host_dict['name'] @@ -688,6 +722,38 @@ def add_cluster_host( ) @utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) def _update_clusterhost(session, updater, clusterhost, **kwargs): + clusterhost_dict = {} + host_dict = {} + for key, value in kwargs.items(): + if key in UPDATED_HOST_FIELDS: + host_dict[key] = value + else: + clusterhost_dict[key] = value + + if host_dict: + from compass.db.api import host as host_api + host = clusterhost.host + if host_api.is_host_editable( + session, host, clusterhost.cluster.creator, + reinstall_os_set=kwargs.get('reinstall_os', False), + exception_when_not_editable=False + ): + if 'name' in host_dict: + hostname = host_dict['name'] + host_by_name = utils.get_db_object( + session, models.Host, False, name=hostname + ) + if host_by_name and host_by_name.id != host.id: + raise exception.InvalidParameter( + 'host name %s exists in host %s' % ( + hostname, host_by_name.id + ) + ) + utils.update_db_object( + session, host, + **host_dict + ) + def roles_validates(roles): cluster_roles = [] cluster = clusterhost.cluster @@ -728,7 +794,7 @@ def _update_clusterhost(session, updater, clusterhost, **kwargs): @utils.supported_filters( - optional_support_keys=UPDATED_CLUSTERHOST_FIELDS, + optional_support_keys=(UPDATED_HOST_FIELDS + UPDATED_CLUSTERHOST_FIELDS), ignore_support_keys=IGNORE_FIELDS ) @database.run_in_session() @@ -744,7 +810,7 @@ def update_cluster_host( @utils.supported_filters( - optional_support_keys=UPDATED_CLUSTERHOST_FIELDS, + optional_support_keys=(UPDATED_HOST_FIELDS + UPDATED_CLUSTERHOST_FIELDS), ignore_support_keys=IGNORE_FIELDS ) @database.run_in_session() @@ -802,9 +868,10 @@ def patch_clusterhost( @user_api.check_user_permission_in_session( permission.PERMISSION_DEL_CLUSTER_HOST ) -@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +@utils.wrap_to_dict(['status', 'host'], host=RESP_CLUSTERHOST_FIELDS) def del_cluster_host(session, deleter, cluster_id, host_id, **kwargs): """Delete cluster host.""" + from compass.tasks import client as celery_client clusterhost = utils.get_db_object( session, models.ClusterHost, cluster_id=cluster_id, host_id=host_id @@ -813,9 +880,27 @@ def del_cluster_host(session, deleter, cluster_id, host_id, **kwargs): session, clusterhost.cluster, deleter, reinstall_distributed_system_set=True ) - return utils.del_db_object( - session, clusterhost + celery_client.celery.send_task( + 'compass.tasks.delete_cluster_host', + ( + deleter.email, cluster_id, host_id + ) ) + return { + 'status': 'delete action sent', + 'host': clusterhost, + } + + +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_CLUSTER_HOST +) +def del_cluster_host_from_database(session, deleter, cluster_id, host_id): + clusterhost = utils.get_db_object( + session, models.ClusterHost, id=cluster_id, host_id=host_id + ) + return utils.del_db_object(session, clusterhost) @utils.supported_filters([]) @@ -823,9 +908,10 @@ def del_cluster_host(session, deleter, cluster_id, host_id, **kwargs): @user_api.check_user_permission_in_session( permission.PERMISSION_DEL_CLUSTER_HOST ) -@utils.wrap_to_dict(RESP_CLUSTERHOST_FIELDS) +@utils.wrap_to_dict(['status', 'host'], host=RESP_CLUSTERHOST_FIELDS) def del_clusterhost(session, deleter, clusterhost_id, **kwargs): """Delete cluster host.""" + from compass.tasks import client as celery_client clusterhost = utils.get_db_object( session, models.ClusterHost, clusterhost_id=clusterhost_id @@ -834,9 +920,27 @@ def del_clusterhost(session, deleter, clusterhost_id, **kwargs): session, clusterhost.cluster, deleter, reinstall_distributed_system_set=True ) - return utils.del_db_object( - session, clusterhost + celery_client.celery.send_task( + 'compass.tasks.delete_cluster_host', + ( + deleter.email, clusterhost.cluster_id, clusterhost.host_id + ) ) + return { + 'status': 'delete action sent', + 'host': clusterhost, + } + + +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_CLUSTER_HOST +) +def del_clusterhost_from_database(session, deleter, clusterhost_id): + clusterhost = utils.get_db_object( + session, models.ClusterHost, clusterhost_id=clusterhost_id + ) + return utils.del_db_object(session, clusterhost) @utils.supported_filters([]) diff --git a/compass/db/api/host.py b/compass/db/api/host.py index a039e424..cfd4f48b 100644 --- a/compass/db/api/host.py +++ b/compass/db/api/host.py @@ -317,9 +317,11 @@ def update_hosts(session, updater, data=[]): @user_api.check_user_permission_in_session( permission.PERMISSION_DEL_HOST ) -@utils.wrap_to_dict(RESP_FIELDS) +@utils.wrap_to_dict(['status', 'host'], host=RESP_FIELDS) def del_host(session, deleter, host_id, **kwargs): """Delete a host.""" + from compass.db.api import cluster as cluster_api + from compass.tasks import client as celery_client host = utils.get_db_object( session, models.Host, id=host_id ) @@ -327,6 +329,34 @@ def del_host(session, deleter, host_id, **kwargs): session, host, deleter, reinstall_os_set=True ) + cluster_ids = [] + for clusterhost in host.clusterhosts: + cluster_api.is_cluster_editable( + session, clusterhost.cluster, deleter, + reinstall_distributed_system_set=True + ) + cluster_ids.append(clusterhost.cluster_id) + + celery_client.celery.send_task( + 'compass.tasks.delete_host', + ( + deleter.email, host_id, cluster_ids + ) + ) + return { + 'status': 'delete action sent', + 'host': host, + } + + +@database.run_in_session() +@user_api.check_user_permission_in_session( + permission.PERMISSION_DEL_HOST +) +def del_host_from_database(session, deleter, host_id): + host = utils.get_db_object( + session, models.Host, id=host_id + ) return utils.del_db_object(session, host) diff --git a/compass/db/api/machine.py b/compass/db/api/machine.py index b94c63f4..8a168344 100644 --- a/compass/db/api/machine.py +++ b/compass/db/api/machine.py @@ -128,6 +128,13 @@ def patch_machine(session, updater, machine_id, **kwargs): def del_machine(session, deleter, machine_id, **kwargs): """Delete a machine.""" machine = utils.get_db_object(session, models.Machine, id=machine_id) + if machine.host: + host = machine.host + raise exception.NotAcceptable( + 'machine %s has host %s on it' % ( + machine.mac, host.name + ) + ) return utils.del_db_object(session, machine) diff --git a/compass/db/api/metadata.py b/compass/db/api/metadata.py index dfa0813f..41122d2b 100644 --- a/compass/db/api/metadata.py +++ b/compass/db/api/metadata.py @@ -301,17 +301,28 @@ def _validate_self( metadata, whole_check, **kwargs ): + logging.debug('validate config self %s', config_path) if '_self' not in metadata: if isinstance(config, dict): _validate_config( config_path, config, metadata, whole_check, **kwargs ) return - field_type = metadata['_self'].get('field_type', 'basestring') + field_type = metadata['_self'].get('field_type', basestring) if not isinstance(config, field_type): raise exception.InvalidParameter( '%s config type is not %s' % (config_path, field_type) ) + is_required = metadata['_self'].get( + 'is_required', False + ) + required_in_whole_config = metadata['_self'].get( + 'required_in_whole_config', False + ) + if isinstance(config, basestring): + if config == '' and not is_required and not required_in_whole_config: + # ignore empty config when it is optional + return required_in_options = metadata['_self'].get( 'required_in_options', False ) @@ -333,6 +344,7 @@ def _validate_self( '%s config is not in %s' % (config_path, options) ) validator = metadata['_self'].get('validator', None) + logging.debug('validate by validator %s', validator) if validator: if not validator(config_key, config, **kwargs): raise exception.InvalidParameter( @@ -348,6 +360,7 @@ def _validate_config( config_path, config, metadata, whole_check, **kwargs ): + logging.debug('validate config %s', config_path) generals = {} specified = {} for key, value in metadata.items(): diff --git a/compass/db/api/network.py b/compass/db/api/network.py index 3eedb26f..94f71987 100644 --- a/compass/db/api/network.py +++ b/compass/db/api/network.py @@ -125,4 +125,18 @@ def del_subnet(session, deleter, subnet_id, **kwargs): subnet = utils.get_db_object( session, models.Subnet, id=subnet_id ) + if subnet.host_networks: + host_networks = [ + '%s:%s=%s' % ( + host_network.host.name, host_network.interface, + host_network.ip + ) + for host_network in subnet.host_networks + ] + raise exception.NotAcceptable( + 'subnet %s contains host networks %s' % ( + subnet.subnet, host_networks + ) + ) + return utils.del_db_object(session, subnet) diff --git a/compass/db/api/utils.py b/compass/db/api/utils.py index d20f09df..a0304261 100644 --- a/compass/db/api/utils.py +++ b/compass/db/api/utils.py @@ -462,12 +462,12 @@ def get_db_object(session, table, exception_when_missing=True, **kwargs): with session.begin(subtransactions=True): logging.debug( 'session %s get db object %s from table %s', - session, kwargs, table.__name__) + id(session), kwargs, table.__name__) db_object = model_filter( model_query(session, table), table, **kwargs ).first() logging.debug( - 'session %s got db object %s', session, db_object + 'session %s got db object %s', id(session), db_object ) if db_object: return db_object @@ -488,7 +488,7 @@ def add_db_object(session, table, exception_when_existing=True, with session.begin(subtransactions=True): logging.debug( 'session %s add object %s atributes %s to table %s', - session, args, kwargs, table.__name__) + id(session), args, kwargs, table.__name__) argspec = inspect.getargspec(table.__init__) arg_names = argspec.args[1:] arg_defaults = argspec.defaults @@ -526,7 +526,7 @@ def add_db_object(session, table, exception_when_existing=True, db_object.initialize() db_object.validate() logging.debug( - 'session %s db object %s added', session, db_object + 'session %s db object %s added', id(session), db_object ) return db_object @@ -536,7 +536,7 @@ def list_db_objects(session, table, order_by=[], **filters): with session.begin(subtransactions=True): logging.debug( 'session %s list db objects by filters %s in table %s', - session, filters, table.__name__ + id(session), filters, table.__name__ ) db_objects = model_order_by( model_filter( @@ -549,7 +549,7 @@ def list_db_objects(session, table, order_by=[], **filters): ).all() logging.debug( 'session %s got listed db objects: %s', - session, db_objects + id(session), db_objects ) return db_objects @@ -559,7 +559,7 @@ def del_db_objects(session, table, **filters): with session.begin(subtransactions=True): logging.debug( 'session %s delete db objects by filters %s in table %s', - session, filters, table.__name__ + id(session), filters, table.__name__ ) query = model_filter( model_query(session, table), table, **filters @@ -567,7 +567,7 @@ def del_db_objects(session, table, **filters): db_objects = query.all() query.delete(synchronize_session=False) logging.debug( - 'session %s db objects %s deleted', session, db_objects + 'session %s db objects %s deleted', id(session), db_objects ) return db_objects @@ -577,7 +577,7 @@ def update_db_objects(session, table, **filters): with session.begin(subtransactions=True): logging.debug( 'session %s update db objects by filters %s in table %s', - session, filters, table.__name__) + id(session), filters, table.__name__) db_objects = model_filter( model_query(session, table), table, **filters ).all() @@ -587,7 +587,8 @@ def update_db_objects(session, table, **filters): db_object.update() db_object.validate() logging.debug( - 'session %s db objects %s updated', session, db_objects + 'session %s db objects %s updated', + id(session), db_objects ) return db_objects @@ -597,7 +598,7 @@ def update_db_object(session, db_object, **kwargs): with session.begin(subtransactions=True): logging.debug( 'session %s update db object %s by value %s', - session, db_object, kwargs + id(session), db_object, kwargs ) for key, value in kwargs.items(): setattr(db_object, key, value) @@ -605,7 +606,8 @@ def update_db_object(session, db_object, **kwargs): db_object.update() db_object.validate() logging.debug( - 'session %s db object %s updated', session, db_object + 'session %s db object %s updated', + id(session), db_object ) return db_object @@ -615,12 +617,12 @@ def del_db_object(session, db_object): with session.begin(subtransactions=True): logging.debug( 'session %s delete db object %s', - session, db_object + id(session), db_object ) session.delete(db_object) logging.debug( 'session %s db object %s deleted', - session, db_object + id(session), db_object ) return db_object diff --git a/compass/db/models.py b/compass/db/models.py index da1c4155..a539729e 100644 --- a/compass/db/models.py +++ b/compass/db/models.py @@ -486,6 +486,9 @@ class HostNetwork(BASE, TimestampMixin, HelperMixin): self.interface = interface super(HostNetwork, self).__init__(**kwargs) + def __str__(self): + return 'HostNetwork[%s=%s]' % (self.interface, self.ip) + @property def ip(self): return str(netaddr.IPAddress(self.ip_int)) @@ -558,6 +561,11 @@ class ClusterHostLogHistory(BASE, LogHistoryMixin): self.filename = filename super(ClusterHostLogHistory, self).__init__(**kwargs) + def __str__(self): + return 'ClusterHostLogHistory[%s:%s]' % ( + self.clusterhost_id, self.filename + ) + def initialize(self): self.cluster_id = self.clusterhost.cluster_id self.host_id = self.clusterhost.host_id @@ -580,6 +588,9 @@ class HostLogHistory(BASE, LogHistoryMixin): self.filename = filename super(HostLogHistory, self).__init__(**kwargs) + def __str__(self): + return 'HostLogHistory[%s:%s]' % (self.id, self.filename) + class ClusterHostState(BASE, StateMixin): """ClusterHost state table.""" @@ -594,6 +605,11 @@ class ClusterHostState(BASE, StateMixin): primary_key=True ) + def __str__(self): + return 'ClusterHostState[%s state %s percentage %s]' % ( + self.id, self.state, self.percentage + ) + def update(self): super(ClusterHostState, self).update() host_state = self.clusterhost.host.state @@ -655,6 +671,9 @@ class ClusterHost(BASE, TimestampMixin, HelperMixin): self.state = ClusterHostState() super(ClusterHost, self).__init__(**kwargs) + def __str__(self): + return 'ClusterHost[%s:%s]' % (self.clusterhost_id, self.name) + def update(self): if self.host.reinstall_os: if self.state in ['SUCCESSFUL', 'ERROR']: @@ -662,7 +681,8 @@ class ClusterHost(BASE, TimestampMixin, HelperMixin): self.state.state = 'INITIALIZED' else: self.state.state = 'UNINITIALIZED' - self.state.update() + self.state.update() + super(ClusterHost, self).update() @property def name(self): @@ -866,6 +886,11 @@ class HostState(BASE, StateMixin): primary_key=True ) + def __str__(self): + return 'HostState[%s state %s percentage %s]' % ( + self.id, self.state, self.percentage + ) + def update(self): super(HostState, self).update() host = self.host @@ -944,6 +969,9 @@ class Host(BASE, TimestampMixin, HelperMixin): backref=backref('host') ) + def __str__(self): + return 'Host[%s:%s]' % (self.id, self.name) + @hybrid_property def mac(self): machine = self.machine @@ -1004,6 +1032,7 @@ class Host(BASE, TimestampMixin, HelperMixin): self.os_name = os.name else: self.os_name = None + self.state.update() super(Host, self).update() def validate(self): @@ -1089,6 +1118,11 @@ class ClusterState(BASE, StateMixin): default=0 ) + def __str__(self): + return 'ClusterState[%s state %s percentage %s]' % ( + self.id, self.state, self.percentage + ) + def to_dict(self): dict_info = super(ClusterState, self).to_dict() dict_info['status'] = { @@ -1199,8 +1233,8 @@ class Cluster(BASE, TimestampMixin, HelperMixin): self.state = ClusterState() super(Cluster, self).__init__(**kwargs) - def initialize(self): - super(Cluster, self).initialize() + def __str__(self): + return 'Cluster[%s:%s]' % (self.id, self.name) def update(self): creator = self.creator @@ -1233,6 +1267,7 @@ class Cluster(BASE, TimestampMixin, HelperMixin): self.flavor_name = flavor.name else: self.flavor_name = None + self.state.update() super(Cluster, self).update() def validate(self): @@ -1375,6 +1410,9 @@ class UserPermission(BASE, HelperMixin, TimestampMixin): self.user_id = user_id self.permission_id = permission_id + def __str__(self): + return 'UserPermission[%s:%s]' % (self.id, self.name) + @hybrid_property def name(self): return self.permission.name @@ -1404,6 +1442,9 @@ class Permission(BASE, HelperMixin, TimestampMixin): self.name = name super(Permission, self).__init__(**kwargs) + def __str__(self): + return 'Permission[%s:%s]' % (self.id, self.name) + class UserToken(BASE, HelperMixin): """user token table.""" @@ -1497,6 +1538,9 @@ class User(BASE, HelperMixin, TimestampMixin): self.email = email super(User, self).__init__(**kwargs) + def __str__(self): + return 'User[%s]' % self.email + def validate(self): super(User, self).validate() if not self.crypted_password: @@ -1528,12 +1572,6 @@ class User(BASE, HelperMixin, TimestampMixin): ] return dict_info - def __str__(self): - return '%s[email:%s,is_admin:%s,active:%s]' % ( - self.__class__.__name__, - self.email, self.is_admin, self.active - ) - class SwitchMachine(BASE, HelperMixin, TimestampMixin): """Switch Machine table.""" @@ -1560,6 +1598,11 @@ class SwitchMachine(BASE, HelperMixin, TimestampMixin): self.machine_id = machine_id super(SwitchMachine, self).__init__(**kwargs) + def __str__(self): + return 'SwitchMachine[%s port %s]' % ( + self.switch_machine_id, self.port + ) + def validate(self): super(SwitchMachine, self).validate() if not self.switch: @@ -1709,6 +1752,9 @@ class Machine(BASE, HelperMixin, TimestampMixin): self.mac = mac super(Machine, self).__init__(**kwargs) + def __str__(self): + return 'Machine[%s:%s]' % (self.id, self.mac) + def validate(self): super(Machine, self).validate() try: @@ -1789,6 +1835,9 @@ class Switch(BASE, HelperMixin, TimestampMixin): backref=backref('switch') ) + def __str__(self): + return 'Switch[%s:%s]' % (self.id, self.ip) + @classmethod def parse_filters(cls, filters): if isinstance(filters, basestring): @@ -2094,6 +2143,9 @@ class OperatingSystem(BASE, HelperMixin): self.name = name super(OperatingSystem, self).__init__() + def __str__(self): + return 'OperatingSystem[%s:%s]' % (self.id, self.name) + @property def root_metadatas(self): return [ @@ -2199,6 +2251,9 @@ class AdapterFlavor(BASE, HelperMixin): UniqueConstraint('name', 'adapter_id', name='constraint'), ) + def __str__(self): + return 'AdapterFlavor[%s:%s]' % (self.id, self.name) + @property def ordered_flavor_roles(self): flavor_roles = dict([ @@ -2285,6 +2340,9 @@ class AdapterRole(BASE, HelperMixin): self.adapter_id = adapter_id super(AdapterRole, self).__init__(**kwargs) + def __str__(self): + return 'AdapterRole[%s:%s]' % (self.id, self.name) + def initialize(self): if not self.description: self.description = self.name @@ -2592,6 +2650,9 @@ class DistributedSystem(BASE, HelperMixin): self.name = name super(DistributedSystem, self).__init__() + def __str__(self): + return 'DistributedSystem[%s:%s]' % (self.id, self.name) + class OSInstaller(BASE, InstallerMixin): """OS installer table.""" @@ -2612,6 +2673,9 @@ class OSInstaller(BASE, InstallerMixin): self.alias = alias super(OSInstaller, self).__init__(**kwargs) + def __str__(self): + return 'OSInstaller[%s:%s]' % (self.id, self.alias) + class PackageInstaller(BASE, InstallerMixin): """package installer table.""" @@ -2628,6 +2692,9 @@ class PackageInstaller(BASE, InstallerMixin): self.alias = alias super(PackageInstaller, self).__init__(**kwargs) + def __str__(self): + return 'PackageInstaller[%s:%s]' % (self.id, self.alias) + class Subnet(BASE, TimestampMixin, HelperMixin): """network table.""" @@ -2648,6 +2715,9 @@ class Subnet(BASE, TimestampMixin, HelperMixin): self.subnet = subnet super(Subnet, self).__init__(**kwargs) + def __str__(self): + return 'Subnet[%s:%s]' % (self.id, self.subnet) + def to_dict(self): dict_info = super(Subnet, self).to_dict() if not self.name: diff --git a/compass/db/validator.py b/compass/db/validator.py index c8c4d3a2..730bb52c 100644 --- a/compass/db/validator.py +++ b/compass/db/validator.py @@ -13,6 +13,7 @@ # limitations under the License. """Validator methods.""" +import logging import netaddr import re import socket @@ -23,87 +24,162 @@ from compass.utils import util def is_valid_ip(name, ip_addr, **kwargs): """Valid the format of an IP address.""" + if isinstance(ip_addr, list): + return all([ + is_valid_ip(name, item, **kwargs) for item in ip_addr + ]) try: netaddr.IPAddress(ip_addr) except Exception: + logging.debug('%s invalid ip addr %s', name, ip_addr) return False return True def is_valid_network(name, ip_network, **kwargs): """Valid the format of an Ip network.""" + if isinstance(ip_network, list): + return all([ + is_valid_network(name, item, **kwargs) for item in ip_network + ]) try: netaddr.IPNetwork(ip_network) except Exception: + logging.debug('%s invalid network %s', name, ip_network) return False - return False + return True def is_valid_netmask(name, ip_addr, **kwargs): """Valid the format of a netmask.""" + if isinstance(ip_addr, list): + return all([ + is_valid_netmask(name, item, **kwargs) for item in ip_addr + ]) if not is_valid_ip(ip_addr): return False ip = netaddr.IPAddress(ip_addr) if ip.is_netmask(): return True - else: - return False + logging.debug('%s invalid netmask %s', name, ip_addr) + return False def is_valid_gateway(name, ip_addr, **kwargs): """Valid the format of gateway.""" + if isinstance(ip_addr, list): + return all([ + is_valid_gateway(name, item, **kwargs) for item in ip_addr + ]) if not is_valid_ip(ip_addr): return False ip = netaddr.IPAddress(ip_addr) if ip.is_private() or ip.is_public(): return True - else: - return False + logging.debug('%s invalid gateway %s', name, ip_addr) + return False def is_valid_dns(name, dns, **kwargs): """Valid the format of DNS.""" + if isinstance(dns, list): + return all([is_valid_dns(name, item, **kwargs) for item in dns]) if is_valid_ip(dns): return True try: socket.gethostbyname_ex(dns) except Exception: + logging.debug('%s invalid dns name %s', name, dns) return False return True +def is_valid_url(name, url, **kwargs): + """Valid the format of url.""" + if isinstance(url, list): + return all([ + is_valid_url(name, item, **kwargs) for item in url + ]) + if re.match( + r'^(http|https|ftp)://([0-9A-Za-z_-]+)(\.[0-9a-zA-Z_-]+)*' + r'(:\d+)?(/[0-9a-zA-Z_-]+)*$', + url + ): + return True + logging.debug( + '%s invalid url %s', name, url + ) + return False + + +def is_valid_domain(name, domain, **kwargs): + """Validate the format of domain.""" + if isinstance(domain, list): + return all([ + is_valid_domain(name, item, **kwargs) for item in domain + ]) + if re.match( + r'^([0-9a-zA-Z_-]+)(\.[0-9a-zA-Z_-]+)*$', + domain + ): + return True + logging.debug( + '%s invalid domain %s', name, domain + ) + return False + + def is_valid_username(name, username, **kwargs): """Valid the format of username.""" - return bool(username) + if bool(username): + return True + logging.debug( + '%s username is empty', name + ) def is_valid_password(name, password, **kwargs): """Valid the format of password.""" - return bool(password) + if bool(password): + return True + logging.debug('%s password is empty', name) + return False def is_valid_partition(name, partition, **kwargs): """Valid the format of partition name.""" if name != 'swap' and not name.startswith('/'): + logging.debug( + '%s is not started with / or swap', name + ) return False if 'size' not in partition and 'percentage' not in partition: + logging.debug( + '%s partition does not contain sie or percentage', + name + ) return False return True def is_valid_percentage(name, percentage, **kwargs): """Valid the percentage.""" - return 0 <= percentage <= 100 + if 0 <= percentage <= 100: + return True + logging.debug('%s invalid percentage %s', name, percentage) def is_valid_port(name, port, **kwargs): """Valid the format of port.""" - return 0 < port < 65536 + if 0 < port < 65536: + return True + logging.debug('%s invalid port %s', name, port) def is_valid_size(name, size, **kwargs): - if re.match(r'(\d+)(K|M|G|T)?', size): + if re.match(r'^(\d+)(K|M|G|T)$', size): return True + logging.debug('%s invalid size %s', name, size) return False diff --git a/compass/deployment/deploy_manager.py b/compass/deployment/deploy_manager.py index 63afd0d0..8d52ff7d 100644 --- a/compass/deployment/deploy_manager.py +++ b/compass/deployment/deploy_manager.py @@ -140,13 +140,13 @@ class DeployManager(object): self.redeploy_os() self.redeploy_target_system() - def remove_hosts(self, package_only=False): + def remove_hosts(self, package_only=False, delete_cluster=False): """Remove hosts from both OS and/or package installlers server side.""" if self.os_installer and not package_only: self.os_installer.delete_hosts() if self.pk_installer: - self.pk_installer.delete_hosts() + self.pk_installer.delete_hosts(delete_cluster=delete_cluster) def _get_hosts_for_os_installation(self, hosts_info): """Get info of hosts which need to install/reinstall OS.""" diff --git a/compass/deployment/installers/os_installers/cobbler/cobbler.py b/compass/deployment/installers/os_installers/cobbler/cobbler.py index 5ae589ae..7406b813 100644 --- a/compass/deployment/installers/os_installers/cobbler/cobbler.py +++ b/compass/deployment/installers/os_installers/cobbler/cobbler.py @@ -302,8 +302,10 @@ class CobblerInstaller(OSInstaller): def delete_hosts(self): hosts_id_list = self.config_manager.get_host_id_list() + logging.debug('delete hosts %s', hosts_id_list) for host_id in hosts_id_list: self.delete_single_host(host_id) + self._sync() def delete_single_host(self, host_id): """Delete the host from cobbler server and clean up the installation @@ -311,11 +313,12 @@ class CobblerInstaller(OSInstaller): """ hostname = self.config_manager.get_hostname(host_id) try: - log_dir_prefix = compass_setting.INSTALLATION_LOGDIR[self.NAME] + log_dir_prefix = compass_setting.INSTALLATION_LOGDIR[NAME] self._clean_system(hostname) self._clean_log(log_dir_prefix, hostname) except Exception as ex: - logging.info("Deleting host got exception: %s", ex.message) + logging.error("Deleting host got exception: %s", ex) + logging.exception(ex) def _get_host_tmpl_vars_dict(self, host_id, global_vars_dict, **kwargs): """Generate template variables dictionary. diff --git a/compass/deployment/installers/pk_installers/chef_installer/chef_installer.py b/compass/deployment/installers/pk_installers/chef_installer/chef_installer.py index 534dc2bb..d234be9b 100644 --- a/compass/deployment/installers/pk_installers/chef_installer/chef_installer.py +++ b/compass/deployment/installers/pk_installers/chef_installer/chef_installer.py @@ -135,10 +135,20 @@ class ChefInstaller(PKInstaller): return node - def delete_hosts(self): + def delete_hosts(self, delete_cluster=False): hosts_id_list = self.config_manager.get_host_id_list() for host_id in hosts_id_list: self.delete_node(host_id) + if delete_cluster: + self.delete_environment() + + def delete_environment(self): + adapter_name = self.config_manager.get_adapter_name() + cluster_name = self.config_manager.get_clustername() + env_name = self.get_env_name(adapter_name, cluster_name) + env = self.get_create_environment(env_name) + if env: + self._delete_environment(env) def delete_node(self, host_id): fullname = self.config_manager.get_host_fullname(host_id) @@ -146,6 +156,20 @@ class ChefInstaller(PKInstaller): if node: self._delete_node(node) + def _delete_environment(self, env): + """clean env attributes about arget system.""" + import chef + if env is None: + raise Exception("env is None, cannot delete a bnone env.") + env_name = env.name + try: + env.delete() + except Exception as error: + logging.debug( + 'failed to delete env %s, error: %s', + env_name, error + ) + def _delete_node(self, node): """clean node attributes about target system.""" import chef @@ -525,7 +549,7 @@ class ChefInstaller(PKInstaller): def _clean_log(self, log_dir_prefix, node_name): log_dir = os.path.join(log_dir_prefix, node_name) - shutil.rmtree(log_dir, False) + shutil.rmtree(log_dir, True) def get_supported_dist_systems(self): """get target systems from chef. All target_systems for compass will diff --git a/compass/hdsdiscovery/hdmanager.py b/compass/hdsdiscovery/hdmanager.py index 38a19dbc..262dc6c2 100644 --- a/compass/hdsdiscovery/hdmanager.py +++ b/compass/hdsdiscovery/hdmanager.py @@ -101,11 +101,12 @@ class HDManager(object): :return a tuple (vendor, switch_state, error) """ - switch_lists = util.load_configs(setting.SWITCH_LIST_DIR) + switch_lists = util.load_configs(setting.MACHINE_LIST_DIR) switch_list = [] - for item in switch_lists: - if item and 'SWITCH_LIST' in item and item['SWITCH_LIST']: - switch_list.extend(item['SWITCH_LIST']) + for items in switch_lists: + for item in items['MACHINE_LIST']: + for k, v in item.items(): + switch_list.append(k) if host in switch_list: return ("appliance", "Found", "") diff --git a/compass/hdsdiscovery/vendors/appliance/plugins/mac.py b/compass/hdsdiscovery/vendors/appliance/plugins/mac.py index 4244eb13..6fec8abe 100644 --- a/compass/hdsdiscovery/vendors/appliance/plugins/mac.py +++ b/compass/hdsdiscovery/vendors/appliance/plugins/mac.py @@ -27,7 +27,9 @@ class Mac(base.BaseSnmpMacPlugin): """Processes MAC address.""" def __init__(self, host, credential): - return + self.host = host + #self.credential = credential + #return def scan(self): """Implemnets the scan method in BasePlugin class. @@ -36,8 +38,11 @@ class Mac(base.BaseSnmpMacPlugin): Dummy scan function for compass appliance. Returns fixed mac addresses. """ - mac_lists = util.load_configs(setting.MAC_LIST_DIR) mac_list = None - for item in mac_lists: - mac_list = item['MAC_LIST'] + machine_lists = util.load_configs(setting.MACHINE_LIST_DIR) + for items in machine_lists: + for item in items['MACHINE_LIST']: + for k, v in item.items(): + if k == self.host: + mac_list = v return mac_list diff --git a/compass/tasks/tasks.py b/compass/tasks/tasks.py index fdd10227..63fbd035 100644 --- a/compass/tasks/tasks.py +++ b/compass/tasks/tasks.py @@ -21,6 +21,8 @@ import logging from celery.signals import celeryd_init from celery.signals import setup_logging +from compass.actions import clean +from compass.actions import delete from compass.actions import deploy from compass.actions import poll_switch from compass.actions import update_progress @@ -82,8 +84,10 @@ def pollswitch( def deploy_cluster(deployer_email, cluster_id, clusterhost_ids): """Deploy the given cluster. - :param cluster_hosts: the cluster and hosts of each cluster to deploy. - :type cluster_hosts: dict of int to list of int + :param cluster_id: id of the cluster + :type cluster_id: int + :param clusterhost_ids: the id of the hosts in the cluster + :type clusterhost_ids: list of int """ try: deploy.deploy(cluster_id, clusterhost_ids, deployer_email) @@ -95,10 +99,100 @@ def deploy_cluster(deployer_email, cluster_id, clusterhost_ids): def reinstall_cluster(installer_email, cluster_id, clusterhost_ids): """reinstall the given cluster. - :param cluster_hosts: the cluster and hosts of each cluster to reinstall. - :type cluster_hosts: dict of int to list of int + :param cluster_id: id of the cluster + :type cluster_id: int + :param clusterhost_ids: the id of the hosts in the cluster + :type clusterhost_ids: list of int """ - pass + try: + deploy.redeploy(cluster_id, clusterhost_ids, installer_email) + except Exception as error: + logging.exception(error) + + +@celery.task(name='compass.tasks.delete_cluster') +def delete_cluster( + deleter_email, cluster_id, clusterhost_ids, + delete_underlying_host=False +): + """Delete the given cluster. + + :param cluster_id: id of the cluster + :type cluster_id: int + :param clusterhost_ids: the id of the hosts in the cluster + :type clusterhost_ids: list of int + """ + try: + delete.delete_cluster( + cluster_id, clusterhost_ids, deleter_email, + delete_underlying_host=delete_underlying_host + ) + except Exception as error: + logging.exception(error) + + +@celery.task(name='compass.tasks.delete_cluster_host') +def delete_cluster_host( + deleter_email, cluster_id, host_id, + delete_underlying_host=False +): + """Delte the given cluster host. + + :param cluster_id: id of the cluster + :type cluster_id: int + :param host_id: id of the host + :type host_id: int + """ + try: + delete.delete_cluster_host( + cluster_id, host_id, deleter_email, + delete_underlying_host=delete_underlying_host + ) + except Exception as error: + logging.exception(error) + + +@celery.task(name='compass.tasks.delete_host') +def delete_host(deleter_email, host_id, cluster_ids): + """Delete the given host. + + :param host_id: id of the host + :type host_id: int + :param cluster_ids: list of cluster id + :type cluster_ids: list of int + """ + try: + delete.delete_host( + host_id, deleter_email, cluster_ids + ) + except Exception as error: + logging.exception(error) + + +@celery.task(name='compass.tasks.clean_os_installer') +def clean_os_installer( + os_installer_name, os_installer_settings +): + """Clean os installer.""" + try: + clean.clean_os_installer( + os_installer_name, os_installer_settings + ) + except Exception as error: + logging.excception(error) + + +@celery.task(name='compass.tasks.clean_package_installer') +def clean_package_installer( + package_installer_name, package_installer_settings +): + """Clean package installer.""" + try: + clean.clean_package_installer( + package_installer_name, package_installer_settings + ) + except Exception as error: + logging.excception(error) @celery.task(name='compass.tasks.poweron_host') diff --git a/compass/tests/api/test_api.py b/compass/tests/api/test_api.py index 706741a6..491ffacf 100644 --- a/compass/tests/api/test_api.py +++ b/compass/tests/api/test_api.py @@ -72,6 +72,8 @@ class ApiTestCase(unittest2.TestCase): self.test_client = application.test_client() celery.current_app.send_task = mock.Mock() + from compass.tasks import client as celery_client + celery_client.celery.send_task = mock.Mock() url = '/users/token' data = self.USER_CREDENTIALS request_data = json.dumps(data) @@ -385,7 +387,7 @@ class TestClusterAPI(ApiTestCase): # delete a cluster sucessfully url = '/clusters/1' return_value = self.delete(url) - self.assertEqual(return_value.status_code, 200) + self.assertEqual(return_value.status_code, 202) def test_list_cluster_hosts(self): # list cluster_hosts successfully @@ -451,7 +453,7 @@ class TestClusterAPI(ApiTestCase): # delete a cluster_host successfully url = '/clusters/1/hosts/1' return_value = self.delete(url) - self.assertEqual(return_value.status_code, 200) + self.assertEqual(return_value.status_code, 202) # give a non-existed cluster_id url = '/clusters/99/hosts/1' @@ -862,7 +864,7 @@ class TestHostAPI(ApiTestCase): # delete a host successfully url = '/hosts/2' return_value = self.delete(url) - self.assertEqual(return_value.status_code, 200) + self.assertEqual(return_value.status_code, 202) # give a non-existed id url = '/hosts/99' diff --git a/compass/tests/db/api/test_cluster.py b/compass/tests/db/api/test_cluster.py index 2a46e14c..733fc949 100644 --- a/compass/tests/db/api/test_cluster.py +++ b/compass/tests/db/api/test_cluster.py @@ -383,15 +383,13 @@ class TestDelCluster(ClusterTestCase): super(TestDelCluster, self).setUp() def test_del_cluster(self): - cluster.del_cluster( + from compass.tasks import client as celery_client + celery_client.celery.send_task = mock.Mock() + del_cluster = cluster.del_cluster( self.user_object, self.cluster_id ) - del_clusters = cluster.list_clusters(self.user_object) - cluster_ids = [] - for del_cluster in del_clusters: - cluster_ids.append(del_cluster['id']) - self.assertNotIn(self.cluster_id, cluster_ids) + self.assertIsNotNone(del_cluster['status']) def test_is_cluster_editable(self): #state is INSTALLING @@ -907,19 +905,14 @@ class TestDelClusterHost(ClusterTestCase): super(TestDelClusterHost, self).tearDown() def test_del_cluster_host(self): - cluster.del_cluster_host( + from compass.tasks import client as celery_client + celery_client.celery.send_task = mock.Mock() + del_clusterhost = cluster.del_cluster_host( self.user_object, self.cluster_id, self.host_id[0] ) - del_cluster_host = cluster.list_cluster_hosts( - self.user_object, - self.cluster_id - ) - result = [] - for item in del_cluster_host: - result.append(item['hostname']) - self.assertNotIn('newname1', result) + self.assertIsNotNone(del_clusterhost) def test_is_cluster_editable(self): cluster.update_cluster_state( @@ -946,15 +939,13 @@ class TestDelClusterhost(ClusterTestCase): super(TestDelClusterhost, self).tearDown() def test_del_clusterhost(self): - cluster.del_clusterhost( + from compass.tasks import client as celery_client + celery_client.celery.send_task = mock.Mock() + del_clusterhost = cluster.del_clusterhost( self.user_object, self.clusterhost_id[0] ) - del_clusterhost = cluster.list_clusterhosts(self.user_object) - result = [] - for item in del_clusterhost: - result.append(item['hostname']) - self.assertNotIn('newname1', result) + self.assertIsNotNone(del_clusterhost) def test_is_cluster_editable(self): cluster.update_cluster_state( diff --git a/compass/tests/db/api/test_host.py b/compass/tests/db/api/test_host.py index e13c6b6a..df230734 100644 --- a/compass/tests/db/api/test_host.py +++ b/compass/tests/db/api/test_host.py @@ -267,11 +267,11 @@ class TestListMachinesOrHosts(HostTestCase): self.assertIn(item, ['newname1', 'newname2']) def test_list_machines(self): - host.del_host( + host.del_host_from_database( self.user_object, self.host_ids[0] ) - host.del_host( + host.del_host_from_database( self.user_object, self.host_ids[1] ) @@ -327,7 +327,7 @@ class TestGetMachineOrHost(HostTestCase): self.assertEqual(get_host['mac'], '28:6e:d4:46:c4:25') def test_get_machine(self): - host.del_host( + host.del_host_from_database( self.user_object, self.host_ids[0] ) @@ -448,17 +448,13 @@ class TestDelHost(HostTestCase): super(TestDelHost, self).tearDown() def test_del_host(self): - host.del_host( + from compass.tasks import client as celery_client + celery_client.celery.send_task = mock.Mock() + del_host = host.del_host( self.user_object, self.host_ids[0] ) - del_host = host.list_hosts( - self.user_object - ) - ids = [] - for item in del_host: - ids.append(item['id']) - self.assertNotIn(self.host_ids[0], ids) + self.assertIsNotNone(del_host['status']) def test_is_host_editable(self): host.update_host_state( diff --git a/compass/utils/setting_wrapper.py b/compass/utils/setting_wrapper.py index b660bf66..e029c130 100644 --- a/compass/utils/setting_wrapper.py +++ b/compass/utils/setting_wrapper.py @@ -116,11 +116,8 @@ CALLBACK_DIR = lazypy.delay( TMPL_DIR = lazypy.delay( lambda: os.path.join(CONFIG_DIR, 'templates') ) -MAC_LIST_DIR = lazypy.delay( - lambda: os.path.join(CONFIG_DIR, 'mac_list') -) -SWITCH_LIST_DIR = lazypy.delay( - lambda: os.path.join(CONFIG_DIR, 'switch_list') +MACHINE_LIST_DIR = lazypy.delay( + lambda: os.path.join(CONFIG_DIR, 'machine_list') ) PROXY_URL_PREFIX = 'http://10.145.81.205:5000' diff --git a/conf/machine_list/machine_list.conf b/conf/machine_list/machine_list.conf new file mode 100644 index 00000000..a07ce517 --- /dev/null +++ b/conf/machine_list/machine_list.conf @@ -0,0 +1,46 @@ +MACHINE_LIST = [ + { + '127.0.0.1': [ + { + 'port': '200', + 'mac': '80:fb:06:35:8c:85', + 'vlan': 0, + }, + { + 'port': '201', + 'mac': '70:7b:e8:75:71:dc', + 'vlan': 0, + }, + { + 'port': '202', + 'mac': '80:fb:06:35:8c:a0', + 'vlan': 0, + }, + { + 'port': '203', + 'mac': '70:7b:e8:75:71:d3', + 'vlan': 0, + }, + { + 'port': '204', + 'mac': '70:7b:e8:75:72:21', + 'vlan': 0, + }, + { + 'port': '205', + 'mac': '70:7b:e8:75:71:37', + 'vlan': 0, + }, + { + 'port': '206', + 'mac': '70:fb:e8:75:71:d6', + 'vlan': 0, + }, + { + 'port': '207', + 'mac': '70:7b:e8:75:71:d9', + 'vlan': 0, + } + ] + }, +] diff --git a/conf/os_field/domain.conf b/conf/os_field/domain.conf new file mode 100644 index 00000000..fdf74289 --- /dev/null +++ b/conf/os_field/domain.conf @@ -0,0 +1,2 @@ +NAME = 'domain' +VALIDATOR = is_valid_domain diff --git a/conf/os_field/ip_list.conf b/conf/os_field/ip_list.conf new file mode 100644 index 00000000..28969cb2 --- /dev/null +++ b/conf/os_field/ip_list.conf @@ -0,0 +1,3 @@ +NAME = 'ip_list' +FIELD_TYPE = list +VALIDATOR = is_valid_ip diff --git a/conf/os_field/url.conf b/conf/os_field/url.conf new file mode 100644 index 00000000..b6a74f35 --- /dev/null +++ b/conf/os_field/url.conf @@ -0,0 +1,2 @@ +NAME = 'url' +VALIDATOR = is_valid_url diff --git a/conf/os_metadata/general.conf b/conf/os_metadata/general.conf index 8caf1571..b6a6c481 100644 --- a/conf/os_metadata/general.conf +++ b/conf/os_metadata/general.conf @@ -29,7 +29,7 @@ METADATA = { }, 'http_proxy': { '_self': { - 'field': 'general', + 'field': 'url', 'default_callback': default_proxy, 'options_callback': proxy_options, 'mapping_to': 'http_proxy' @@ -37,7 +37,7 @@ METADATA = { }, 'https_proxy': { '_self': { - 'field': 'general', + 'field': 'url', 'default_callback': default_proxy, 'options_callback': proxy_options, 'mapping_to': 'https_proxy' @@ -55,7 +55,7 @@ METADATA = { 'ntp_server': { '_self': { 'is_required': True, - 'field': 'general', + 'field': 'ip', 'default_callback': default_ntp_server, 'options_callback': ntp_server_options, 'mapping_to': 'ntp_server' @@ -64,7 +64,7 @@ METADATA = { 'dns_servers': { '_self': { 'is_required': True, - 'field': 'general_list', + 'field': 'ip_list', 'default_callback': default_dns_servers, 'options_callback': dns_servers_options, 'mapping_to': 'nameservers' @@ -72,7 +72,7 @@ METADATA = { }, 'domain': { '_self': { - 'field': 'general', + 'field': 'domain', 'is_required' : True, 'default_callback': default_domain, 'options_callback': domain_options, @@ -96,7 +96,7 @@ METADATA = { }, 'local_repo': { '_self': { - 'field': 'general', + 'field': 'url', 'default_callback': default_localrepo, 'mapping_to': 'local_repo' } diff --git a/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl b/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl index 3cae474e..911bedde 100644 --- a/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl +++ b/conf/templates/chef_installer/openstack_icehouse/environments/allinone.tmpl @@ -11,6 +11,11 @@ }, "json_class": "Chef::Environment", "chef_type": "environment", + "override_attributes": { + "compass": { + "cluster_id": "$id" + } + }, "default_attributes": { "local_repo": "", "mysql": { diff --git a/conf/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl b/conf/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl index 562f8a33..24120439 100644 --- a/conf/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl +++ b/conf/templates/chef_installer/openstack_icehouse/environments/multinodes.tmpl @@ -73,6 +73,11 @@ }, "json_class": "Chef::Environment", "chef_type": "environment", + "override_attributes": { + "compass": { + "cluster_id": "$id" + } + }, "default_attributes": { "local_repo": "", "mysql": { diff --git a/install/cobbler.sh b/install/cobbler.sh index 5d4f317d..a93ec71e 100755 --- a/install/cobbler.sh +++ b/install/cobbler.sh @@ -195,6 +195,7 @@ else fi # create centos repo +sudo rm -rf /var/lib/cobbler/repo_mirror/centos_ppa_repo sudo mkdir -p /var/lib/cobbler/repo_mirror/centos_ppa_repo found_centos_ppa_repo=0 for repo in $(cobbler repo list); do @@ -220,12 +221,17 @@ cd /var/lib/cobbler/repo_mirror/centos_ppa_repo/ centos_ppa_repo_packages=" ntp-4.2.6p5-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_TYPE,,}.${CENTOS_IMAGE_ARCH}.rpm openssh-clients-5.3p1-94.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm +openssh-5.3p1-94.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm iproute-2.6.32-31.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm wget-1.12-1.8.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm ntpdate-4.2.6p5-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_TYPE,,}.${CENTOS_IMAGE_ARCH}.rpm yum-plugin-priorities-1.1.30-14.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.noarch.rpm" for f in $centos_ppa_repo_packages; do - download ftp://rpmfind.net/linux/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION_MAJOR}/os/${CENTOS_IMAGE_ARCH}/Packages/$f $f copy /var/lib/cobbler/repo_mirror/centos_ppa_repo/ || exit $? + if [ "$REGION" == "asia" ]; then + download http://mirrors.yun-idc.com/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION}/os/${CENTOS_IMAGE_ARCH}/Packages/$f $f copy /var/lib/cobbler/repo_mirror/centos_ppa_repo/ || exit $? + else + download ftp://rpmfind.net/linux/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION}/os/${CENTOS_IMAGE_ARCH}/Packages/$f $f copy /var/lib/cobbler/repo_mirror/centos_ppa_repo/ || exit $? + fi done centos_ppa_repo_rsyslog_packages=" @@ -235,7 +241,7 @@ libgt-0.3.11-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_ liblogging-1.0.4-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm rsyslog-7.6.3-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm" for f in $centos_ppa_repo_rsyslog_packages; do - download http://rpms.adiscon.com/v7-stable/epel-{CENTOS_IMAGE_VERSION_MAJOR}/${CENTOS_IMAGE_ARCH}/RPMS/$f $f copy /var/lib/cobbler/repo_mirror/centos_ppa_repo/ || exit $? + download http://rpms.adiscon.com/v7-stable/epel-${CENTOS_IMAGE_VERSION_MAJOR}/${CENTOS_IMAGE_ARCH}/RPMS/$f $f copy /var/lib/cobbler/repo_mirror/centos_ppa_repo/ || exit $? done # download chef client for centos ppa repo @@ -252,6 +258,7 @@ else fi # create ubuntu repo +sudo rm -rf /var/lib/cobbler/repo_mirror/ubuntu_ppa_repo sudo mkdir -p /var/lib/cobbler/repo_mirror/ubuntu_ppa_repo found_ubuntu_ppa_repo=0 for repo in $(cobbler repo list); do @@ -313,7 +320,11 @@ fi # import cobbler distro sudo mkdir -p /var/lib/cobbler/iso -download "$CENTOS_IMAGE_SOURCE" ${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso copy /var/lib/cobbler/iso/ || exit $? +if [ "$REGION" == "asia" ]; then + download "$CENTOS_IMAGE_SOURCE_ASIA" ${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso copy /var/lib/cobbler/iso/ || exit $? +else + download "$CENTOS_IMAGE_SOURCE" ${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso copy /var/lib/cobbler/iso/ || exit $? +fi sudo mkdir -p /mnt/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH} if [ $(mount | grep -c "/mnt/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH} ") -eq 0 ]; then sudo mount -o loop /var/lib/cobbler/iso/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso /mnt/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH} @@ -326,8 +337,11 @@ if [ $(mount | grep -c "/mnt/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH} ") -eq 0 else echo "/mnt/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH} has already mounted" fi - -download "$UBUNTU_IMAGE_SOURCE" ${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso copy /var/lib/cobbler/iso/ || exit $? +if [ "$REGION" == "asia" ]; then + download "$UBUNTU_IMAGE_SOURCE_ASIA" ${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso copy /var/lib/cobbler/iso/ || exit $? +else + download "$UBUNTU_IMAGE_SOURCE" ${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso copy /var/lib/cobbler/iso/ || exit $? +fi sudo mkdir -p /mnt/${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH} if [ $(mount | grep -c "/mnt/${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH} ") -eq 0 ]; then sudo mount -o loop /var/lib/cobbler/iso/${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso /mnt/${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH} diff --git a/install/compass.sh b/install/compass.sh index 6805ee0e..2e17849f 100755 --- a/install/compass.sh +++ b/install/compass.sh @@ -87,6 +87,7 @@ sudo mkdir -p /var/lib/redis/ sudo chown -R redis:root /var/lib/redis sudo mkdir -p /var/run/redis sudo chown -R redis:root /var/run/redis +killall -9 redis-server sudo service redis restart echo "Checking if redis is running" sudo service redis status @@ -153,8 +154,8 @@ else echo "compass-progress-updated has already started" fi -#compass check -#if [[ "$?" != "0" ]]; then -# echo "compass check failed" -# exit 1 -#fi +compass check +if [[ "$?" != "0" ]]; then + echo "compass check failed" + # exit 1 +fi diff --git a/install/compass_web.sh b/install/compass_web.sh index 4a18ff8a..5dbe84a1 100755 --- a/install/compass_web.sh +++ b/install/compass_web.sh @@ -22,7 +22,7 @@ sudo cp -rf $WEB_HOME/v2 /var/www/compass_web/ if [[ $LOCAL_REPO = "y" ]]; then echo "setting up local repo" mkdir -p /tmp/repo - download -f "$COMPASS_LOCAL_REPO" $COMPASS_LOCAL_REPO_FILE unzip /tmp/repo || exit $? + download https://s3-us-west-1.amazonaws.com/compass-local-repo/local_repo.tar.gz local_repo.tar.gz unzip /tmp/repo || exit $? mv -f /tmp/repo/local_repo/* /var/www/compass_web/v2/ if [[ "$?" != "0" ]]; then echo "failed to setup local repo" diff --git a/install/install.conf b/install/install.conf index ec4b14d0..f7003f0e 100755 --- a/install/install.conf +++ b/install/install.conf @@ -47,8 +47,8 @@ export CENTOS_IMAGE_VERSION_MINOR=${CENTOS_IMAGE_VERSION_MINOR:-"5"} export CENTOS_IMAGE_VERSION=${CENTOS_IMAGE_VERSION:-"${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_VERSION_MINOR}"} export CENTOS_IMAGE_NAME=${CENTOS_IMAGE_NAME:-"${CENTOS_IMAGE_TYPE}-${CENTOS_IMAGE_VERSION}"} export CENTOS_IMAGE_ARCH=${CENTOS_IMAGE_ARCH:-"x86_64"} -export CENTOS_IMAGE_SOURCE=${CENTOS_IMAGE_SOURCE:-"http://mirror.rackspace.com/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION_MAJOR}/isos/${CENTOS_IMAGE_ARCH}/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}-minimal.iso"} - +export CENTOS_IMAGE_SOURCE=${CENTOS_IMAGE_SOURCE:-"http://mirror.rackspace.com/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION}/isos/${CENTOS_IMAGE_ARCH}/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}-minimal.iso"} +export CENTOS_IMAGE_SOURCE_ASIA=${CENTOS_IMAGE_SOURCE_ASIA:-"http://mirrors.yun-idc.com/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION}/isos/${CENTOS_IMAGE_ARCH}/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}-minimal.iso"} export UBUNTU_IMAGE_TYPE=${UBUNTU_IMAGE_TYPE:-"Ubuntu"} export UBUNTU_IMAGE_VERSION_MAJOR=${UBUNTU_IMAGE_VERSION_MAJOR:-"12"} export UBUNTU_IMAGE_VERSION_MINOR=${UBUNTU_IMAGE_VERSION_MINOR:-"04"} @@ -58,10 +58,7 @@ export UBUNTU_IMAGE_NAME=${UBUNTU_IMAGE_NAME:-"${UBUNTU_IMAGE_TYPE}-${UBUNTU_IMA export UBUNTU_IMAGE_ARCH=${UBUNTU_IMAGE_ARCH:-"x86_64"} export UBUNTU_IMAGE_ARCH_OTHER=${UBUNTU_IMAGE_ARCH_OTHER:-"amd64"} export UBUNTU_IMAGE_SOURCE=${UBUNTU_IMAGE_SOURCE:-"http://releases.ubuntu.com/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-${UBUNTU_IMAGE_VERSION}${UBUNTU_IMAGE_PATCH_VERSION}-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} - -# Compass local repo -export COMPASS_LOCAL_REPO_FILE=${COMPASS_LOCAL_REPO_FILE:-"local_repo.tar.gz"} -export COMPASS_LOCAL_REPO=${COMPASS_LOCAL_REPO:-"http://s3-us-west-1.amazonaws.com/compass-local-repo/${COMPASS_LOCAL_REPO_FILE}"} +export UBUNTU_IMAGE_SOURCE_ASIA=${UBUNTU_IMAGE_SOURCE_ASIA:-"http://mirros.ustc.edu.cn/ubuntu-releases/${UBUNTU_IMAGE_VERSION}/${UBUNTU_IMAGE_TYPE,,}-${UBUNTU_IMAGE_VERSION}${UBUNTU_IMAGE_PATCH_VERSION}-server-${UBUNTU_IMAGE_ARCH_OTHER}.iso"} export COBBLER_PASSWORD=${COBBLER_PASSWORD:-"cobbler"} diff --git a/install/install.conf.template b/install/install.conf.template index 280332b1..90ef7c40 100755 --- a/install/install.conf.template +++ b/install/install.conf.template @@ -51,7 +51,7 @@ export CENTOS_IMAGE_VERSION_MINOR=${CENTOS_IMAGE_VERSION_MINOR:-"5"} export CENTOS_IMAGE_VERSION=${CENTOS_IMAGE_VERSION:-"${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_VERSION_MINOR}"} export CENTOS_IMAGE_NAME=${CENTOS_IMAGE_NAME:-"${CENTOS_IMAGE_TYPE}-${CENTOS_IMAGE_VERSION}"} export CENTOS_IMAGE_ARCH=${CENTOS_IMAGE_ARCH:-"x86_64"} -export CENTOS_IMAGE_SOURCE=${CENTOS_IMAGE_SOURCE:-"http://mirror.rackspace.com/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION_MAJOR}/isos/${CENTOS_IMAGE_ARCH}/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}-minimal.iso"} +export CENTOS_IMAGE_SOURCE=${CENTOS_IMAGE_SOURCE:-"http://mirror.rackspace.com/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION}/isos/${CENTOS_IMAGE_ARCH}/${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}-minimal.iso"} export UBUNTU_IMAGE_TYPE=${UBUNTU_IMAGE_TYPE:-"Ubuntu"} export UBUNTU_IMAGE_VERSION_MAJOR=${UBUNTU_IMAGE_VERSION_MAJOR:-"12"} diff --git a/install/install.sh b/install/install.sh index 1f82b931..0d1d4e57 100755 --- a/install/install.sh +++ b/install/install.sh @@ -158,6 +158,9 @@ loadvars() done fi } +echo -e "\x1b[32mAvailable Regions are asia/america, other REGIONs please use default: america\x1b[37m" +loadvars REGION "america" + loadvars NIC "eth0" sudo ifconfig $NIC diff --git a/install/install_func.sh b/install/install_func.sh index 1f4df8e9..abd6768e 100755 --- a/install/install_func.sh +++ b/install/install_func.sh @@ -41,21 +41,18 @@ copy2dir() git clean -x -f git checkout $git_branch git reset --hard remotes/origin/$git_branch + git clean -x -f -d -q cd - else echo "create $destdir" mkdir -p $destdir - git clone $repo $destdir + git clone $repo $destdir -b $git_branch if [ $? -ne 0 ]; then echo "failed to git clone $repo $destdir" exit 1 else echo "git clone $repo $destdir suceeded" fi - cd $destdir - git checkout $git_branch - git reset --hard remotes/origin/$git_branch - cd - fi cd $destdir if [[ -z $ZUUL_PROJECT ]]; then @@ -154,9 +151,9 @@ download() if [[ "$downloaded" == "0" ]]; then echo "downloading $url to /tmp/${package}" if [[ -f /tmp/${package} || -L /tmp/${package} ]]; then - curl -L -z /tmp/${package} -o /tmp/${package}.tmp $url + curl -f -L -z /tmp/${package} -o /tmp/${package}.tmp $url else - curl -L -o /tmp/${package}.tmp $url + curl -f -L -o /tmp/${package}.tmp $url fi if [[ "$?" != "0" ]]; then echo "failed to download $package" diff --git a/install/prepare.sh b/install/prepare.sh index acf6d221..a86a5432 100755 --- a/install/prepare.sh +++ b/install/prepare.sh @@ -125,6 +125,12 @@ else fi cd $SCRIPT_DIR +remote_branch=$(git rev-parse --abbrev-ref --symbolic-full-name @{u}) +if [[ "$?" != "0" ]]; then + remote_branch="origin/master" +fi +local_branch=$(echo ${remote_branch} | sed -e 's/origin\///g') + if [ -z $WEB_SOURCE ]; then echo "web source $WEB_SOURCE is not set" exit 1 @@ -135,7 +141,7 @@ if [ -z $ADAPTERS_SOURCE ]; then echo "adpaters source $ADAPTERS_SOURCE is not set" exit 1 fi -copy2dir "$ADAPTERS_SOURCE" "$ADAPTERS_HOME" "stackforge/compass-adapters" || exit $? +copy2dir "$ADAPTERS_SOURCE" "$ADAPTERS_HOME" "stackforge/compass-adapters" ${local_branch} || exit $? if [ "$tempest" == "true" ]; then echo "download tempest packages" @@ -168,6 +174,7 @@ if [ "$tempest" == "true" ]; then mkvirtualenv tempest fi workon tempest + rm -rf ${WORKON_HOME}/tempest/build cd /tmp/tempest pip install -e . pip install sqlalchemy @@ -187,6 +194,7 @@ if ! lsvirtualenv |grep compass-core>/dev/null; then fi cd $COMPASSDIR workon compass-core +rm -rf ${WORKON_HOME}/compass-core/build echo "install compass requirements" pip install -U -r requirements.txt if [[ "$?" != "0" ]]; then @@ -214,7 +222,11 @@ ntpdate-4.2.6p5-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENT yum-plugin-priorities-1.1.30-14.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.noarch.rpm" for f in $centos_ppa_repo_packages; do - download http://rpmfind.net/linux/${IMAGE_TYPE,,}/${IMAGE_VERSION_MAJOR}/os/${IMAGE_ARCH}/Packages/$f $f || exit $? + if [ "$REGION" == "asia" ]; then + download http://mirrors.yun-idc.com/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION}/os/${CENTOS_IMAGE_ARCH}/Packages/$f $f || exit $? + else + download http://rpmfind.net/linux/${CENTOS_IMAGE_TYPE,,}/${CENTOS_IMAGE_VERSION}/os/${CENTOS_IMAGE_ARCH}/Packages/$f $f || exit $? + fi done centos_ppa_repo_rsyslog_packages=" @@ -225,7 +237,7 @@ liblogging-1.0.4-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CEN rsyslog-7.6.3-1.${CENTOS_IMAGE_TYPE_OTHER}${CENTOS_IMAGE_VERSION_MAJOR}.${CENTOS_IMAGE_ARCH}.rpm" for f in $centos_ppa_repo_rsyslog_packages; do - download http://rpms.adiscon.com/v7-stable/epel-6/${IMAGE_ARCH}/RPMS/$f $f || exit $? + download http://rpms.adiscon.com/v7-stable/epel-${CENTOS_IMAGE_VERSION_MAJOR}/${CENTOS_IMAGE_ARCH}/RPMS/$f $f || exit $? done download $CHEF_CLIENT `basename $CHEF_CLIENT` || exit $? @@ -236,11 +248,18 @@ download $UBUNTU_CHEF_CLIENT `basename $UBUNTU_CHEF_CLIENT` || exit $? download $CHEF_SRV chef-server || exit $? # download os images -download "$CENTOS_IMAGE_SOURCE" ${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso || exit $? -download "$UBUNTU_IMAGE_SOURCE" ${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso || exit $? +if [ "$REGION" == "asia" ]; then + download "$CENTOS_IMAGE_SOURCE_ASIA" ${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso || exit $? + download "$UBUNTU_IMAGE_SOURCE_ASIA" ${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso || exit $? +else + download "$CENTOS_IMAGE_SOURCE" ${CENTOS_IMAGE_NAME}-${CENTOS_IMAGE_ARCH}.iso || exit $? + download "$UBUNTU_IMAGE_SOURCE" ${UBUNTU_IMAGE_NAME}-${UBUNTU_IMAGE_ARCH}.iso || exit $? +fi # download local repo -download -f "$COMPASS_LOCAL_REPO" $COMPASS_LOCAL_REPO_FILE || exit $? +if [[ $LOCAL_REPO = "y" ]]; then + download https://s3-us-west-1.amazonaws.com/compass-local-repo/local_repo.tar.gz local_repo.tar.gz || exit $? +fi # Install net-snmp echo "install snmp config" diff --git a/install/setup_env.sh b/install/setup_env.sh index 36ce72fc..ec3c59b7 100755 --- a/install/setup_env.sh +++ b/install/setup_env.sh @@ -10,5 +10,6 @@ NEXTSERVER=\${NEXTSERVER:-$NEXTSERVER} IP_START=\${IP_START:-$IP_START} IP_END=\${IP_END:-$IP_END} LOCAL_REPO=\${LOCAL_REPO:-$LOCAL_REPO} +REGION=\${REGION:-$REGION} EOF chmod ugo+x $SCRIPT_DIR/env.conf diff --git a/regtest/regtest.sh b/regtest/regtest.sh index 2aa9498b..bf99283b 100755 --- a/regtest/regtest.sh +++ b/regtest/regtest.sh @@ -79,19 +79,31 @@ for i in `seq $VIRT_NUM`; do exit 1 fi - echo "make pxe${i} reboot if installation failing." - sed -i "// a\ " /etc/libvirt/qemu/pxe${i}.xml echo "check pxe${i} state" state=$(virsh domstate pxe${i}) + echo "pxe${i} state is ${state}" if [[ "$state" == "running" ]]; then echo "pxe${i} is already running" virsh destroy pxe${i} if [[ "$?" != "0" ]]; then echo "detroy intsance pxe${i} failed" exit 1 + else + echo "pxe${i} is detroyed" fi fi + echo "make pxe${i} reboot if installation failing." + sed -i "// a\ " /etc/libvirt/qemu/pxe${i}.xml + virsh define /etc/libvirt/qemu/pxe${i}.xml + virsh dumpxml pxe${i} | grep "" + if [[ "$?" != "0" ]]; then + echo "pxe${i} auto reboot is not enabled" + exit 1 + else + echo "pxe${i} auto reboot is enabled" + fi + echo "start pxe${i}" virsh start pxe${i} if [[ "$?" != "0" ]]; then diff --git a/tox.ini b/tox.ini index d05e7b02..5b714197 100644 --- a/tox.ini +++ b/tox.ini @@ -31,7 +31,7 @@ commands = python setup.py testr --coverage --testr-args='{posargs}' downloadcache = ~/cache/pip [flake8] -ignore = H302,H233,H803,F401 +ignore = H302,H304,H233,H803,F401 show-source = true builtins = _ exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,tools,build