xrmx / bootchart

merge of bootchart-collector and pybootchartgui
GNU General Public License v2.0
233 stars 88 forks source link

Missing most of userspace stuff on output image #8

Closed xrmx closed 14 years ago

xrmx commented 14 years ago

With 0.12.2 on armel qemu debian sid image, bootchart.png and bootchart.log available here http://annarchy.freedesktop.org/~rm/bootchart2/

$ python /usr/lib/python2.6/site-packages/pybootchartgui/main.py No path given, trying /var/log/bootchart.tgz parsing '/var/log/bootchart.tgz' parsing 'header' parsing 'dmesg' corrupted init call for net_ns_init+0x0/0x17c corrupted init call for ptrace_break_init+0x0/0x2c corrupted init call for consistent_init+0x0/0xc8 corrupted init call for sysctl_init+0x0/0x44 corrupted init call for ksysfs_init+0x0/0xcc corrupted init call for init_jiffies_clocksource+0x0/0x1c corrupted init call for filelock_init+0x0/0x4c corrupted init call for init_script_binfmt+0x0/0x1c corrupted init call for init_elf_binfmt+0x0/0x1c corrupted init call for debugfs_init+0x0/0x64 corrupted init call for securityfs_init+0x0/0x64 corrupted init call for random32_init+0x0/0xac corrupted init call for sock_init+0x0/0x84 corrupted init call for netpoll_init+0x0/0x28 corrupted init call for netlink_proto_init+0x0/0x164 corrupted init call for bdi_class_init+0x0/0x5c corrupted init call for kobject_uevent_init+0x0/0x68 corrupted init call for pcibus_class_init+0x0/0x1c corrupted init call for pci_driver_init+0x0/0x1c corrupted init call for amba_init+0x0/0x1c corrupted init call for tty_class_init+0x0/0x3c corrupted init call for vtconsole_class_init+0x0/0xe0 corrupted init call for customize_machine+0x0/0x2c corrupted init call for init_atags_procfs+0x0/0xe4 corrupted init call for clk_init+0x0/0x38 corrupted init call for topology_init+0x0/0x30 corrupted init call for versatile_pci_init+0x0/0x20 corrupted init call for param_sysfs_init+0x0/0x1cc corrupted init call for readahead_init+0x0/0x40 corrupted init call for init_bio+0x0/0xec corrupted init call for blk_settings_init+0x0/0x4c corrupted init call for blk_ioc_init+0x0/0x48 corrupted init call for genhd_device_init+0x0/0x50 corrupted init call for fbmem_init+0x0/0xa8 corrupted init call for misc_init+0x0/0xb0 corrupted init call for serio_init+0x0/0x9c corrupted init call for input_init+0x0/0x118 corrupted init call for rtc_init+0x0/0x74 corrupted init call for hwmon_init+0x0/0x54 corrupted init call for proto_init+0x0/0x3c corrupted init call for net_dev_init+0x0/0x140 corrupted init call for neigh_init+0x0/0x8c corrupted init call for fib_rules_init+0x0/0xb8 corrupted init call for pktsched_init+0x0/0xe4 corrupted init call for tc_filter_init+0x0/0x60 corrupted init call for tc_action_init+0x0/0x60 corrupted init call for genl_init+0x0/0xf8 corrupted init call for wireless_nlevent_init+0x0/0x28 corrupted init call for sysctl_init+0x0/0x38 corrupted init call for alignment_init+0x0/0x94 corrupted init call for clocksource_done_booting+0x0/0x24 corrupted init call for init_pipe_fs+0x0/0x58 corrupted init call for init_mnt_writers+0x0/0x20 corrupted init call for eventpoll_init+0x0/0x9c corrupted init call for anon_inode_init+0x0/0x118 corrupted init call for chr_dev_init+0x0/0xa8 corrupted init call for loopback_init+0x0/0x1c corrupted init call for inet_init+0x0/0x31c corrupted init call for af_unix_init+0x0/0x60 corrupted init call for populate_rootfs+0x0/0xf0 corrupted init call for timer_init_sysfs+0x0/0x44 corrupted init call for fpe_init+0x0/0x84 corrupted init call for init_sched_debug_procfs+0x0/0x48 corrupted init call for create_proc_profile+0x0/0x78 corrupted init call for ioresources_init+0x0/0x60 corrupted init call for uid_cache_init+0x0/0x90 corrupted init call for init_posix_timers+0x0/0xc0 corrupted init call for init_posix_cpu_timers+0x0/0xe8 corrupted init call for nsproxy_cache_init+0x0/0x48 corrupted init call for timekeeping_init_device+0x0/0x38 corrupted init call for init_clocksource_sysfs+0x0/0x68 corrupted init call for init_timer_list_procfs+0x0/0x48 corrupted init call for init_tstats_procfs+0x0/0x48 corrupted init call for futex_init+0x0/0x6c corrupted init call for kallsyms_init+0x0/0x40 corrupted init call for crash_save_vmcoreinfo_init+0x0/0x394 corrupted init call for crash_notes_memory_init+0x0/0x58 corrupted init call for pid_namespaces_init+0x0/0x48 corrupted init call for audit_init+0x0/0x140 corrupted init call for relay_init+0x0/0x14 corrupted init call for utsname_sysctl_init+0x0/0x20 corrupted init call for init_per_zone_pages_min+0x0/0x50 corrupted init call for pdflush_init+0x0/0x2c corrupted init call for kswapd_init+0x0/0x20 corrupted init call for procswaps_init+0x0/0x40 corrupted init call for init_tmpfs+0x0/0xe8 corrupted init call for cpucache_init+0x0/0x1c corrupted init call for fasync_init+0x0/0x48 corrupted init call for aio_setup+0x0/0x98 corrupted init call for inotify_setup+0x0/0x20 corrupted init call for inotify_user_setup+0x0/0xec corrupted init call for dquot_init+0x0/0x13c corrupted init call for dnotify_init+0x0/0x48 corrupted init call for init_devpts_fs+0x0/0x4c corrupted init call for init_ramfs_fs+0x0/0x1c corrupted init call for ipc_init+0x0/0x2c corrupted init call for ipc_sysctl_init+0x0/0x20 corrupted init call for init_mqueue_fs+0x0/0xe4 corrupted init call for key_proc_init+0x0/0x54 corrupted init call for selinux_nf_ip_init+0x0/0xac corrupted init call for init_sel_fs+0x0/0x7c corrupted init call for selnl_init+0x0/0x6c corrupted init call for sel_netif_init+0x0/0x9c corrupted init call for sel_netnode_init+0x0/0x9c corrupted init call for sel_netport_init+0x0/0x9c corrupted init call for aurule_init+0x0/0x50 corrupted init call for crypto_algapi_init+0x0/0x18 corrupted init call for cryptomgr_init+0x0/0x1c corrupted init call for hmac_module_init+0x0/0x1c corrupted init call for md5_mod_init+0x0/0x1c corrupted init call for bsg_init+0x0/0x148 corrupted init call for noop_init+0x0/0x20 corrupted init call for as_init+0x0/0x20 corrupted init call for deadline_init+0x0/0x20 corrupted init call for cfq_init+0x0/0xd0 corrupted init call for audit_classes_init+0x0/0x64 corrupted init call for pci_init+0x0/0x40 corrupted init call for pci_proc_init+0x0/0x8c corrupted init call for fb_console_init+0x0/0x178 corrupted init call for amba_clcdfb_init+0x0/0x40 corrupted init call for rand_initialize+0x0/0x38 corrupted init call for tty_init+0x0/0x1d4 corrupted init call for pty_init+0x0/0x228 corrupted init call for pl011_init+0x0/0x54 corrupted init call for brd_init+0x0/0x1b8 corrupted init call for net_olddevs_init+0x0/0xcc corrupted init call for serport_init+0x0/0x3c corrupted init call for amba_kmi_init+0x0/0x1c corrupted init call for mousedev_init+0x0/0xa0 corrupted init call for atkbd_init+0x0/0x28 corrupted init call for pl031_init+0x0/0x1c corrupted init call for sysctl_core_init+0x0/0x1c corrupted init call for flow_cache_init+0x0/0x158 corrupted init call for llc_init+0x0/0x2c corrupted init call for llc2_init+0x0/0xd4 corrupted init call for snap_init+0x0/0x48 corrupted init call for rif_init+0x0/0xb4 corrupted init call for blackhole_module_init+0x0/0x1c corrupted init call for sysctl_ipv4_init+0x0/0x5c corrupted init call for init_syncookies+0x0/0x24 corrupted init call for ipv4_netfilter_init+0x0/0x1c corrupted init call for cubictcp_register+0x0/0x88 corrupted init call for packet_init+0x0/0x54 corrupted init call for vfp_init+0x0/0x104 corrupted init call for sched_init_debug+0x0/0x40 corrupted init call for init_oops_id+0x0/0x34 corrupted init call for disable_boot_consoles+0x0/0x5c corrupted init call for pm_qos_power_init+0x0/0x70 corrupted init call for taskstats_init+0x0/0x94 corrupted init call for random32_reseed+0x0/0x68 corrupted init call for pci_sysfs_init+0x0/0x60 corrupted init call for seqgen_init+0x0/0x1c corrupted init call for rtc_hctosys+0x0/0x144 corrupted init call for tcp_congestion_default+0x0/0x1c parsing 'cmdline2.log' parsing 'paternity.log' parsing 'proc_diskstats.log' parsing 'proc_stat.log' parsing 'taskstats.log' merged 0 logger processes pruned 11 process, 0 exploders, 0 threads, and 0 runs bootchart written to 'bootchart.png'

mmeeks commented 14 years ago

Sorry for the big delay; was at OSCON / GUADEC & so on ... I committed your nice patches - thanks for the bug fixes ;-) I also fixed the parser to like your num_cpu = 0 problem - can you attach your /proc/cpuinfo file so I can try to improve that for the future ? [ and/or a code fragment to dump that into the output .tgz would be wonderful too ;-]

The case of the missing processes though -is- slightly amazing :-) The data we get from taskstats is simply not there ... I wonder why; if you read taskstats.log - there is just nothing interesting in it ;->

How can that be ? is there some endian-ness bug in our use of netlink [ quite possibly ] - still we get some data from the collector, and a few processes. Can you make 'init_taskstats' return 0 un-conditionally in collector/collector.c and see if that gives you useful data. All looks most odd :-)

xrmx commented 14 years ago

/proc/cpuinfo available here: http://people.freedesktop.org/~rm/bootchart2/proc-cpuinfo

Can't reboot the vm right now, will check what you asked asap.

xrmx commented 14 years ago

With 'init_taskstats' returning 0 un-conditionally still have only a dozen of kernel process.

mmeeks commented 14 years ago

I am assuming this is a missing PROC_EVENTS configuration. I just added much more robust detection for that, based on Kay's advice - and pushed it to master ... if you could test that - it'd be wonderful :-)

Thanks.

xrmx commented 14 years ago

Recompiled kernel and looks like it worked, unfortunately the userspace python explodes, filing another bug.