Tag Archives: virt-rescue

How many disks can you add to a (virtual) Linux machine? (contd)

In my last post I tried to see what happens when you add thousands of virtio-scsi disks to a Linux virtual machine. Above 10,000 disks the qemu command line grew too long for the host to handle. Several people pointed out that I could use the qemu -readconfig parameter to read the disks from a file. So I modified libguestfs to allow that. What will be the next limit?

18,278

Linux uses a strange scheme for naming disks which I’ve covered before on this blog. In brief, disks are named /dev/sda through /dev/sdz, then /dev/sdaa through /dev/sdzz, and after 18,278 drives we reach /dev/sdzzz. What’s special about zzz? Nothing really, but historically Linux device drivers would fail after this, although that is not a problem for modern Linux.

20,000

In any case I created a Linux guest with 20,000 drives with no problem except for the enormous boot time: It was over 12 hours at which point I killed it. Most of the time was being spent in:

-   72.62%    71.30%  qemu-system-x86  qemu-system-x86_64  [.] drive_get
   - 72.62% drive_get
      - 1.26% __irqentry_text_start
         - 1.23% smp_apic_timer_interrupt
            - 1.00% local_apic_timer_interrupt
               - 1.00% hrtimer_interrupt
                  - 0.82% __hrtimer_run_queues
                       0.53% tick_sched_timer

Drives are stored inside qemu on a linked list, and the drive_get function iterates over this linked list, so of course everything is extremely slow when this list grows long.

QEMU bug filed: https://bugs.launchpad.net/qemu/+bug/1686980

Edit: Dan Berrange posted a hack which gets me past this problem, so now I can add 20,000 disks.

The guest boots fine, albeit taking about 30 minutes (and udev hasn’t completed device node creation in that time, it’s still going on in the background).

><rescue> ls -l /dev/sd[Tab]
Display all 20001 possibilities? (y or n)
><rescue> mount
/dev/sdacog on / type ext2 (rw,noatime,block_validity,barrier,user_xattr,acl)

As you can see the modern Linux kernel and userspace handles “four letter” drive names like a champ.

Over 30,000

I managed to create a guest with 30,000 drives. I had to give the guest 50 GB (yes, not a mistake) of RAM to get this far. With less RAM, disk probing fails with:

scsi_alloc_sdev: Allocation failure during SCSI scanning, some SCSI devices might not be configured

I’d seen SCSI probing run out of memory before, and I made a back-of-the-envelope calculation that each disk consumed 200 KB of RAM. However that cannot be correct — there must be a non-linear relationship between number of disks and RAM used by the kernel.

Because my development machine simply doesn’t have enough RAM to go further, I wasn’t able to add more than 30,000 drives, so that’s where we have to end this little experiment, at least for the time being.

><rescue> ls -l /dev/sd???? | tail
brw------- 1 root root  66, 30064 Apr 28 19:35 /dev/sdarin
brw------- 1 root root  66, 30080 Apr 28 19:35 /dev/sdario
brw------- 1 root root  66, 30096 Apr 28 19:35 /dev/sdarip
brw------- 1 root root  66, 30112 Apr 28 19:35 /dev/sdariq
brw------- 1 root root  66, 30128 Apr 28 19:35 /dev/sdarir
brw------- 1 root root  66, 30144 Apr 28 19:35 /dev/sdaris
brw------- 1 root root  66, 30160 Apr 28 19:35 /dev/sdarit
brw------- 1 root root  66, 30176 Apr 28 19:24 /dev/sdariu
brw------- 1 root root  66, 30192 Apr 28 19:22 /dev/sdariv
brw------- 1 root root  67, 29952 Apr 28 19:35 /dev/sdariw

3 Comments

Filed under Uncategorized

How many disks can you add to a (virtual) Linux machine?

><rescue> ls -l /dev/sd[tab]
Display all 4001 possibilities? (y or n)

Just how many virtual hard drives is it practical to add to a Linux VM using qemu/KVM? I tried to find out. I started by modifying virt-rescue to raise the limit on the number of scratch disks that can be added¹: virt-rescue --scratch=4000

I hit some interesting limits in our toolchain along the way.

256

256 is the maximum number of virtio-scsi disks in unpatched virt-rescue / libguestfs. A single virtio-scsi controller supports 256 targets, with up to 16384 SCSI logical units (LUNs) per target. We were assigning one disk per target, and giving them all unit number 0, so of course we couldn’t add more than 256 drives, but virtio-scsi supports very many more. In theory each virtio-scsi controller could support 256 x 16,384 = 4,194,304 drives. You can even add more than one controller to a guest.

About 490-500

At around 490-500 disks, any monitoring tools which are using libvirt to collect disk statistics from your VMs will crash (https://bugzilla.redhat.com/show_bug.cgi?id=1440683).

About 1000

qemu uses one file descriptor per disk (maybe two per disk if you are using ioeventfd). qemu quickly hits the default open file limit of 1024 (ulimit -n). You can raise this to something much larger by creating this file:

$ cat /etc/security/limits.d/99-local.conf
# So we can run qemu with many disks.
rjones - nofile 65536

It’s called /etc/security for a reason, so you should be careful adjusting settings here except on test machines.

About 4000

The Linux guest kernel uses quite a lot of memory simply enumerating each SCSI drive. My default guest had 512 MB of RAM (no swap), and ran out of memory and panicked when I tried to add 4000 disks. The solution was to increase guest RAM to 8 GB for the remainder of the test.

Booting with 4000 disks took 10 minutes² and free shows about a gigabyte of memory disappears:

><rescue> free -m
              total        used        free      shared  buff/cache   available
Mem:           7964         104        6945          15         914        7038
Swap:             0           0           0

What was also surprising is that increasing the number of virtual CPUs from 1 to 16 made no difference to the boot time (in fact it was a bit slower). So even though SCSI LUN probing is not deterministic, it appears that it is not running in parallel either.

About 8000

If you’re using libvirt to manage the guest, it will fail at around 8000 disks because the XML document describing the guest is too large to transfer over libvirt’s internal client to daemon connection (https://bugzilla.redhat.com/show_bug.cgi?id=1443066). For the remainder of the test I instructed virt-rescue to run qemu directly.

My guest with 8000 disks took 77 minutes to boot. About 1.9 GB of RAM was missing, and my ballpark estimate is that each extra drive takes about 200KB of kernel memory.

Between 10,000 and 11,000

We pass the list of drives to qemu on the command line, with each disk taking perhaps 180 bytes to express. Somewhere between 10,000 and 11,000 disks, this long command line fails with:

qemu-system-x86_64: Argument list too long

To be continued …

So that’s the end of my testing, for now. I managed to create a guest with 10,000 drives, but I was hoping to explore what happens when you add more than 18278 drives since some parts of the kernel or userspace stack may not be quite ready for that.

Continue to part 2 …

Notes

¹That command will not work with the virt-rescue program found in most Linux distros. I have had to patch it extensively and those patches aren’t yet upstream.

²Note that the uptime command within the guest is not an accurate way to measure the boot time when dealing with large numbers of disks, because it doesn’t include the time taken by the BIOS which has to scan the disks too. To measure boot times, use the wallclock time from launching qemu.

Thanks: Paolo Bonzini

Edit: 2015 KVM Forum talk about KVM’s limits.

9 Comments

Filed under Uncategorized

virt-rescue fixes

Although libguestfs gives you a nice structured library and tools for manipulating disk images, sometimes you just want to run a few Linux commands like mke2fs and fdisk against a disk image. For those times there is another tool called virt-rescue. It gives you a “rescue shell” connected to the disk image, and the usual set of command line Linux tools:

$ truncate -s 10G disk.img
$ virt-rescue -a disk.img
The virt-rescue escape key is ‘^]’.  Type ‘^] h’ for help.

------------------------------------------------------------

Welcome to virt-rescue, the libguestfs rescue shell.

Note: The contents of / (root) are the rescue appliance.
You have to mount the guest's partitions under /sysroot
before you can examine them.
><rescue> fdisk /dev/sda
...
><rescue> mke2fs /dev/sda1
><rescue> sync

Virt-rescue was a bit clumsy to use before because it didn’t (for example) pass Ctrl-C through to the rescue shell, so using that or other control keys would kill, stop or do other drastic things to the whole program.

I spent a bit of time last week fixing all of this, to make a really great, usable rescue shell.

The first thing is that ^C now works right:

><rescue> cat > /tmp/foo
^C
><rescue>

The second most requested feature is support for automatically mounting up the guest’s filesystems (rather than having to tediously type mount commands at the shell prompt). As with guestfish, the -i option now does the right thing:

$ virt-builder debian-7
$ virt-rescue -a debian-7.img -i
><rescue> chroot /sysroot
><rescue> cat /etc/debian_version
7.2

Finally virt-rescue now comes with an escape key which lets you suspend the shell and come back to it, and do some other interesting operations:

><rescue> ^]?
 ^] ? - print this message
 ^] h - print this message
 ^] i - print inspection data
 ^] q - quit virt-rescue
 ^] s - sync the filesystems
 ^] u - unmount filesystems
 ^] x - quit virt-rescue
 ^] z - suspend virt-rescue
to pass the escape key through to the rescue shell, type it twice
^]s
attempting to sync filesystems ...
^]z
[1]+  Stopped         virt-rescue -a debian-7.img -i
$

This is all available in libguestfs ≥ 1.37.1.

Leave a comment

Filed under Uncategorized

ODROID-XU booting

Update: Yes, it’s using the big.LITTLE switcher. Look at the dmesg output below closely.

I finally got the ODROID-XU to boot, using the official Fedora 19 image.

I can’t get any display output on anything, and I’ve tried HDMI and DP in various configurations. So I had to do everything blind.

Firstly I wrote the official image to the SD card, put that into the ODROID-XU, and booted it. The blue flashing light indicates that something is happening. By examining my DHCP server’s logs I could guess that an IP was being assigned, but there was no ssh or other port open.

So I pulled the SD card, mounted it up in virt-rescue and was able to at least confirm that the ODROID had booted, by looking at /var/log/messages on /dev/sda3 on the card.

My guess was that firewalld was the problem. Since the card has an ARM guest and the virt-rescue host I was using is x86-64, I was not able to just chroot into the disk image and start using systemctl commands. Instead, I masked firewalld by linking this file:

><rescue> ln -s /dev/null /etc/systemd/system/firewalld.service

Putting the SD card back into the ODROID and booting .. it worked!

Unfortunately I cannot recommend the ODROID-XU, because there’s just far too much trouble getting the display to work (or rather, I have gone through a lot of different cables, and not got anything to work, and that is not good).

The other reason I cannot recommend this is that this is running some ancient Android kernel (3.4.5), hence no KVM. But also I suspect this must be running the ARM big.LITTLE switcher underneath (search for hypervisor on this page and see this page). For whatever reason, only 4 CPU cores are visible:

# cat /proc/cpuinfo 
Processor	: ARMv7 Processor rev 2 (v7l)
processor	: 0
BogoMIPS	: 1785.85

processor	: 1
BogoMIPS	: 1785.85

processor	: 2
BogoMIPS	: 1785.85

processor	: 3
BogoMIPS	: 1785.85

Features	: swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt 
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xc07
CPU revision	: 2

Hardware	: ODROIDXU
Revision	: 0000
Serial		: 0000000000000000

Here is dmesg from the machine:

[    0.000000] Booting Linux on physical CPU 0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 3.4.5 (root@odroid-server) (gcc version 4.7.3 (Ubuntu/Linaro 4.7.3-1ubuntu1) ) #1 SMP PREEMPT Fri Sep 27 02:59:27 BRT 2013
[    0.000000] CPU: ARMv7 Processor [412fc0f3] revision 3 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine: ODROIDXU
[    0.000000] S5P/CMA: Reserved 0x08000000@0xb7e00000 for 'ion'
[    0.000000] S5P/CMA: Reserved 0x00100000@0xb7d00000 for 'drm_mfc_sh'
[    0.000000] S5P/CMA: Reserved 0x00c00000@0xb7100000 for 'drm_g2d_wfd'
[    0.000000] S5P/CMA: Reserved 0x00400000@0xac000000 for 'drm_sectbl'
[    0.000000] S5P/CMA: Reserved 0x00100000@0xac400000 for 'drm_mfc_fw'
[    0.000000] S5P/CMA: Reserved 0x01000000@0xac500000 for 'drm_mfc_input'
[    0.000000] S5P/CMA: Reserved 0x03b00000@0xad500000 for 'drm_mfc_output'
[    0.000000] S5P/CMA: Reserved 0x03000000@0xb1000000 for 'drm_fimd_video'
[    0.000000] Memory policy: ECC disabled, Data cache writealloc
[    0.000000] CPU EXYNOS5410 (id 0xe5410023)
[    0.000000] exynos5_init_clocks: initializing clocks
[    0.000000] S3C24XX Clocks, Copyright 2004 Simtec Electronics
[    0.000000] exynos5410_setup_clocks: registering clocks
[    0.000000] exynos5410_setup_clocks: xtal is 24000000
[    0.000000] EXYNOS5: EAGLECLK=900000000, KFCCLK=600000000, CDREX=800000000
[    0.000000] mout_apll: source is fout_apll (1), rate is 900000000
[    0.000000] mout_mpll: source is fout_mpll (1), rate is 532000000
[    0.000000] mout_epll: source is fout_epll (1), rate is 400000000
[    0.000000] mout_bpll: source is fout_bpll (1), rate is 800000000
[    0.000000] mout_cpll: source is fout_cpll (1), rate is 640000000
[    0.000000] mout_kpll: source is fout_kpll (1), rate is 600000000
[    0.000000] mout_ipll: source is fout_ipll (1), rate is 432000000
[    0.000000] aclk_333_432_isp: source is ext_xtal (0), rate is 24000000
[    0.000000] aclk_333_432_gscl: source is ext_xtal (0), rate is 24000000
[    0.000000] vpll_src: source is ext_xtal (0), rate is 24000000
[    0.000000] mout_vpll: source is fout_vpll (1), rate is 350000000
[    0.000000] mout_mpll_user: source is mout_mpll (1), rate is 532000000
[    0.000000] mout_bpll_user: source is mout_bpll (1), rate is 800000000
[    0.000000] mout_mpll_bpll: source is mout_bpll_user (1), rate is 800000000
[    0.000000] mout_dpll: source is fout_dpll (1), rate is 600000000
[    0.000000] aclk_400: source is mout_mpll_user (0), rate is 177333333
[    0.000000] aclk_400_isp_pre: source is mout_mpll_user (0), rate is 66500000
[    0.000000] aclk_400_isp: source is ext_xtal (0), rate is 24000000
[    0.000000] aclk_266_isp: source is ext_xtal (0), rate is 24000000
[    0.000000] aclk_200: source is mout_mpll_user (0), rate is 177333333
[    0.000000] aclk_200_disp1: source is ext_xtal (0), rate is 24000000
[    0.000000] aclk_166: source is mout_cpll (0), rate is 160000000
[    0.000000] mout_cpu: source is mout_apll (0), rate is 900000000
[    0.000000] mout_cpu_kfc: source is mout_kpll (0), rate is 600000000
[    0.000000] sclk_mmc0: source is mout_mpll_bpll (6), rate is 800000000
[    0.000000] sclk_mmc1: source is mout_mpll_bpll (6), rate is 72727272
[    0.000000] sclk_mmc2: source is mout_mpll_bpll (6), rate is 800000000
[    0.000000] sclk_pwm_isp: source is ext_xtal (0), rate is 24000000
[    0.000000] sclk_uart_isp: source is ext_xtal (0), rate is 24000000
[    0.000000] sclk_spi1_isp: source is ext_xtal (0), rate is 24000000
[    0.000000] sclk_spi0_isp: source is ext_xtal (0), rate is 24000000
[    0.000000] sclk_mout_isp_sensor: source is mout_ipll (0), rate is 432000000
[    0.000000] sclk_mau_audio0: source is ext_xtal (1), rate is 24000000
[    0.000000] mout_g3d: source is mout_cpll (0), rate is 640000000
[    0.000000] sclk_g3d_core_sub: source is ext_xtal (0), rate is 24000000
[    0.000000] sclk_g3d_hydra_sub: source is ext_xtal (0), rate is 24000000
[    0.000000] clkout: source is xxti (16), rate is 24000000
[    0.000000] aclk_300_disp1: source is ext_xtal (0), rate is 24000000
[    0.000000] uclk1: source is mout_cpll (9), rate is 64000000
[    0.000000] uclk1: source is mout_cpll (9), rate is 64000000
[    0.000000] uclk1: source is mout_cpll (9), rate is 64000000
[    0.000000] uclk1: source is mout_cpll (9), rate is 64000000
[    0.000000] sclk_fimd: source is ext_xtal (0), rate is 24000000
[    0.000000] On node 0 totalpages: 523776
[    0.000000] free_area_init_node: node 0, pgdat c0a24540, node_mem_map c0b05000
[    0.000000]   Normal zone: 1116 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 125860 pages, LIFO batch:31
[    0.000000]   HighMem zone: 3488 pages used for memmap
[    0.000000]   HighMem zone: 393312 pages, LIFO batch:31
[    0.000000] PERCPU: Embedded 8 pages/cpu @c1d12000 s11840 r8192 d12736 u32768
[    0.000000] pcpu-alloc: s11840 r8192 d12736 u32768 alloc=8*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 519172
[    0.000000] Kernel command line: console=ttySAC2,115200n8 vmalloc=512M console=tty1 console=ttySAC2,115200n8 root=UUID=ad455a75-609c-4b3c-956b-bcef3ebc4603 rhgb rootwait ro left=56 right=24 upper=3 lower=3 vsync=3 hsync=14 fb_x_res=1280 fb_y_res=720 vout=hdmi hdmi_phy_res=720p60hz led_blink=1
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 2046MB = 2046MB total
[    0.000000] Memory: 1782924k/1782924k available, 312180k reserved, 1311744K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xdf800000 - 0xff000000   ( 504 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xdf000000   ( 496 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc0952000   (9512 kB)
[    0.000000]       .init : 0xc0952000 - 0xc0991e40   ( 256 kB)
[    0.000000]       .data : 0xc0992000 - 0xc0a3a5a0   ( 674 kB)
[    0.000000]        .bss : 0xc0a3a5c4 - 0xc0b04b90   ( 810 kB)
[    0.000000] SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:693
[    0.000000] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956ms
[    0.000000] Console: colour dummy device 80x30
[    0.000000] console [tty1] enabled
[    0.001176] Calibrating delay loop... 1785.85 BogoMIPS (lpj=4464640)
[    0.045051] pid_max: default: 32768 minimum: 301
[    0.045358] Mount-cache hash table entries: 512
[    0.046183] Initializing cgroup subsys debug
[    0.046208] Initializing cgroup subsys cpuacct
[    0.046228] Initializing cgroup subsys devices
[    0.046248] Initializing cgroup subsys freezer
[    0.046299] CPU: Testing write buffer coherency: ok
[    0.046451] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.046520] Setting up static identity map for 0x406dc7b0 - 0x406dc808
[    0.097739] CPU1: Booted secondary processor
[    0.097772] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.117738] CPU2: Booted secondary processor
[    0.117768] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[    0.137734] CPU3: Booted secondary processor
[    0.137758] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[    0.137891] Brought up 4 CPUs
[    0.137975] SMP: Total of 4 processors activated (7143.42 BogoMIPS).
[    0.138672] devtmpfs: initialized
[    0.154612] gpiochip_add: registered GPIOs 0 to 4 on device: GPJ0
[    0.154643] gpiochip_add: registered GPIOs 6 to 13 on device: GPJ1
[    0.154667] gpiochip_add: registered GPIOs 15 to 22 on device: GPJ2
[    0.154692] gpiochip_add: registered GPIOs 24 to 31 on device: GPJ3
[    0.154716] gpiochip_add: registered GPIOs 33 to 34 on device: GPJ4
[    0.154739] gpiochip_add: registered GPIOs 36 to 43 on device: GPK0
[    0.154762] gpiochip_add: registered GPIOs 45 to 52 on device: GPK1
[    0.154785] gpiochip_add: registered GPIOs 54 to 61 on device: GPK2
[    0.154808] gpiochip_add: registered GPIOs 63 to 69 on device: GPK3
[    0.154840] gpiochip_add: registered GPIOs 71 to 78 on device: GPA0
[    0.154863] gpiochip_add: registered GPIOs 80 to 85 on device: GPA1
[    0.154886] gpiochip_add: registered GPIOs 87 to 94 on device: GPA2
[    0.154909] gpiochip_add: registered GPIOs 96 to 100 on device: GPB0
[    0.154932] gpiochip_add: registered GPIOs 102 to 106 on device: GPB1
[    0.154955] gpiochip_add: registered GPIOs 108 to 111 on device: GPB2
[    0.154978] gpiochip_add: registered GPIOs 113 to 116 on device: GPB3
[    0.155001] gpiochip_add: registered GPIOs 118 to 124 on device: GPC0
[    0.155024] gpiochip_add: registered GPIOs 126 to 129 on device: GPC3
[    0.155047] gpiochip_add: registered GPIOs 131 to 137 on device: GPC1
[    0.155069] gpiochip_add: registered GPIOs 139 to 145 on device: GPC2
[    0.155092] gpiochip_add: registered GPIOs 147 to 148 on device: GPM5
[    0.155115] gpiochip_add: registered GPIOs 150 to 157 on device: GPD1
[    0.155138] gpiochip_add: registered GPIOs 159 to 166 on device: GPE0
[    0.155161] gpiochip_add: registered GPIOs 168 to 169 on device: GPE1
[    0.155184] gpiochip_add: registered GPIOs 171 to 176 on device: GPF0
[    0.155207] gpiochip_add: registered GPIOs 178 to 185 on device: GPF1
[    0.155230] gpiochip_add: registered GPIOs 187 to 194 on device: GPG0
[    0.155253] gpiochip_add: registered GPIOs 196 to 203 on device: GPG1
[    0.155275] gpiochip_add: registered GPIOs 205 to 206 on device: GPG2
[    0.155298] gpiochip_add: registered GPIOs 208 to 211 on device: GPH0
[    0.155321] gpiochip_add: registered GPIOs 213 to 220 on device: GPH1
[    0.155344] gpiochip_add: registered GPIOs 222 to 229 on device: GPM7
[    0.155367] gpiochip_add: registered GPIOs 231 to 236 on device: GPY0
[    0.155390] gpiochip_add: registered GPIOs 238 to 241 on device: GPY1
[    0.155413] gpiochip_add: registered GPIOs 243 to 248 on device: GPY2
[    0.155436] gpiochip_add: registered GPIOs 250 to 257 on device: GPY3
[    0.155459] gpiochip_add: registered GPIOs 259 to 266 on device: GPY4
[    0.155482] gpiochip_add: registered GPIOs 268 to 275 on device: GPY5
[    0.155504] gpiochip_add: registered GPIOs 277 to 284 on device: GPY6
[    0.155528] gpiochip_add: registered GPIOs 286 to 293 on device: GPY7
[    0.155551] gpiochip_add: registered GPIOs 295 to 302 on device: GPX0
[    0.155574] gpiochip_add: registered GPIOs 304 to 311 on device: GPX1
[    0.155597] gpiochip_add: registered GPIOs 313 to 320 on device: GPX2
[    0.155620] gpiochip_add: registered GPIOs 322 to 329 on device: GPX3
[    0.155649] gpiochip_add: registered GPIOs 331 to 338 on device: GPV0
[    0.155673] gpiochip_add: registered GPIOs 340 to 347 on device: GPV1
[    0.155696] gpiochip_add: registered GPIOs 349 to 356 on device: GPV2
[    0.155719] gpiochip_add: registered GPIOs 358 to 365 on device: GPV3
[    0.155742] gpiochip_add: registered GPIOs 367 to 368 on device: GPV4
[    0.155775] gpio: GPZ has no PM function
[    0.155793] gpiochip_add: registered GPIOs 370 to 376 on device: GPZ
[    0.156382] dummy: 
[    0.156720] NET: Registered protocol family 16
[    0.160337] Last reset was reset (RST_STAT=0x100)
[    0.170631] odroidxu_clkout_init [496] : clkout_clk = 24000000 
[    0.170637] 
[    0.178176] 
[    0.178181] ---------------------------------------------------------
[    0.178187] 
[    0.178222] exynos5_odroidxu_display_init : LCD or HDMI or DVI Monitor!
[    0.178245] 
[    0.178248] ---------------------------------------------------------
[    0.178254] 
[    0.178284] 
[    0.178287] ---------------------------------------------------------
[    0.178293] 
[    0.178322] Virtual FB Size from Boot Parameter : X(1280), y(720)
[    0.178343] 
[    0.178346] ---------------------------------------------------------
[    0.178352] 
[    0.180842] CCI is not supportedS3C Power Management, Copyright 2004 Simtec Electronics
[    0.182004] PowerDomain : pd-mfc, Device : s5p-mfc-v6 Registered
[    0.182046] PowerDomain : pd-mipi-csis0, Device : s5p-mipi-csis Registered
[    0.182076] PowerDomain : pd-mipi-csis1, Device : s5p-mipi-csis Registered
[    0.182107] PowerDomain : pd-mipi-csis2, Device : s5p-mipi-csis Registered
[    0.182143] PowerDomain : pd-flite0, Device : exynos-fimc-lite Registered
[    0.182172] PowerDomain : pd-flite1, Device : exynos-fimc-lite Registered
[    0.182207] PowerDomain : pd-flite2, Device : exynos-fimc-lite Registered
[    0.182237] PowerDomain : pd-maudio, Device : samsung-i2s Registered
[    0.182268] PowerDomain : pd-fimd1, Device : exynos5-fb Registered
[    0.182300] PowerDomain : pd-mipi_dsim, Device : s5p-mipi-dsim Registered
[    0.182334] PowerDomain : pd-hdmi, Device : exynos5-hdmi Registered
[    0.182362] PowerDomain : pd-mixer, Device : s5p-mixer Registered
[    0.182402] PowerDomain : pd-gscl0, Device : exynos-gsc Registered
[    0.182430] PowerDomain : pd-gscl1, Device : exynos-gsc Registered
[    0.182458] PowerDomain : pd-gscl2, Device : exynos-gsc Registered
[    0.182486] PowerDomain : pd-gscl3, Device : exynos-gsc Registered
[    0.182514] PowerDomain : pd-gscl4, Device : exynos5-scaler Registered
[    0.182546] PowerDomain : pd-g3d, Device : pvrsrvkm Registered
[    0.182574] PowerDomain : pd-g2d, Device : s5p-fimg2d Registered
[    0.182602] PowerDomain : pd-gscl, Device : exynos-sysmmu Registered
[    0.182630] PowerDomain : pd-gscl, Device : exynos-sysmmu Registered
[    0.182662] PowerDomain : pd-gscl, Device : exynos-sysmmu Registered
[    0.182691] PowerDomain : pd-gscl0, Device : exynos-sysmmu Registered
[    0.182719] PowerDomain : pd-gscl1, Device : exynos-sysmmu Registered
[    0.182747] PowerDomain : pd-gscl2, Device : exynos-sysmmu Registered
[    0.182776] PowerDomain : pd-gscl3, Device : exynos-sysmmu Registered
[    0.182815] PowerDomain : pd-gscl, Device : exynos-sysmmu Registered
[    0.182844] PowerDomain : pd-gscl, Device : exynos-sysmmu Registered
[    0.182872] PowerDomain : pd-gscl4, Device : exynos-sysmmu Registered
[    0.182900] PowerDomain : pd-fimd1, Device : exynos-sysmmu Registered
[    0.182928] PowerDomain : pd-mixer, Device : exynos-sysmmu Registered
[    0.182957] PowerDomain : pd-isp, Device : exynos-sysmmu Registered
[    0.182985] PowerDomain : pd-isp, Device : exynos-sysmmu Registered
[    0.183013] PowerDomain : pd-isp, Device : exynos-sysmmu Registered
[    0.183041] PowerDomain : pd-mfc, Device : exynos-sysmmu Registered
[    0.183070] PowerDomain : pd-g2d, Device : exynos-sysmmu Registered
[    0.183201] Failed to get (null) clock
[    0.183531] EXYNOS5410 PMU Initialize
[    0.184158] EXYNOS: Initializing architecture
[    0.185305] s3c24xx-pwm s3c24xx-pwm.0: tin at 2015151, tdiv at 2015151, tin=divclk, base 0
[    0.185421] s3c24xx-pwm s3c24xx-pwm.3: tin at 33250000, tdiv at 33250000, tin=divclk, base 16
[    0.186410] Exynos5410 : Lot ID is N68Z5[Non Special]
[    0.186434] Exynos5410 ASV : Use Fusing Speed Group 4
[    0.186453] Exynos5410 ASV : invalid IDS value
[    0.186472] EXYNOS5410 ASV : N68Z5 IDS : 0 HPM : 0
[    0.186522] VDD_ARM ASV group is 4
[    0.186544] VDD_KFC ASV group is 4
[    0.186563] VDD_INT_MIF_L0 ASV group is 4
[    0.186583] VDD_MIF ASV group is 4
[    0.186601] VDD_G3D ASV group is 4
[    0.186618] VDD_INT_MIF_L1 ASV group is 4
[    0.186637] VDD_INT_MIF_L2 ASV group is 4
[    0.186656] VDD_INT_MIF_L3 ASV group is 4
[    0.187883] Exynos Power mode List
[    0.187900] NAME	CPU	MIF	INT	CPU0	CPU1	CPU2	CPU3
[    0.187924] init	0	0	0	1	1	1	1
[    0.187942] quad	1600000	800000	400000	1	1	1	1
[    0.187961] quad_io	1800000	800000	400000	1	1	0	0
[    0.187981] quad_mem	1800000	800000	400000	1	1	0	0
[    0.188010] exynos_interface_init: failed to create sysfs interface
[    0.224105] bio: create slab  at 0
[    0.224831] DC_5V: 5000 mV 
[    0.226527] SCSI subsystem initialized
[    0.229332] usbcore: registered new interface driver usbfs
[    0.229626] usbcore: registered new interface driver hub
[    0.229825] usbcore: registered new device driver usb
[    0.230992] i2c-gpio i2c-gpio.2: using pins 77 (SDA) and 78 (SCL)
[    0.231605] i2c-gpio i2c-gpio.10: using pins 323 (SDA) and 311 (SCL)
[    0.232237] s3c-i2c s3c2440-i2c.1: i2c-1: S3C I2C adapter
[    0.232263] s3c-i2c s3c2440-i2c.1: slave address 0x10
[    0.232285] s3c-i2c s3c2440-i2c.1: bus frequency set to 377 KHz
[    0.232753] s3c-i2c s3c2440-i2c.0: i2c-0: S3C I2C adapter
[    0.232779] s3c-i2c s3c2440-i2c.0: slave address 0x10
[    0.232800] s3c-i2c s3c2440-i2c.0: bus frequency set to 377 KHz
[    0.232858] s3c-i2c s3c2440-i2c.2: no platform data
[    0.232889] s3c-i2c: probe of s3c2440-i2c.2 failed with error -22
[    0.233640] max77802 4-0009: device found
[    0.233661] max77802_irq_init+
[    0.233684] max77802_irq_init: gpio_irq=0
[    0.238623] max77802_irq_init-
[    0.240538] vdd_mif range: 800  1300 mV at 1000 mV 
[    0.241243] vdd_arm range: 800  1500 mV at 1000 mV 
[    0.241967] vdd_int range: 800  1400 mV at 1000 mV 
[    0.242664] vdd_g3d range: 800  1400 mV at 1000 mV 
[    0.243371] vdd_mem2 range: 800  1500 mV at 1200 mV 
[    0.244068] vdd_kfc range: 800  1500 mV at 1000 mV 
[    0.244975] vdd_alive: 1000 mV 
[    0.245885] vddq_M1_M2: 1200 mV 
[    0.246788] vddq_gpio: 1800 mV 
[    0.247684] vddq_mmc2: 2800 mV 
[    0.248583] vdd18_hsic: 1800 mV 
[    0.249492] vdd18_BPLL: 1800 mV 
[    0.250199] vddq_lcd: 1800 mV 
[    0.251110] vdd10_hdmi: 1000 mV 
[    0.252001] vdd18_mipi: 1800 mV 
[    0.252912] vddq_mmc01: 1800 mV 
[    0.254878] vdd33_USB30: 3300 mV 
[    0.255780] vddq_abb0: 1800 mV 
[    0.256677] vddq_abb1: 1800 mV 
[    0.257575] vdd10_USB30: 1000 mV 
[    0.258270] cam_sensor_core: 1200 mV 
[    0.258966] LDO18: 1800 mV 
[    0.259874] vdd_emmc_1v8: 1800 mV 
[    0.260769] VDDF_2V8: 2850 mV 
[    0.261673] DP_P3V3: 3300 mV 
[    0.262362] cam_af_2.8v: 2800 mV 
[    0.263262] ETH_P3V3: 3300 mV 
[    0.264154] USB30_EXTCLK: 3300 mV 
[    0.265062] vddq_E12: 1200 mV 
[    0.265979] vs_power_meter: 3300 mV 
[    0.267280] exynos5-i2c exynos5-hs-i2c.0: i2c-4: Exynos5 HS-I2C adapter
[    0.267476] Linux media interface: v0.10
[    0.267637] Linux video capture interface: v2.00
[    0.274166] Advanced Linux Sound Architecture Driver Version 1.0.25.
[    0.275048] Bluetooth: Core ver 2.16
[    0.275204] NET: Registered protocol family 31
[    0.275226] Bluetooth: HCI device and connection manager initialized
[    0.275253] Bluetooth: HCI socket layer initialized
[    0.275273] Bluetooth: L2CAP socket layer initialized
[    0.275322] Bluetooth: SCO socket layer initialized
[    0.275825] cfg80211: Calling CRDA to update world regulatory domain
[    0.276407] nfc: nfc_init: NFC Core ver 0.1
[    0.276605] NET: Registered protocol family 39
[    0.276913] Switching to clocksource mct-frc
[    0.315474] NET: Registered protocol family 2
[    0.315690] IP route cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.316139] TCP established hash table entries: 65536 (order: 7, 524288 bytes)
[    0.317326] TCP bind hash table entries: 65536 (order: 7, 786432 bytes)
[    0.318527] TCP: Hash tables configured (established 65536 bind 65536)
[    0.318551] TCP: reno registered
[    0.318573] UDP hash table entries: 256 (order: 1, 8192 bytes)
[    0.318610] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[    0.318855] NET: Registered protocol family 1
[    0.319125] RPC: Registered named UNIX socket transport module.
[    0.319151] RPC: Registered udp transport module.
[    0.319171] RPC: Registered tcp transport module.
[    0.319189] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.319385] Trying to unpack rootfs image as initramfs...
[    0.687288] Freeing initrd memory: 6364K
[    0.688546] big.LITTLE switcher initializing
[    0.694819] big.LITTLE switcher initialized
[    0.695000] s3c-adc samsung-adc-v5: operating without regulator "vdd" .
[    0.695087] s3c-adc samsung-adc-v5: attached adc driver
[    0.697126] highmem bounce pool size: 64 pages
[    0.715525] NFS: Registering the id_resolver key type
[    0.717058] NTFS driver 2.1.30 [Flags: R/W DEBUG].
[    0.717384] fuse init (API version 7.18)
[    0.718259] msgmni has been set to 932
[    0.720706] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    0.720741] io scheduler noop registered
[    0.720760] io scheduler deadline registered
[    0.721058] io scheduler cfq registered (default)
[    0.729380] dma-pl330 dma-pl330.0: Loaded driver for PL330 DMAC-267056
[    0.729413] dma-pl330 dma-pl330.0: 	DBUFF-32x4bytes Num_Chans-8 Num_Peri-32 Num_Events-32
[    0.736644] dma-pl330 dma-pl330.1: Loaded driver for PL330 DMAC-267056
[    0.736678] dma-pl330 dma-pl330.1: 	DBUFF-32x4bytes Num_Chans-8 Num_Peri-32 Num_Events-32
[    0.738664] dma-pl330 dma-pl330.2: Loaded driver for PL330 DMAC-267056
[    0.738696] dma-pl330 dma-pl330.2: 	DBUFF-64x8bytes Num_Chans-8 Num_Peri-1 Num_Events-32
[    0.739220] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    0.741073] exynos4210-uart.0: ttySAC0 at MMIO 0x12c00000 (irq = 83) is a S3C6400/10
[    0.741472] exynos4210-uart.1: ttySAC1 at MMIO 0x12c10000 (irq = 84) is a S3C6400/10
[    0.741857] exynos4210-uart.2: ttySAC2 at MMIO 0x12c20000 (irq = 85) is a S3C6400/10
[    2.604742] console [ttySAC2] enabled
[    2.608710] exynos4210-uart.3: ttySAC3 at MMIO 0x12c30000 (irq = 86) is a S3C6400/10
[    2.617040] ion_device_add_heap: can not insert multiple heaps with id 1
[    2.622737] ion_device_add_heap: can not insert multiple heaps with id 0
[    2.629796] PVR_K: PVRSRVDriverProbe(pDevice=c09ddc18)
[    2.634533] PVR_K: SysInitialise: start
[    2.639240] PVR_K: G3D DVFS Info: Level:0, Clock:640 MHz, Voltage:1150000 uV
[    2.645372] PVR_K: G3D DVFS Info: Level:1, Clock:532 MHz, Voltage:1087500 uV
[    2.652395] PVR_K: G3D DVFS Info: Level:2, Clock:480 MHz, Voltage:1050000 uV
[    2.659418] PVR_K: G3D DVFS Info: Level:3, Clock:350 MHz, Voltage:937500 uV
[    2.666352] PVR_K: G3D DVFS Info: Level:4, Clock:266 MHz, Voltage:900000 uV
[    2.673293] PVR_K: G3D DVFS Info: Level:5, Clock:177 MHz, Voltage:900000 uV
[    2.680621] PVR_K: enable_gpu_power off fail with pm_runtime_suspended
[    2.686739] PVR_K: SysInitialise: end
[    2.742534] brd: module loaded
[    2.751336] loop: module loaded
[    2.754082] tun: Universal TUN/TAP device driver, 1.6
[    2.758076] tun: (C) 1999-2004 Max Krasnyansky 
[    2.764641] PPP generic driver version 2.4.2
[    2.768981] PPP BSD Compression module registered
[    2.773159] PPP Deflate Compression module registered
[    2.780228] PPP MPPE Compression module registered
[    2.783589] NET: Registered protocol family 24
[    2.788234] usbcore: registered new interface driver asix
[    2.793570] usbcore: registered new interface driver ax88179_178a
[    2.799623] usbcore: registered new interface driver cdc_ether
[    2.805436] usbcore: registered new interface driver cdc_subset
[    2.811368] usbcore: registered new interface driver ipheth
[    2.816876] usbcore: registered new interface driver cdc_ncm
[    2.822494] exynos-drd exynos-dwc3.0: Core ID Number: 0x5533
[    2.827988] exynos-drd exynos-dwc3.0: Release Number: 0x200a
[    2.833800] exynos-drd exynos-dwc3.0: IRQ: ID: 1
[    2.838344] exynos-drd exynos-dwc3.0: IRQ: VBUS: inactive
[    2.844182] exynos-drd exynos-dwc3.1: Core ID Number: 0x5533
[    2.849233] exynos-drd exynos-dwc3.1: Release Number: 0x200a
[    2.855003] exynos-drd exynos-dwc3.1: IRQ: VBUS: inactive
[    2.860947] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    2.892064] s5p-ehci s5p-ehci: S5P EHCI Host Controller
[    2.895840] s5p-ehci s5p-ehci: new USB bus registered, assigned bus number 1
[    2.902943] s5p-ehci s5p-ehci: irq 103, io mem 0x12110000
[    2.917070] s5p-ehci s5p-ehci: USB 0.0 started, EHCI 1.00
[    2.921875] hub 1-0:1.0: USB hub found
[    2.924766] hub 1-0:1.0: 3 ports detected
[    2.929467] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    2.935080] exynos-ohci exynos-ohci: Already power on PHY
[    2.940278] exynos-ohci exynos-ohci: EXYNOS OHCI Host Controller
[    2.946274] exynos-ohci exynos-ohci: new USB bus registered, assigned bus number 2
[    2.953843] exynos-ohci exynos-ohci: irq 103, io mem 0x12120000
[    3.016889] hub 2-0:1.0: USB hub found
[    3.019212] hub 2-0:1.0: 3 ports detected
[    3.023952] exynos-drd exynos-dwc3.0: Core ID Number: 0x5533
[    3.028883] exynos-drd exynos-dwc3.0: Release Number: 0x200a
[    3.034468] exynos-xhci exynos-xhci.0: EXYNOS xHCI Host Controller
[    3.040630] exynos-xhci exynos-xhci.0: new USB bus registered, assigned bus number 3
[    3.048525] exynos-xhci exynos-xhci.0: irq 104, io mem 0x12000000
[    3.055007] xHCI xhci_add_endpoint called for root hub
[    3.055019] xHCI xhci_check_bandwidth called for root hub
[    3.055282] hub 3-0:1.0: USB hub found
[    3.058153] hub 3-0:1.0: 1 port detected
[    3.062526] exynos-xhci exynos-xhci.0: EXYNOS xHCI Host Controller
[    3.068209] exynos-xhci exynos-xhci.0: new USB bus registered, assigned bus number 4
[    3.076413] xHCI xhci_add_endpoint called for root hub
[    3.076424] xHCI xhci_check_bandwidth called for root hub
[    3.076662] hub 4-0:1.0: USB hub found
[    3.079676] hub 4-0:1.0: 1 port detected
[    3.084109] exynos-drd exynos-dwc3.1: Core ID Number: 0x5533
[    3.089186] exynos-drd exynos-dwc3.1: Release Number: 0x200a
[    3.094823] exynos-xhci exynos-xhci.1: EXYNOS xHCI Host Controller
[    3.100985] exynos-xhci exynos-xhci.1: new USB bus registered, assigned bus number 5
[    3.108870] exynos-xhci exynos-xhci.1: irq 232, io mem 0x12400000
[    3.115302] xHCI xhci_add_endpoint called for root hub
[    3.115314] xHCI xhci_check_bandwidth called for root hub
[    3.115583] hub 5-0:1.0: USB hub found
[    3.118502] hub 5-0:1.0: 1 port detected
[    3.122872] exynos-xhci exynos-xhci.1: EXYNOS xHCI Host Controller
[    3.128596] exynos-xhci exynos-xhci.1: new USB bus registered, assigned bus number 6
[    3.136844] xHCI xhci_add_endpoint called for root hub
[    3.136855] xHCI xhci_check_bandwidth called for root hub
[    3.137163] hub 6-0:1.0: USB hub found
[    3.139979] hub 6-0:1.0: 1 port detected
[    3.144896] usbcore: registered new interface driver cdc_acm
[    3.149540] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    3.157518] Initializing USB Mass Storage driver...
[    3.162713] usbcore: registered new interface driver usb-storage
[    3.168358] USB Mass Storage support registered.
[    3.173379] usbcore: registered new interface driver usbserial
[    3.178784] usbserial: USB Serial Driver core
[    3.183352] usbcore: registered new interface driver pl2303
[    3.188852] USB Serial support registered for pl2303
[    3.237092] usb 1-2: new high-speed USB device number 2 using s5p-ehci
[    3.297574] usb3503 4-0008: switched to HUB mode
[    3.300721] usb3503 4-0008: usb3503_probe: probed on  hub mode
[    3.307062] exynos-ss-udc exynos-ss-udc.0: regs df8b2000, irq 104
[    3.313219] exynos-ss-udc exynos-ss-udc.1: regs df8be000, irq 232
[    3.319764]  gadget: Gadget Serial v2.4
[    3.322524]  gadget: g_serial ready
[    3.325954] exynos-ss-udc exynos-ss-udc.0: bound driver g_serial
[    3.332726] mousedev: PS/2 mouse device common for all mice
[    3.337732] odroid_keypad_init
[    3.340992] input: odroid-keypad as /devices/virtual/input/input0
[    3.346634] odroid_keypad_open
[    3.349947] --------------------------------------------------------
[    3.355997] odroid-keypad driver initialized!! Ver 1.0
[    3.361144] --------------------------------------------------------
[    3.367494] platform_driver_register 0 
[    3.371433] usbcore: registered new interface driver xpad
[    3.427971] odroid-ts 0-0048: I2C write error: (-6) reg: 0x4 len: 0
[    3.433163] input: odroidxu-ts as /devices/platform/s3c2440-i2c.0/i2c-0/0-0048/input/input1
[    3.441903] --------------------------------------------------------
[    3.447484]            TOUCH SCREEN INFORMATION
[    3.451950] --------------------------------------------------------
[    3.458290] TOUCH INPUT Name = odroidxu-ts
[    3.462360] TOUCH ABS X MAX = 1280, TOUCH ABS X MIN = 0
[    3.467567] TOUCH ABS Y MAX = 720, TOUCH ABS Y MIN = 0
[    3.472681] Dummy Touchscreen driver!
[    3.476294] --------------------------------------------------------
[    3.482926] i2c-core: driver [odroid-ts] using legacy suspend method
[    3.488991] i2c-core: driver [odroid-ts] using legacy resume method
[    3.496583] max77802_rtc_probe
[    3.537061] max77802-rtc max77802-rtc: rtc init
[    3.540126] max77802_rtc_set_time: 112/0/1 0:0:0(0)
[    3.552060] max77802_rtc_set_time: task=swapper/0[1]
[    3.555553] max77802-rtc max77802-rtc: max77802_rtc_enable_wtsr: enable WTSR
[    3.592320] max77802_rtc_read_time: 112/0/1 0:0:0(0)
[    3.602318] max77802_rtc_read_alarm: 100/0/1 0:0:0(0)
[    3.612307] max77802_rtc_read_time: 112/0/1 0:0:0(0)
[    3.616251] max77802-rtc max77802-rtc: rtc core: registered max77802-rtc as rtc0
[    3.623237] usb 1-3: new high-speed USB device number 3 using s5p-ehci
[    3.629739] max77802_irq_unmask: group=2, cur=0xfd
[    3.635122] i2c /dev entries driver
[    3.640153] lirc_dev: IR Remote Control driver registered, major 250 
[    3.645165] IR NEC protocol handler initialized
[    3.649669] IR RC5(x) protocol handler initialized
[    3.654432] IR RC6 protocol handler initialized
[    3.658934] IR JVC protocol handler initialized
[    3.663442] IR Sony protocol handler initialized
[    3.668041] IR RC5 (streamzap) protocol handler initialized
[    3.673592] IR SANYO protocol handler initialized
[    3.678271] IR MCE Keyboard/mouse protocol handler initialized
[    3.684105] IR LIRC bridge handler initialized
[    3.688641] gspca_main: v2.14.0 registered
[    3.692947] exynos-mdev.0: Media0[0xde01f800] was registered successfully
[    3.699748] exynos-mdev.1: Media1[0xde01fc00] was registered successfully
[    3.706517] exynos-mdev.2: Media2[0xde2c4000] was registered successfully
[    3.713334] s5p-mipi-csis.0
[    3.713339] : s5pcsis_probe : csis0 probe success
[    3.720454] s5p-mipi-csis.1
[    3.720459] : s5pcsis_probe : csis1 probe success
[    3.727917] s5p-mipi-csis.2
[    3.727922] : s5pcsis_probe : csis2 probe success
[    3.736001] [INFO]flite_probe:2214: FIMC-LITE0 probe success
[    3.741274] [INFO]flite_probe:2214: FIMC-LITE1 probe success
[    3.747050] [INFO]flite_probe:2214: FIMC-LITE2 probe success
[    3.753628] [INFO]gsc_probe:1559: gsc-0 registered successfully
[    3.759256] [INFO]gsc_probe:1559: gsc-1 registered successfully
[    3.765382] hub 1-3:1.0: USB hub found
[    3.767922] hub 1-3:1.0: 3 ports detected
[    3.771928] [INFO]gsc_probe:1559: gsc-2 registered successfully
[    3.779259] [INFO]gsc_probe:1559: gsc-3 registered successfully
[    3.784036] exynos5-scaler exynos5-scaler.0: ++sc_probe
[    3.789496] exynos5-scaler exynos5-scaler.0: scaler registered successfully
[    3.796218] Initialize JPEG driver
[    3.799789] s5p-jpeg s5p-jpeg: JPEG driver is registered to /dev/video12
[    3.806311] s5p-jpeg s5p-jpeg: JPEG driver is registered to /dev/video11
[    3.812882] Exynos Graphics 2D driver, (c) 2011 Samsung Electronics
[    3.819080] [fimg2d_probe] base address: 0x10850000
[    3.823713] [fimg2d_probe] irq: 123
[    3.827223] [fimg2d_clk_setup] aclk_acp(266000000) pclk_acp(133000000)
[    3.833701] [fimg2d_clk_setup] gate clk: fimg2d
[    3.838195] [fimg2d_probe] enable runtime pm
[    3.842440] [fimg2d_probe] register sysmmu page fault handler
[    3.848740] EXYNOS MFC V4L2 Driver, (c) 2010 Samsung Electronics
[    3.854221] s5p-mfc s5p-mfc-v6: s5p_mfc_probe()
[    3.854771] s5p-mfc s5p-mfc-v6: decoder registered as /dev/video6
[    3.860614] s5p-mfc s5p-mfc-v6: encoder registered as /dev/video7
[    3.866712] s5p_mfc_probe--
[    3.867036] i2c i2c-2: attached exynos hdcp into i2c adapter successfully
[    3.873258] i2c-core: driver [exynos_hdcp] using legacy suspend method
[    3.879598] i2c-core: driver [exynos_hdcp] using legacy resume method
[    3.886186] Samsung HDMI output driver, (c) 2010-2011 Samsung Electronics Co., Ltd.
[    3.893887] s5p-hdmi exynos5-hdmi: hdmi ip version = 2
[    3.899384] s5p-hdmi exynos5-hdmi: probe sucessful
[    3.903793] Samsung TV Mixer driver, (c) 2010-2011 Samsung Electronics Co., Ltd.
[    3.912604] s5p-mixer s5p-mixer: probe start
[    3.915409] s5p-mixer s5p-mixer: mixer ip version = 2
[    3.920658] s5p-mixer s5p-mixer: resources acquired
[    3.925342] s5p-mixer s5p-mixer: added output 'S5P HDMI connector' from module 's5p-hdmi'
[    3.933845] s5p-mixer s5p-mixer: registered layer mxr0_graph0 as /dev/video16
[    3.940911] s5p-mixer s5p-mixer: registered layer mxr0_graph1 as /dev/video17
[    3.948042] s5p-mixer s5p-mixer: registered layer mxr1_graph2 as /dev/video18
[    3.955200] s5p-mixer s5p-mixer: registered layer mxr1_graph3 as /dev/video19
[    3.961927] s5p-mixer s5p-mixer: mixer0 create links
[    3.966867] s5p-mixer s5p-mixer: mixer1 create links
[    3.971829] s5p-mixer s5p-mixer: mixer links are created successfully
[    3.978237] s5p-mixer s5p-mixer: probe successful
[    3.983133] S5P CEC for Exynos4 Driver, (c) 2009 Samsung Electronics
[    3.989657] s5p-tvout-cec s5p-tvout-cec: probe successful
[    3.994881] exynos-rot exynos-rot: ++rot_probe
[    3.999372] exynos-rot exynos-rot: rotator registered successfully
[    4.005407] Initialize JPEG Hx driver
[    4.009296] exynos5-jpeg-hx exynos5-jpeg-hx: JPEG driver is registered to /dev/video14
[    4.017082] exynos5-jpeg-hx exynos5-jpeg-hx: JPEG driver is registered to /dev/video13
[    4.025107] usbcore: registered new interface driver uvcvideo
[    4.030342] USB Video Class driver (1.1.1)
[    4.034679] samsung-fake-battery samsung-fake-battery: samsung_fake_bat_probe
[    4.044414] Exynos: Kernel Thermal management registered
[    4.048525] s3c2410_wdt: S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
[    4.055863] s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq disabled
[    4.064263] device-mapper: uevent: version 1.0.3
[    4.068266] device-mapper: ioctl: 4.22.0-ioctl (2011-10-19) initialised: dm-devel@redhat.com
[    4.076280] usbcore: registered new interface driver btusb
[    4.081877] cpuidle: using governor ladder
[    4.086024] cpuidle: using governor menu
[    4.089967] sdhci: Secure Digital Host Controller Interface driver
[    4.095642] sdhci: Copyright(c) Pierre Ossman
[    4.100521] Synopsys Designware Multimedia Card Interface Driver
[    4.105896] dw_mmc dw_mmc.2: Using internal DMA controller.
[    4.111845] dw_mmc dw_mmc.2: no vmmc regulator found
[    4.116461] dw_mmc dw_mmc.2: no vqmmc regulator found
[    4.123267] dw_mmc dw_mmc.2: Version ID is 241a
[    4.126328] dw_mmc dw_mmc.2: DW MMC controller at irq 109, 64 bit host data width, 128 deep fifo
[    4.135195] dw_mmc dw_mmc.0: Using internal DMA controller.
[    4.141112] dw_mmc dw_mmc.0: vmmc regulator found
[    4.145534] dw_mmc dw_mmc.0: vqmmc regulator found
[    4.151898] dw_mmc dw_mmc.0: Version ID is 241a
[    4.155036] dw_mmc dw_mmc.0: DW MMC controller at irq 107, 64 bit host data width, 128 deep fifo
[    4.157987] mmc_host mmc0: Bus speed (slot 0) = 20000000Hz (slot req 400000Hz, actual 400000HZ div = 25)
[    4.175209] usbcore: registered new interface driver usbhid
[    4.179366] usbhid: USB HID core driver
[    4.183995] --------------------------------------------------------
[    4.189548] odroid_sysfs_init(472) : Sleep Disable Flag SET!!(Wake_lock_init)
[    4.196619] --------------------------------------------------------
[    4.275104] mmc_host mmc0: Bus speed (slot 0) = 40000000Hz (slot req 50000000Hz, actual 40000000HZ div = 0)
[    4.283697] mmc0: new high speed SDHC card at address aaaa
[    4.290188] mmcblk0: mmc0:aaaa SU32G 29.7 GiB 
[    4.297598]  mmcblk0: p1 p2 p3
[    4.332151] mmc_host mmc1: Bus speed (slot 0) = 20000000Hz (slot req 400000Hz, actual 400000HZ div = 25)
[    4.382129] mmc_host mmc1: Bus speed (slot 0) = 20000000Hz (slot req 313726Hz, actual 312500HZ div = 32)
[    5.042031] hot state 0 to 1 
[    5.202024] exynos5-i2c exynos5-hs-i2c.0: tx timeout
[    6.202021] exynos5-i2c exynos5-hs-i2c.0: tx timeout
[    6.205650] INA231 4-0040: I2C write error: (-121) reg: 0x0 
[    6.211187] ============= Probe INA231 Fail! : sensor_arm (0xFFFFFF87) ============= 
[    6.219007] INA231: probe of 4-0040 failed with error -121
[    7.222021] exynos5-i2c exynos5-hs-i2c.0: tx timeout
[    8.222022] exynos5-i2c exynos5-hs-i2c.0: tx timeout
[    8.225627] INA231 4-0041: I2C write error: (-121) reg: 0x0 
[    8.231186] ============= Probe INA231 Fail! : sensor_mem (0xFFFFFF87) ============= 
[    8.239005] INA231: probe of 4-0041 failed with error -121
[    9.242020] exynos5-i2c exynos5-hs-i2c.0: tx timeout
[   10.242020] exynos5-i2c exynos5-hs-i2c.0: tx timeout
[   10.245619] INA231 4-0044: I2C write error: (-121) reg: 0x0 
[   10.251179] ============= Probe INA231 Fail! : sensor_g3d (0xFFFFFF87) ============= 
[   10.259021] INA231: probe of 4-0044 failed with error -121
[   11.262021] exynos5-i2c exynos5-hs-i2c.0: tx timeout
[   12.262021] exynos5-i2c exynos5-hs-i2c.0: tx timeout
[   12.265620] INA231 4-0045: I2C write error: (-121) reg: 0x0 
[   12.271180] ============= Probe INA231 Fail! : sensor_kfc (0xFFFFFF87) ============= 
[   12.279002] INA231: probe of 4-0045 failed with error -121
[   12.285001] i2c-core: driver [INA231] using legacy suspend method
[   12.290522] i2c-core: driver [INA231] using legacy resume method
[   12.296638] 
[   12.296642] =================== ioboard_keyled_probe ===================
[   12.296647] 
[   13.142021] ioboard-bh1780 10-0029: I2C write byte error: data=0x8b
[   13.147447] i2c-core: driver [ioboard-bh1780] using legacy suspend method
[   13.153617] i2c-core: driver [ioboard-bh1780] using legacy resume method
[   17.357042] bmp180_read_store_eeprom_val: Cannot read EEPROM values
[   17.361837] bmp180_probe: Reading the EEPROM failed
[   17.367276] i2c-core: driver [ioboard-bmp180] using legacy suspend method
[   17.373491] i2c-core: driver [ioboard-bmp180] using legacy resume method
[   17.380254] 
[   17.380258] =================== ioboard_adc_probe ===================
[   17.380263] 
[   17.390098] -------------------- ioboard_spi_probe -----------------------
[   17.398448] usbcore: registered new interface driver snd-usb-audio
[   17.406926] soc-audio soc-audio.0: ASoC machine Odroid-max98090 should use snd_soc_register_card()
[   17.414926] samsung-i2s samsung-i2s.0: EPLL rate = 400000000
[   17.420088] samsung-i2s samsung-i2s.0: SRP rate = 100000000
[   17.425636] samsung-i2s samsung-i2s.0: BUS rate = 50000000
[   17.432249] max98090 1-0010: revision 0x43
[   17.437313] 	[MAX98090] max98090_set_record_main_mic(151)
[   17.442757] asoc: max98090-aif1  samsung-i2s.0 mapping ok
[   17.447826] asoc: max98090-aif1  samsung-i2s.0 mapping ok
[   17.456707] GACT probability NOT on
[   17.458794] Mirror/redirect action on
[   17.462402] u32 classifier
[   17.465059]     Actions configured
[   17.468471] Netfilter messages via NETLINK v0.30.
[   17.473203] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[   17.480111] ctnetlink v0.93: registering with nfnetlink.
[   17.484563] NF_TPROXY: Transparent proxy support initialized, version 4.1.0
[   17.491481] NF_TPROXY: Copyright (c) 2006-2007 BalaBit IT Ltd.
[   17.498079] xt_time: kernel timezone is -0000
[   17.501925] ip_tables: (C) 2000-2006 Netfilter Core Team
[   17.507148] arp_tables: (C) 2002 David S. Miller
[   17.511507] TCP: bic registered
[   17.514610] TCP: cubic registered
[   17.517902] TCP: westwood registered
[   17.521430] TCP: htcp registered
[   17.526677] NET: Registered protocol family 10
[   17.530458] Mobile IPv6
[   17.532150] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   17.537645] IPv6 over IPv4 tunneling driver
[   17.545102] NET: Registered protocol family 17
[   17.548135] NET: Registered protocol family 15
[   17.552679] Bluetooth: RFCOMM TTY layer initialized
[   17.557458] Bluetooth: RFCOMM socket layer initialized
[   17.562502] Bluetooth: RFCOMM ver 1.11
[   17.566204] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   17.571519] Bluetooth: BNEP filters: protocol multicast
[   17.576727] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[   17.583143] NET: Registered protocol family 33
[   17.589656] RxRPC: Registered security type 2 'rxkad'
[   17.593294] NET: Registered protocol family 35
[   17.597736] lib80211: common routines for IEEE802.11 drivers
[   17.603327] lib80211_crypt: registered algorithm 'NULL'
[   17.603339] Registering the dns_resolver key type
[   17.608413] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
[   17.615652] Registering SWP/SWPB emulation handler
[   17.625224] HDMI phy power off : 1
[   17.742066] s5p-mipi-dsim s5p-mipi-dsim.1: DSI Master driver has been completed.
[   17.748040] s5p-mipi-dsim s5p-mipi-dsim.1: DSI Master state is stop state
[   17.754795] s5p-mipi-dsim s5p-mipi-dsim.1: dsim_lcd_drv->probe is NULL.
[   18.031571] s5p-mipi-dsim s5p-mipi-dsim.1: mipi-dsi driver(RGB mode) has been probed.
[   18.052468] s3c-fb exynos5-fb.1: failed to find bootloader framebuffer
[   18.057683] s3c-fb exynos5-fb.1: couldn't copy bootloader framebuffer into default window; clearing instead
[   18.084677] s3c-fb exynos5-fb.1: window 0: fb 
[   18.089814] vddq_lcd: incomplete constraints, leaving on
[   18.093767] 
[   18.093771]  uiCount = 1800
[   18.097929] PA FB = 0xB6300000, bits per pixel = 32
[   18.102787] screen width=1280 height=720 va=0x0xres_virtual = 1280, yres_virtual = 720, xoffset = 0, yoffset = 0
[   18.112933] fb_size=7372800
[   18.115680] Back frameBuffer[0].VAddr=00384000 PAddr=b5e84000 size=3686400
[   18.132361] max77802_rtc_read_time: 112/0/1 0:0:14(0)
[   18.136120] max77802-rtc max77802-rtc: setting system clock to 2012-01-01 00:00:14 UTC (1325376014)
[   18.145012] CPUFREQ of CA7  L0 : 1237500 uV
[   18.149156] CPUFREQ of CA7  L1 : 1237500 uV
[   18.153316] CPUFREQ of CA7  L2 : 1175000 uV
[   18.157517] CPUFREQ of CA7  L3 : 1112500 uV
[   18.161614] CPUFREQ of CA7  L4 : 1050000 uV
[   18.165804] CPUFREQ of CA7  L5 : 1000000 uV
[   18.169965] CPUFREQ of CA7  L6 : 950000 uV
[   18.174040] CPUFREQ of CA7  L7 : 950000 uV
[   18.178118] CPUFREQ of CA7  L8 : 950000 uV
[   18.182200] CPUFREQ of CA7  L9 : 950000 uV
[   18.186241] CPUFREQ of CA7  L10 : 950000 uV
[   18.190459] CPUFREQ of CA7  L11 : 950000 uV
[   18.194668] CPUFREQ of CA15 L0 : 1237500 uV
[   18.198759] CPUFREQ of CA15 L1 : 1237500 uV
[   18.202923] CPUFREQ of CA15 L2 : 1237500 uV
[   18.207091] CPUFREQ of CA15 L3 : 1187500 uV
[   18.211217] CPUFREQ of CA15 L4 : 1150000 uV
[   18.215408] CPUFREQ of CA15 L5 : 1125000 uV
[   18.219577] CPUFREQ of CA15 L6 : 1087500 uV
[   18.223733] CPUFREQ of CA15 L7 : 1050000 uV
[   18.227895] CPUFREQ of CA15 L8 : 1012500 uV
[   18.232058] CPUFREQ of CA15 L9 : 987500 uV
[   18.236105] CPUFREQ of CA15 L10 : 950000 uV
[   18.240296] CPUFREQ of CA15 L11 : 912500 uV
[   18.244459] CPUFREQ of CA15 L12 : 900000 uV
[   18.248621] CPUFREQ of CA15 L13 : 900000 uV
[   18.252784] CPUFREQ of CA15 L14 : 900000 uV
[   18.256917] CPUFREQ of CA15 L15 : 900000 uV
[   18.261188] CPUFREQ of CA15 L16 : 900000 uV
[   18.265276] CPUFREQ of CA15 L17 : 900000 uV
[   18.269434] CPUFREQ of CA15 L18 : 900000 uV
[   18.273678] fout_apll[900000000]
[   18.277849] INT 800000Khz ASV is 1025000uV
[   18.280869] INT 700000Khz ASV is 1000000uV
[   18.284955] INT 650000Khz ASV is 1000000uV
[   18.289045] INT 600000Khz ASV is 1000000uV
[   18.293110] INT 550000Khz ASV is 1000000uV
[   18.297194] INT 400000Khz ASV is 1000000uV
[   18.301229] INT 267000Khz ASV is 1000000uV
[   18.305330] INT 200000Khz ASV is 1000000uV
[   18.309406] INT 160000Khz ASV is 1000000uV
[   18.313480] INT 100000Khz ASV is 1000000uV
[   18.317556] INT 50000Khz ASV is 1000000uV
[   18.323802] MIF 800000Khz ASV is 987500uV
[   18.326345] MIF 667000Khz ASV is 1025000uV
[   18.330432] MIF 533000Khz ASV is 1025000uV
[   18.334504] MIF 400000Khz ASV is 900000uV
[   18.338492] MIF 267000Khz ASV is 1025000uV
[   18.342568] MIF 200000Khz ASV is 850000uV
[   18.346536] MIF 160000Khz ASV is 1025000uV
[   18.350634] MIF 100000Khz ASV is 850000uV
[   18.354621] S divider change for DFS of MIF block
[   18.522734] init_volt[987500], freq[800000]
[   18.526568] ALSA device list:
[   18.528414]   #0: Odroid-max98090
[   18.532025] Freeing init memory: 252K
[   18.535326] Write protecting the kernel text section c0008000 - c0952000
[   18.542361] rodata_test: attempting to write to read-only section:
[   18.548188] write to read-only section trapped, success
[   18.782157] systemd[1]: systemd 204 running in system mode. (+PAM +LIBWRAP +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ)
[   18.793286] systemd[1]: Running in initial RAM disk.
[   18.799523] systemd[1]: Failed to insert module 'autofs4'
[   18.804850] systemd[1]: No hostname configured.
[   18.809191] systemd[1]: Set hostname to .
[   18.835556] systemd[1]: Expecting device dev-disk-by\x2duuid-ad455a75\x2d609c\x2d4b3c\x2d956b\x2dbcef3ebc4603.device...
[   18.862264] systemd[1]: Expecting device dev-disk-by\x2duuid-6f6c069f\x2d43ae\x2d445a\x2daea2\x2d3cc2db023e3c.device...
[   18.887214] systemd[1]: Starting Timers.
[   18.902181] systemd[1]: Reached target Timers.
[   18.905192] systemd[1]: Starting Journal Socket.
[   18.922230] systemd[1]: Listening on Journal Socket.
[   18.926510] systemd[1]: Started dracut cmdline hook.
[   18.931576] systemd[1]: Starting dracut pre-udev hook...
[   18.949397] systemd[1]: Started Load Kernel Modules.
[   18.952971] systemd[1]: Starting Journal Service...
[   18.977332] systemd[1]: Started Journal Service.
[   18.983985] systemd[1]: Starting Setup Virtual Console...
[   19.003946] systemd[1]: Starting udev Kernel Socket.
[   19.022301] systemd[1]: Listening on udev Kernel Socket.
[   19.026354] systemd[1]: Starting udev Control Socket.
[   19.042305] systemd[1]: Listening on udev Control Socket.
[   19.046280] systemd[1]: Starting Sockets.
[   19.062312] systemd[1]: Reached target Sockets.
[   19.065424] systemd[1]: Starting Swap.
[   19.082261] systemd[1]: Reached target Swap.
[   19.085111] systemd[1]: Starting Local File Systems.
[   19.102223] systemd[1]: Reached target Local File Systems.
[   19.217250] systemd[1]: Started Setup Virtual Console.
[   19.292133] systemd[1]: Started dracut pre-udev hook.
[   19.295942] systemd[1]: Starting udev Kernel Device Manager...
[   19.319589] systemd-udevd[1294]: starting version 204
[   20.255694] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: (null)
[   21.429230] systemd-journald[1272]: Received SIGTERM
[   22.266117] LVM: Logical Volume autoactivation enabled.
[   22.266132] LVM: Activation generator successfully completed.
[   22.722733] systemd-readahead[2228]: Bumped block_nr parameter of 179:0 to 20480. This is a temporary hack and should be removed one day.
[   23.398215] systemd-udevd[3111]: starting version 204
[   23.419406] EXT4-fs (mmcblk0p3): re-mounted. Opts: (null)
[   23.606417] S5P ACE Driver, (c) 2010 Samsung Electronics
[   23.611522] ACE: ecb-aes-s5p-ace
[   23.613627] ACE: cbc-aes-s5p-ace
[   23.616787] ACE: ctr-aes-s5p-ace
[   23.770108] ACE: sha1-s5p-ace
[   23.774250] ACE: sha256-s5p-ace
[   23.775917] ACE driver is initialized
[   23.789664] smsc95xx v1.0.4
[   23.948092] [smsc95xx_read_mac_addr] Mac address = 9E:C9:C4:19:A1:A7
[   23.974558] 	[MAX98090] max98090_set_playback_speaker_headset(112)
[   23.979376]  max98090_set_record_path [706] param 0
[   23.988076] 	[MAX98090] max98090_set_record_main_mic(151)
[   24.001955] 	[MAX98090] max98090_set_playback_speaker_headset(112)
[   24.025656] Adding 497660k swap on /dev/mmcblk0p2.  Priority:-1 extents:1 across:497660k SS
[   24.041811] smsc95xx 1-2:1.0: eth0: register 'smsc95xx' at usb-s5p-ehci-2, smsc95xx USB 2.0 Ethernet, 9e:c9:c4:19:a1:a7
[   24.059267] usbcore: registered new interface driver smsc95xx
[   24.439797] 	[MAX98090] max98090_set_playback_speaker_headset(112)
[   24.445987]  max98090_set_record_path [706] param 0
[   24.452440] 	[MAX98090] max98090_set_record_main_mic(151)
[   26.221480] systemd-journald[2234]: File /var/log/journal/34a04c1c5880408db0dbde78a48719e2/system.journal corrupted or uncleanly shut down, renaming and replacing.
[   29.851985] ADDRCONF(NETDEV_UP): eth0: link is not ready
[   30.799721] HDMI phy power off : 1
[   30.829947] HDMI phy power off : 1
[   30.832568] HDMI phy power off : 1
[   30.836048] HDMI phy power off : 1
[   30.839637] HDMI phy power off : 1
[   30.842754] HDMI phy power off : 1
[   30.846170] HDMI phy power off : 1
[   30.849740] HDMI phy power off : 1
[   30.853118] HDMI phy power off : 1
[   30.856241] HDMI phy power off : 1
[   30.859774] HDMI phy power off : 1
[   30.863188] HDMI phy power off : 1
[   30.866388] HDMI phy power off : 1
[   30.870029] HDMI phy power off : 1
[   30.873347] HDMI phy power off : 1
[   30.876523] HDMI phy power off : 1
[   30.880134] HDMI phy power off : 1
[   30.883626] HDMI phy power off : 1
[   30.886704] HDMI phy power off : 1
[   30.890367] HDMI phy power off : 1
[   30.893773] HDMI phy power off : 1
[   30.896812] HDMI phy power off : 1
[   30.900261] HDMI phy power off : 1
[   30.903585] HDMI phy power off : 1
[   30.906937] HDMI phy power off : 1
[   30.910435] HDMI phy power off : 1
[   30.913906] HDMI phy power off : 1
[   30.917184] HDMI phy power off : 1
[   30.920449] HDMI phy power off : 1
[   30.924121] HDMI phy power off : 1
[   30.927198] HDMI phy power off : 1
[   30.930619] HDMI phy power off : 1
[   30.933980] HDMI phy power off : 1
[   30.937408] HDMI phy power off : 1
[   30.940689] HDMI phy power off : 1
[   30.944247] HDMI phy power off : 1
[   30.947603] HDMI phy power off : 1
[   30.950884] HDMI phy power off : 1
[   30.954417] HDMI phy power off : 1
[   30.957782] HDMI phy power off : 1
[   30.961019] HDMI phy power off : 1
[   30.964525] HDMI phy power off : 1
[   30.967830] HDMI phy power off : 1
[   30.971162] HDMI phy power off : 1
[   30.974669] HDMI phy power off : 1
[   30.978080] HDMI phy power off : 1
[   30.981311] HDMI phy power off : 1
[   30.984866] HDMI phy power off : 1
[   30.988297] HDMI phy power off : 1
[   30.991473] HDMI phy power off : 1
[   30.994948] HDMI phy power off : 1
[   30.998395] HDMI phy power off : 1
[   31.001622] HDMI phy power off : 1
[   31.005304] HDMI phy power off : 1
[   31.008511] HDMI phy power off : 1
[   31.011849] HDMI phy power off : 1
[   31.015352] HDMI phy power off : 1
[   31.018642] HDMI phy power off : 1
[   31.021918] HDMI phy power off : 1
[   31.025768] HDMI phy power off : 1
[   31.028801] HDMI phy power off : 1
[   31.031983] HDMI phy power off : 1
[   31.035528] HDMI phy power off : 1
[   31.038845] HDMI phy power off : 1
[   31.042342] HDMI phy power off : 1
[   31.045541] HDMI phy power off : 1
[   31.049127] HDMI phy power off : 1
[   31.052451] HDMI phy power off : 1
[   31.055809] HDMI phy power off : 1
[   31.059234] HDMI phy power off : 1
[   31.063087] HDMI phy power off : 1
[   31.065798] HDMI phy power off : 1
[   31.069342] HDMI phy power off : 1
[   31.072855] HDMI phy power off : 1
[   31.076146] HDMI phy power off : 1
[   31.079611] HDMI phy power off : 1
[   31.083701] HDMI phy power off : 1
[   31.086165] HDMI phy power off : 1
[   31.089758] HDMI phy power off : 1
[   31.093057] HDMI phy power off : 1
[   31.096299] HDMI phy power off : 1
[   31.100097] HDMI phy power off : 1
[   31.103278] HDMI phy power off : 1
[   31.106533] HDMI phy power off : 1
[   31.110067] HDMI phy power off : 1
[   31.113484] HDMI phy power off : 1
[   31.116617] HDMI phy power off : 1
[   31.120443] HDMI phy power off : 1
[   31.123554] HDMI phy power off : 1
[   31.126829] HDMI phy power off : 1
[   31.130435] HDMI phy power off : 1
[   31.133695] HDMI phy power off : 1
[   31.137021] HDMI phy power off : 1
[   31.140580] HDMI phy power off : 1
[   31.143817] HDMI phy power off : 1
[   31.147317] HDMI phy power off : 1
[   31.150415] HDMI phy power off : 1
[   31.154405] HDMI phy power off : 1
[   31.157352] HDMI phy power off : 1
[   31.160625] HDMI phy power off : 1
[   31.164263] HDMI phy power off : 1
[   31.167703] HDMI phy power off : 1
[   31.170792] HDMI phy power off : 1
[   31.174606] HDMI phy power off : 1
[   31.178004] HDMI phy power off : 1
[   31.180931] HDMI phy power off : 1
[   31.184970] HDMI phy power off : 1
[   31.190351] HDMI phy power off : 1
[   31.193189] HDMI phy power off : 1
[   31.196183] HDMI phy power off : 1
[   31.199791] HDMI phy power off : 1
[   31.203175] HDMI phy power off : 1
[   31.206445] HDMI phy power off : 1
[   31.209961] HDMI phy power off : 1
[   31.213579] HDMI phy power off : 1
[   31.216578] HDMI phy power off : 1
[   31.220068] HDMI phy power off : 1
[   31.223566] HDMI phy power off : 1
[   31.226709] HDMI phy power off : 1
[   31.230184] HDMI phy power off : 1
[   31.233677] HDMI phy power off : 1
[   31.236767] HDMI phy power off : 1
[   31.240251] HDMI phy power off : 1
[   31.243760] HDMI phy power off : 1
[   31.247009] HDMI phy power off : 1
[   31.250461] HDMI phy power off : 1
[   31.254010] HDMI phy power off : 1
[   31.257355] HDMI phy power off : 1
[   31.262624] HDMI phy power off : 1
[   31.265253] HDMI phy power off : 1
[   31.268724] HDMI phy power off : 1
[   31.271885] HDMI phy power off : 1
[   31.275290] HDMI phy power off : 1
[   31.278695] HDMI phy power off : 1
[   31.282061] HDMI phy power off : 1
[   31.286170] HDMI phy power off : 1
[   31.288907] HDMI phy power off : 1
[   31.292290] HDMI phy power off : 1
[   31.295579] HDMI phy power off : 1
[   31.299118] HDMI phy power off : 1
[   31.302437] HDMI phy power off : 1
[   31.305667] HDMI phy power off : 1
[   31.309190] HDMI phy power off : 1
[   31.312558] HDMI phy power off : 1
[   31.315890] HDMI phy power off : 1
[   31.319986] HDMI phy power off : 1
[   31.323149] HDMI phy power off : 1
[   31.326020] HDMI phy power off : 1
[   31.329778] HDMI phy power off : 1
[   31.333043] HDMI phy power off : 1
[   31.336141] HDMI phy power off : 1
[   31.339703] HDMI phy power off : 1
[   31.343294] HDMI phy power off : 1
[   31.346291] HDMI phy power off : 1
[   31.424441] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   31.429928] smsc95xx 1-2:1.0: eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
[   32.845871] touch_input_open
[   32.939530] HDMI phy power off : 1
[   33.327262] s5p-mipi-dsim s5p-mipi-dsim.1: DSI Master driver has been completed.
[   33.327274] s5p-mipi-dsim s5p-mipi-dsim.1: DSI Master state is stop state

5 Comments

Filed under Uncategorized

Use guestfish, virt tools with remote disks

New in libguestfs ≥ 1.21.30 is the ability to use guestfish and some of the virt tools with remote disks.

Currently you can use remote disks over NBD, GlusterFS, Ceph, Sheepdog and (recently upstream) SSH.

For this example I’ll use SSH because it needs no setup, although this requires absolutely the latest qemu and libguestfs (both from git).

Since we don’t have libvirt support for ssh yet, so this only works with the direct backend:

$ export LIBGUESTFS_BACKEND=direct

I can use a ssh:// URI to add disks with guestfish, guestmount and most of the virt tools. For example:

$ virt-rescue -a ssh://localhost/tmp/f17x64.img
[... lots of boot messages ...]
Welcome to virt-rescue, the libguestfs rescue shell.

Note: The contents of / are the rescue appliance.
You have to mount the guest's partitions under /sysroot
before you can examine them.

><rescue> mount /dev/vg_f17x64/lv_root /sysroot
><rescue> cat /sysroot/etc/redhat-release
Fedora release 17 (Beefy Miracle)

Apart from being a tiny bit slower, it just works as if the disk was local:

$ virt-df -a ssh://localhost/tmp/f17x64.img
Filesystem                           1K-blocks       Used  Available  Use%
f17x64.img:/dev/sda1                    487652      63738     398314   14%
f17x64.img:/dev/vg_f17x64/lv_root     28316680    4285576   22586036   16%
$ guestmount -a ssh://localhost/tmp/f17x64.img -i /tmp/mnt
$ ls /tmp/mnt
bin   dev  home  lib64       media  opt   root  sbin  sys  usr
boot  etc  lib   lost+found  mnt    proc  run   srv   tmp  var
$ cat /tmp/mnt/etc/redhat-release
Fedora release 17 (Beefy Miracle)
$ guestunmount /tmp/mnt

Leave a comment

Filed under Uncategorized

New in libguestfs (a round-up)

  1. Several APIs have been reimplemented so they don’t suffer from arbitrary protocol limits.
  2. Python bindings handle optional arguments properly now.
  3. The tar-out command has several extra (optional) arguments for choosing a range of compression types and other features.
  4. You can now use rsync to do incremental updates to / backups of your guests.
  5. ssh is included in virt-rescue
  6. virt-sysprep will now assign fresh UUIDs to your PVs and VGs

Leave a comment

Filed under Uncategorized

virt-rescue –scratch

virt-rescue is a useful “rescue tool” (like a rescue CD) for virtual machines.

New in libguestfs ≥ 1.17.36 is the virt-rescue --scratch[=N] option which lets you create scratch disks to play with.

Firstly it’s useful for playing around with Linux utilities that you might not normally get to use, such as mdadm and btrfs. For example, suppose you want to try spanning a btrfs filesystem over 4 devices. This is now simple and you don’t even need root:

$ virt-rescue --scratch=4
><rescue> mkfs.btrfs /dev/vda /dev/vdb /dev/vdc /dev/vdd
><rescue> mount /dev/vda /sysroot
><rescue> btrfs filesystem show
Label: none  uuid: da1693d6-a89f-4cb6-8405-d277869e289b
	Total devices 4 FS bytes used 28.00KB
	devid    1 size 10.00GB used 2.02GB path /dev/vda
	devid    2 size 10.00GB used 2.00GB path /dev/vdb
	devid    3 size 10.00GB used 1.01GB path /dev/vdc
	devid    4 size 10.00GB used 1.01GB path /dev/vdd

Secondly it’s a way to get a second temporary disk attached to an ordinary guest while you’re rescuing it, for example if you need to temporary copy some data off the guest while you’re fixing it.

# virt-rescue -d Fedora16 --scratch
><rescue> fdisk /dev/vdb
(use fdisk and mkfs to partition the scratch disk
and then use it for temporary data)

2 Comments

Filed under Uncategorized

Maximum qcow2 disk size

I don’t see this documented anywhere obvious, so I examined the source of qemu and performed some tests.

qemu stores the size in a 64 bit unsigned integer. However the qemu-img command line parsing code refuses to parse any number larger than 263-513 (9223372036854774784), and therefore that appears to be the largest disk size you can create:

$ qemu-img create -f qcow2 test1.img $((2**63-513))
Formatting 'test1.img', fmt=qcow2 size=9223372036854774784 encryption=off cluster_size=65536 
$ ll -h test1.img
-rw-r--r--. 1 rjones rjones 192K Oct  3 17:27 test1.img
$ guestfish -a test1.img run : blockdev-getsize64 /dev/sda
9223372036854774784

Interestingly things go horribly wrong as soon as you try to partition this:

$ virt-rescue test1.img
><rescue> parted /dev/vda print
Error: /dev/vda: unrecognised disk label                                  
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 9223372TB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
><rescue> parted /dev/vda mklabel gpt
$ # bang! back to the prompt!

https://bugs.launchpad.net/qemu/+bug/865518

Leave a comment

Filed under Uncategorized

virt-rescue — it works on blank files too

virt-rescue fires up a temporary virtual machine. You can attach any file as a virtual disk. That might be an existing virtual machine that you need to rescue. It also works on empty files, so you can partition those files as disk images:

$ truncate -s 10G test.img
$ virt-rescue -a test.img
[boot messages omitted]
Welcome to virt-rescue, the libguestfs rescue shell.

Note: The contents of / are the rescue appliance.
You have to mount the guest's partitions under /sysroot
before you can examine them.

bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
><rescue> fdisk /dev/vda

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4, default 1): 1
First sector (2048-20971519, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): 
Using default value 20971519

Command (m for help): p

Disk /dev/vda: 10.7 GB, 10737418240 bytes
16 heads, 63 sectors/track, 20805 cylinders, total 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xfc153d75

   Device Boot      Start         End      Blocks   Id  System
/dev/vda1            2048    20971519    10484736   83  Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
[   79.089501]  vda: vda1
Syncing disks.

><rescue> pvcreate /dev/vda1
  Writing physical volume data to disk "/dev/vda1"
  Physical volume "/dev/vda1" successfully created

><rescue> exit

$ file test.img
test.img: x86 boot sector; partition 1: ID=0x83, 
starthead 0, startsector 2048, 20969472 sectors,
extended partition table (last)11, code offset 0x0

If you want to automate all of this, it’s much better to use guestfish.

Leave a comment

Filed under Uncategorized

Quick tip: Display default libguestfs appliance memory size

$ guestfish get-memsize
500

(size shown in megabytes). This is useful for example when using the virt-rescue –memsize option.

Leave a comment

Filed under Uncategorized