Overview

Request 998598 accepted

Depends on SR#998580

Loading...

Dominique Leuenberger's avatar

Seeing a build fail in texlive with this SR plus libpaper (which replaces the old paper package)

https://build.opensuse.org/package/live_build_log/openSUSE:Factory:Staging:I/texlive/standard/x86_64


Dr. Werner Fink's avatar

Local build is running ... from log it seems that

[  579s] FAIL: xdvipdfm-ann.test
[  579s] FAIL: xdvipdfm-bkm.test
[  579s] FAIL: xdvipdfm-ptx.test
[  579s] FAIL: xdvipdfm-psz.test
[  579s] FAIL: dvipdfmx-upjf.test
[  579s] FAIL: xdvipdfm-res.test
[  579s] FAIL: xdvipdfm-rev.test
[  579s] FAIL: xdvipdfm-ttc.test
[  579s] FAIL: xdvipdfmx.test

cause the trouble

./../../texk/dvipdfm-x/xdvipdfm-res.test: line 20: 16064 Segmentation fault      (core dumped) ./xdvipdfmx -v -z0 -o resrc2.pdf $srcdir/tests/resrc

Dr. Werner Fink's avatar
0x00007ffff7ccbbea in __strlen_sse2 () from /lib64/libc.so.6
Missing separate debuginfos, use: zypper install libpaper1-debuginfo-1.2.2-1.1.x86_64 libpng16-16-debuginfo-1.6.37-4.2.x86_64 libz1-debuginfo-1.2.11-19.5.x86_64
(gdb) bt
#0  0x00007ffff7ccbbea in __strlen_sse2 () from /lib64/libc.so.6
#1  0x00007ffff7cbb162 in strdup () from /lib64/libc.so.6
#2  0x00005555555691af in system_default () at ../../../texk/dvipdfm-x/dvipdfmx.c:822
#3  main (argc=6, argv=0x7fffffffe0f8) at ../../../texk/dvipdfm-x/dvipdfmx.c:1100
(gdb) up
#1  0x00007ffff7cbb162 in strdup () from /lib64/libc.so.6
(gdb) up
#2  0x00005555555691af in system_default () at ../../../texk/dvipdfm-x/dvipdfmx.c:822
822       if (systempapername() != NULL) {

That looks like an API change from libpaper 1.1 to libpaper 1.2

... or a bug in libpaper 1.2

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7ccbbea in __strlen_sse2 () from /lib64/libc.so.6
Missing separate debuginfos, use: zypper install libpng16-16-debuginfo-1.6.37-4.2.x86_64 libz1-debuginfo-1.2.11-19.5.x86_64
(gdb) bt
#0  0x00007ffff7ccbbea in __strlen_sse2 () from /lib64/libc.so.6
#1  0x00007ffff7cbb162 in strdup () from /lib64/libc.so.6
#2  0x00007ffff7f2c025 in systempapername () at /usr/src/debug/libpaper-1.2.2-1.1.x86_64/lib/libpaper.c:319
#3  0x00005555555691af in system_default () at ../../../texk/dvipdfm-x/dvipdfmx.c:822
#4  main (argc=6, argv=0x7fffffffe0f8) at ../../../texk/dvipdfm-x/dvipdfmx.c:1100
(gdb) up
#1  0x00007ffff7cbb162 in strdup () from /lib64/libc.so.6
(gdb) 
#2  0x00007ffff7f2c025 in systempapername () at /usr/src/debug/libpaper-1.2.2-1.1.x86_64/lib/libpaper.c:319
319         return strdup(defaultpapername());

Dr. Werner Fink's avatar

Still there is something missing

xdvipdfmx:fatal: Unrecognized paper format: a4

Indeed

noether:tmp # paper --help
Usage: (null) [OPTION...] [PAPER...|--all]

Print paper size information.

  --all             show information about all known paper sizes
  --no-size         do not show paper sizes (width followed by height)
  --unit UNIT       unit in which to show sizes [pt, mm, in; default: natural units]
  --help            display this help message and exit
  --version         display version information and exit

Report bugs at https://github.com/rrthomas/paper
noether:tmp # paper --all
(null): no default paper size is set

The git URL is also wrong https://github.com/rrthomas/paper ...


Dr. Werner Fink's avatar
noether:tmp # strace paper --all |& grep /etc/
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/etc/paperspecs", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/papersize", O_RDONLY) = -1 ENOENT (No such file or directory)

IMHO the libpaper1 package should include a /etc/paperspecs

Yep ... with this texlive builds

make[5]: Leaving directory '/home/abuild/rpmbuild/BUILD/texlive/world/texk/texlive'
make[4]: Leaving directory '/home/abuild/rpmbuild/BUILD/texlive/world/texk/texlive'
make[3]: Leaving directory '/home/abuild/rpmbuild/BUILD/texlive/world/texk/texlive'
make[2]: Leaving directory '/home/abuild/rpmbuild/BUILD/texlive/world/texk'
make[1]: Leaving directory '/home/abuild/rpmbuild/BUILD/texlive/world'
top-level make world done.

Dr. Werner Fink's avatar

Something goes still wrong ... running xdvipdfx local in build environment works whereas build still breaks with SIGSEGV ... I've no clue what is going woring here


Dr. Werner Fink's avatar

In build environment XDG_CONFIG_HOME is not set

#2  0x000014e60e3c5d62 in paperinit () at /usr/src/debug/libpaper-1.2.2-13.1.x86_64/lib/libpaper.c:377
377             xdg_config_home = mfile_name_concat(home, ".config", NULL);
(gdb) print xdg_config_home
$1 = 0x0
(gdb) list
372         /* Read user paperspecs. */
373         xdg_config_home = getenv("XDG_CONFIG_HOME");
374         if (xdg_config_home == NULL) {
375             char *home = getenv("HOME");
376             free_xdg_config_home = true;
377             xdg_config_home = mfile_name_concat(home, ".config", NULL);
378             if (xdg_config_home == NULL)
379                 return PAPER_NOMEM;
380         }
381         char *user_paperspecs = mfile_name_concat(xdg_config_home, PAPERSPECS_FILENAME, NULL);

no idea what mfile_name_concat() does ... ah ... yes HOME is also NOT set

(gdb) list
45         If malloc fails, return NULL with errno set.  */
46
47      char *
48      mfile_name_concat (char const *dir, char const *base, char **base_in_result)
49      {
50        char const *dirbase = last_component (dir);
51        size_t dirbaselen = base_len (dirbase);
52        size_t dirlen = dirbase - dir + dirbaselen;
53        size_t baselen = strlen (base);
54        char sep = '\0';
(gdb) print dir

Dr. Werner Fink's avatar

I have found an other bug in libpaper 1.2.2 ... if one calls paperconfig(1) (aka /sbin/paperconfig) then

noether:/ # paperconfig 
/sbin/paperconfig: line 145: exec: : not found

happens ... I've two pull requests open for upstream to fix this and the former problem

https://github.com/rrthomas/libpaper/pull/26
https://github.com/rrthomas/libpaper/pull/25
Request History
Dr. Werner Fink's avatar

WernerFink created request

Depends on SR#998580


Dominique Leuenberger's avatar

dimstar_suse set openSUSE:Factory:Staging:F as a staging project

Being evaluated by staging project "openSUSE:Factory:Staging:F"


Dominique Leuenberger's avatar

dimstar_suse accepted review

Picked "openSUSE:Factory:Staging:F"


Factory Auto's avatar

factory-auto added opensuse-review-team as a reviewer

Please review sources


Factory Auto's avatar

factory-auto accepted review

Check script succeeded


Saul Goodman's avatar

licensedigger accepted review

ok


Dominique Leuenberger's avatar

dimstar accepted review


Dominique Leuenberger's avatar

dimstar_suse added factory-staging as a reviewer

Being evaluated by group "factory-staging"


Dominique Leuenberger's avatar

dimstar_suse accepted review

Unstaged from project "openSUSE:Factory:Staging:F"


Dominique Leuenberger's avatar

dimstar_suse set openSUSE:Factory:Staging:I as a staging project

Being evaluated by staging project "openSUSE:Factory:Staging:I"


Dominique Leuenberger's avatar

dimstar_suse accepted review

Picked "openSUSE:Factory:Staging:I"


Dominique Leuenberger's avatar

dimstar_suse accepted review

Staging Project openSUSE:Factory:Staging:I got accepted.


Dominique Leuenberger's avatar

dimstar_suse approved review

Staging Project openSUSE:Factory:Staging:I got accepted.


Dominique Leuenberger's avatar

dimstar_suse accepted request

Staging Project openSUSE:Factory:Staging:I got accepted.

openSUSE Build Service is sponsored by