Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 743085 - media-gfx/gimp struggles with updating the screen to reflect image changes
Summary: media-gfx/gimp struggles with updating the screen to reflect image changes
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Sergey Torokhov
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-09-17 06:22 UTC by rnddim
Modified: 2022-10-01 18:53 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description rnddim 2020-09-17 06:22:10 UTC
This is a weird issue I've been having for some time now. GIMP nowadays fails to update the screen when attempting to edit. For example, creating a new image from the clipboard will show the rectangle the image should appear in, but all you see is the transparency-indicating checkerboard. Zooming in/out or toggling layer visibility does nothing. If you draw on the image with the pencil or pen tool, then small blocks of the image, where drawing has occurred, will suddenly appear with the drawing.

Overall, GIMP has become completely unusable for editing. I have no clue why this happened; trying to downgrade various packages doesn't help, and I know for a fact that media-gfx/gimp-2.10.20 (which isn't in the tree anymore) worked throughout most of August, at least. Every version in the tree exhibits this issue (except for 2.10.18-r1, which I couldn't test due to the mypaint-brushes configuration issue).

The only thing printed to console when starting up GIMP is this:

Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x
Warning: Unknown input_id: -1 for input: surfacemap_x

Asking for verbose output reveals this has to do with some of the brushes in media-gfx/mypaint-brushes, but I don't know if this is somehow causing the issue.

Reproducible: Always




emerge --info:

Portage 3.0.6 (python 3.7.9-final-0, default/linux/amd64/17.1/desktop/plasma/systemd, gcc-10.2.0, glibc-2.32-r1, 5.8.7-gentoo x86_64)
=================================================================
System uname: Linux-5.8.7-gentoo-x86_64-AMD_Ryzen_7_3700X_8-Core_Processor-with-gentoo-2.7
KiB Mem:     8137100 total,   1113488 free
KiB Swap:   15999996 total,  14555728 free
Timestamp of repository gentoo: Sun, 13 Sep 2020 14:30:01 +0000
Head commit of repository gentoo: 437803369607d15323f4a598be771aade614ebed
Timestamp of repository kde: Sun, 13 Sep 2020 12:05:27 +0000
Head commit of repository kde: 845b6196b3243f54b4056afa7cdcb4fddb6cfce4

Timestamp of repository qt: Sat, 12 Sep 2020 17:22:52 +0000
Head commit of repository qt: a38edfa12b502eea3f918671f2449e23e826f0a6

sh bash 5.0_p18
ld GNU ld (Gentoo 2.34 p6) 2.34.0
app-shells/bash:          5.0_p18::gentoo
dev-java/java-config:     2.3.1::gentoo
dev-lang/perl:            5.30.3-r1::gentoo
dev-lang/python:          2.7.18-r3::gentoo, 3.7.9::gentoo, 3.8.5::gentoo, 3.9.0_rc1::gentoo
dev-util/cmake:           3.18.2::gentoo
sys-apps/baselayout:      2.7::gentoo
sys-apps/sandbox:         2.20::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r5::gentoo
sys-devel/automake:       1.16.2::gentoo
sys-devel/binutils:       2.34-r2::gentoo
sys-devel/gcc:            10.2.0-r1::gentoo
sys-devel/gcc-config:     2.3.2::gentoo
sys-devel/libtool:        2.4.6-r6::gentoo
sys-devel/make:           4.3::gentoo
sys-kernel/linux-headers: 5.8::gentoo (virtual/os-headers)
sys-libs/glibc:           2.32-r1::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-max-age: 24
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: 

kde
    location: /var/db/repos/kde
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/kde.git
    masters: gentoo

qt
    location: /var/db/repos/qt
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/qt.git
    masters: gentoo

testbed
    location: /var/db/repos/testbed
    masters: gentoo

crossdev
    location: /var/db/repos/crossdev
    masters: gentoo
    priority: 10

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-march=native -O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=native -O2 -pipe"
GENTOO_MIRRORS="https://gentoo.osuosl.org/ https://mirrors.rit.edu/gentoo/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j9"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi activities alsa amd64 berkdb bluetooth branding bzip2 cairo cdda cdr cli crypt cups dbus declarative dri dts dvd dvdr emboss encode exif flac fortran gdbm gif gpm gtk gui iconv icu ipv6 jpeg kde kipi kwallet lcms libglvnd libnotify libtirpc mad mng mp3 mp4 mpeg multilib ncurses nls nptl ogg opengl openmp pam pango pcre pdf phonon plasma png policykit ppds pulseaudio qml qt5 readline sdl seccomp semantic-desktop spell split-usr ssl startup-notification svg systemd tcpd tiff truetype udev udisks unicode upower usb vorbis widgets wxwidgets x264 xattr xcb xml xv xvid zlib" ABI_X86="64" ADA_TARGET="gnat_2018" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2 php7-3 php7-4" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_7" PYTHON_TARGETS="python2_7 python3_7" RUBY_TARGETS="ruby25 ruby27" USERLAND="GNU" VIDEO_CARDS="amdgpu radeonsi" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

And since this seems to be a graphical issue, here's my package.use settings that change VIDEO_CARDS:

x11-base/xorg-drivers VIDEO_CARDS: -radeonsi
x11-libs/libdrm VIDEO_CARDS: radeon

My video card is an AMD Radeon RX 5600.
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-09-17 18:21:43 UTC
This is a long-shot but wondering if it's somehow related to the recent masking (then unmasking) of USE=openmp on libmypaint.
Comment 2 Sergey Torokhov 2020-09-18 00:41:40 UTC
> my package.use settings
> that change VIDEO_CARDS:
> 
> x11-base/xorg-drivers VIDEO_CARDS: -radeonsi
> x11-libs/libdrm VIDEO_CARDS: radeon
> 
> My video card is an AMD Radeon RX 5600.

Why did you have to change VIDEO_CARDS settings for this packages?

As mentioned in 
https://wiki.gentoo.org/wiki/AMDGPU for RX 5600 VIDEO_CARDS="amdgpu radeonsi" is required. Could you please re-check also kernel configuration?

gimp-2.10.20-r1 compare to gimp-2.10.20 just allows to be configured against mypaint-brushes-2.0. You could test re-emerge gimp against mypaint-brushes-1.3. But warning messages most probably just warnings from mypaint-brushes.
Comment 3 Sergey Torokhov 2020-09-19 13:25:46 UTC
Could you also check if OpenCL option is disabled in menu "Edit - Preferences - System Resources - Hardware acceleration - Use OpenCL"?
Comment 4 rnddim 2020-09-19 14:47:25 UTC
I've tried recompiling libmypaint without openmp, and that didn't affect anything (even after recompiling GIMP, just in case). I also checked and OpenCL is disabled in preferences (which is good, since I don't have an OpenCL implementation installed at the moment).

For those special video card settings, as I recall for libdrm certain cards which need the radeonsi useflag also need the radeon useflag. My card doesn't need this, but for whatever reason the maintainers of the libdrm ebuild feel that this is one area where Gentoo users can't be trusted to figure out how to configure packages for their system, and thus require you to have that flag enabled (see bug #697552 for details).

I can't quite recall the deal with xorg-drivers, but I think that's just an issue of not installing what isn't needed; I _could_ install whatever drivers come with leaving radeonsi enabled, but my card doesn't use them.

And yes, the warnings are unrelated. Installing the older mypaint-brushes and the version of GIMP that requires them (2.10.18-r1), the warnings don't appear at all.

A couple other hints: doing the same "create image from paste" operation in Krita works just fine, and I have no apparent issues with being able to use that program. I also recently encountered a random and currently unreproduceable bug with one firefox window suddenly being incapable of updating its contents graphically, and had to restart the program (the other firefox window I had open worked fine still, though). Overall this makes me think that this is a Gtk issue if the freak firefox bug is related, or definitely a GIMP issue if not.

I don't know exactly what parts of kernel configuration you want me to check, but I'll give the needed settings on the AMDGPU page a once-over when I update my kernel just to be sure.
Comment 5 Ian Ressa 2021-09-28 00:53:01 UTC
>GIMP nowadays fails to update the screen when attempting to edit. For
>example, creating a new image from the clipboard will show the
>rectangle the image should appear in, but all you see is the
>transparency-indicating checkerboard. Zooming in/out or toggling layer
>visibility does nothing. If you draw on the image with the pencil or
>pen tool, then small blocks of the image, where drawing has occurred,
>will suddenly appear with the drawing.


I was having a near identical problem on gimp-2.10.28. I fixed the issue by clearing the GIMP ~/.config directory. I'm assuming some configuration option was deprecated and shouldn't have been preserved in an upgrade. I don't know if the problem is identical because of the difference in version and build flags, but have you tried that?
Comment 6 Michael 2022-10-01 18:53:23 UTC
(In reply to Ian Ressa from comment #5)
> >GIMP nowadays fails to update the screen when attempting to edit. For
> >example, creating a new image from the clipboard will show the
> >rectangle the image should appear in, but all you see is the
> >transparency-indicating checkerboard. Zooming in/out or toggling layer
> >visibility does nothing. If you draw on the image with the pencil or
> >pen tool, then small blocks of the image, where drawing has occurred,
> >will suddenly appear with the drawing.
> 
> 
> I was having a near identical problem on gimp-2.10.28. I fixed the issue by
> clearing the GIMP ~/.config directory. I'm assuming some configuration
> option was deprecated and shouldn't have been preserved in an upgrade. I
> don't know if the problem is identical because of the difference in version
> and build flags, but have you tried that?

Thank you so much for this, that fixed it for me also. Unfortunately I didn't have enough foresight to preserve a copy of my config directory beforehand so I can't debug which option was the root cause. If it happens again I'll save a copy and try and figure out what exactly is the cause.