Bug#819290: Stack trace with symbols
Yuriy M. Kaminskiy
yumkam at gmail.com
Sun Mar 27 03:01:28 BST 2016
On 27.03.2016 03:36, Kingsley G. Morse Jr. wrote:
> Hi Yuriy,
>
> OK, that all makes sense.
>
> Here's the full trace with symbols:
>
> #8 0x8017f167 in path_compare (a=<optimized out>, b=0x0) at ../src/basic/path-util.c:390
> d = <optimized out>
> __PRETTY_FUNCTION__ = "path_compare"
so, it assert() as `b == NULL`
> #9 0x8017f308 in path_equal () at ../src/basic/path-util.c:433
> No locals.
> #10 0x8010c661 in device_setup_unit (m=m at entry=0x81f377f8, dev=dev at entry=0x0, path=path at entry=0x82005aa8 "/dev/sde1", main=false) at ../src/core/device.c:324
> e = 0x82006760 "dev-sde1.device"
> sysfs = <optimized out>
> u = 0x8200bad0
> delete = <optimized out>
> r = <optimized out>
> __PRETTY_FUNCTION__ = "device_setup_unit"
> __func__ = "device_setup_unit"
and here argument `b` is sysfs, so sysfs was NULL;
and it is NULL as dev was NULL.
> #11 0x8010fbf3 in device_found_node (m=m at entry=0x81f377f8, node=0x82005aa8 "/dev/sde1", add=add at entry=true, found=DEVICE_FOUND_MOUNT, now=true) at ../src/core/device.c:830
> dev = 0x0
> st = {st_dev = 53688455864, __pad1 = 0, __st_ino = 7, st_mode = 2149927392, st_nlink = 2149927392, st_uid = 2149927392, st_gid = 3219526928, st_rdev = 13827762142796840961,
> __pad2 = 5223, st_size = -5234089312160518424, st_blksize = -1218656384, st_blocks = -5234089864091353088, st_atim = {tv_sec = 224449792, tv_nsec = -2113906008}, st_mtim = {
> tv_sec = -2113877109, tv_nsec = -2146119061}, st_ctim = {tv_sec = -2145039904, tv_nsec = -2113876944}, st_ino = 13827762864351346689}
> __PRETTY_FUNCTION__ = "device_found_node"
> __func__ = "device_found_node"
and here dev could be NULL only if stat() returned error, and that error
was ENOENT (see line 822).
Regression by commit v228-745-gac9d396. Before that commit,
device_setup_unit checked that sysfs is not NULL before calling
path_equals().
I'd guess this commit should be just reverted.
> #12 0x8010fe6c in mount_load_proc_self_mountinfo.lto_priv.530 (m=0x81f377f8, set_flags=true) at ../src/core/mount.c:1537
> device = 0x8200ccc8 "/dev/sde1"
> k = <optimized out>
> path = 0x8200cc30 "/media/usb1"
> options = 0x8200cd40 "rw,nodev,noexec,noatime,nodiratime,sync,fmask=0022,dmask=0022,codepage=437,iocharset=utf8,shortname=mixed,errors=remount-ro"
> fstype = 0x8200ccb8 "vfat"
> d = 0x82005aa8 "/dev/sde1"
> p = 0x8200eee8 "/media/usb1"
> fs = 0x8200cb98
> t = 0x81fe0e90
> i = 0x81fee988
> r = 0
> __PRETTY_FUNCTION__ = "mount_load_proc_self_mountinfo"
> __func__ = "mount_load_proc_self_mountinfo"
> #13 0x8011776c in mount_dispatch_io (source=0x81f3f848, fd=9, revents=1, userdata=0x81f377f8) at ../src/core/mount.c:1669
> around = 0x0
> gone = 0x0
> m = 0x81f377f8
> what = 0xbfe615b0 ""
> i = {idx = 0, next_key = 0x8018481d <internal_hashmap_iterate+13>}
> u = <optimized out>
> r = <optimized out>
> __PRETTY_FUNCTION__ = "mount_dispatch_io"
> __func__ = "mount_dispatch_io"
> #14 0x8011f650 in source_dispatch.lto_priv.983 (s=0x81f3f848) at ../src/libsystemd/sd-event/sd-event.c:2273
> r = <optimized out>
> __PRETTY_FUNCTION__ = "source_dispatch"
> __func__ = "source_dispatch"
> #15 0x801a83ac in sd_event_dispatch (e=0x81f37b20) at ../src/libsystemd/sd-event/sd-event.c:2625
> p = <optimized out>
> r = <optimized out>
> #16 sd_event_run (timeout=<optimized out>, e=0x81f37b20) at ../src/libsystemd/sd-event/sd-event.c:2684
> r = <optimized out>
> #17 manager_loop (m=0x81f377f8) at ../src/core/manager.c:2051
> wait_usec = <optimized out>
> r = <optimized out>
> rl = {interval = 1000000, begin = 141532531177, burst = 50000, num = 1}
> __PRETTY_FUNCTION__ = "manager_loop"
> __func__ = "manager_loop"
> #18 0x800f7626 in main (argc=1, argv=0xbfe620c4) at ../src/core/main.c:1827
> m = 0x81f377f8
> r = <optimized out>
> retval = 1
> before_startup = <optimized out>
> after_startup = <optimized out>
> timespan = "\000\000\000\000\002\216:V\000\000\000\000\000\320x\267R\231w\267\302x4\267\376\245v\267\000\320x\267\034\231w\267\000\320x\267\302x4\267<\325x\267$\031w\267\000}A\267xyA\267\001\000\000"
> fds = 0x0
> reexecute = false
> shutdown_verb = 0x0
> initrd_timestamp = <optimized out>
> userspace_timestamp = {realtime = 1458797412056566, monotonic = 67928234}
> kernel_timestamp = {realtime = <optimized out>, monotonic = 0}
> security_start_timestamp = {realtime = 1458797412107590, monotonic = 67979258}
> security_finish_timestamp = {realtime = 1458797412125352, monotonic = 67997020}
> systemd = "systemd"
> skip_setup = <optimized out>
> j = <optimized out>
> loaded_policy = false
> arm_reboot_watchdog = false
> queue_default_job = <optimized out>
> empty_etc = <optimized out>
> switch_root_dir = 0x0
> switch_root_init = 0x0
> saved_rlimit_nofile = {rlim_cur = 1024, rlim_max = 4096}
> error_message = 0x0
> __func__ = "main"
> __PRETTY_FUNCTION__ = "main"
>
> I hope that helps,
> Kingsley
>
More information about the Pkg-systemd-maintainers
mailing list