File Upload Dialog Freezes on First Open in Browser After Reboot (Network Shares)

Hi everyone,

I’m experiencing a consistent issue on my system. After each reboot, the very first time I try to open a file dialog from my browser (FireDragon), the browser window freezes for up to a minute. Everything else is fine, Systemmonitor shows nothing. Subsequent file dialogs within the same session are fast and work correctly.

If a direct solution isn’t obvious, I would also be happy with a script or automated method I could run during startup to effectively “pre-access” the network shares and avoid the freeze later.

Just a heads-up, I’m still quite new to Linux, so please be gentle with overly technical terms or complex solutions! :slight_smile:

Context:
My Documents, Downloads, and Pictures folders are located on a network share, which is mounted automatically during system startup (configured to wait for the network). I’ve verified the shares mount correctly and relatively early in the boot process.

Troubleshooting Done:

  • I suspected the network shares initially. I rebooted, then immediately ran sudo umount -a in the terminal. Opening the file dialog in FireDragon was then instant and fast.
  • After the above test, I ran sudo mount -a and then opened the file dialog again. It was still fast.
  • This test indicates the problem is NOT that the shares aren’t mounted, but specifically a significant delay on the first access to the network shares by the file dialog after a reboot.
  • Importantly, I can open Dolphin itself and access the network shares quickly without any freeze, even immediately after booting. The issue seems specific to the browser’s interaction with the KDE file dialog.

The problem has existed for at least a few weeks, potentially since I started using this Linux setup.

Has anyone encountered similar behavior with FireDragon/Firefox and the KDE file dialog when using network shares? Any ideas on what could cause this first-access delay specifically in this interaction, or potential workarounds?

Thanks in advance for any help or insights!

╭─inu@Inux in ~
╰─λ garuda-inxi
System:
Kernel: 6.14.4-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=52c5716b-ad2b-4401-ad75-a13fc8fa0c98 rw rootflags=subvol=@
quiet loglevel=3 ibt=off
Desktop: KDE Plasma v: 6.3.4 tk: Qt v: N/A info: frameworks v: 6.13.0
wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
Type: Desktop Mobo: Micro-Star model: MAG B550 TOMAHAWK (MS-7C91) v: 2.0
serial: <superuser required> uuid: <superuser required> UEFI: American
Megatrends LLC. v: A.B0 date: 08/25/2022
CPU:
Info: model: AMD Ryzen 9 3900X bits: 64 type: MT MCP arch: Zen 2 gen: 2
level: v3 note: check built: 2020-22 process: TSMC n7 (7nm)
family: 0x17 (23) model-id: 0x71 (113) stepping: 0 microcode: 0x8701034
Topology: cpus: 1x dies: 1 clusters: 1 cores: 12 threads: 24 tpc: 2
smt: enabled cache: L1: 768 KiB desc: d-12x32 KiB; i-12x32 KiB L2: 6 MiB
desc: 12x512 KiB L3: 64 MiB desc: 4x16 MiB
Speed (MHz): avg: 4174 min/max: 550/4673 boost: enabled scaling:
driver: amd-pstate-epp governor: performance cores: 1: 4174 2: 4174 3: 4174
4: 4174 5: 4174 6: 4174 7: 4174 8: 4174 9: 4174 10: 4174 11: 4174 12: 4174
13: 4174 14: 4174 15: 4174 16: 4174 17: 4174 18: 4174 19: 4174 20: 4174
21: 4174 22: 4174 23: 4174 24: 4174 bogomips: 182418
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Graphics:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900
XTX/7900 GRE/7900M] vendor: XFX driver: amdgpu v: kernel arch: RDNA-3
code: Navi-3x process: TSMC n5 (5nm) built: 2022+ pcie: gen: 4
speed: 16 GT/s lanes: 16 ports: active: DP-1, DP-2, DP-3, HDMI-A-1
empty: Writeback-1 bus-ID: 2d:00.0 chip-ID: 1002:744c class-ID: 0300
Display: wayland server: X.org v: 1.21.1.16 with: Xwayland v: 24.1.6
compositor: kwin_wayland driver: X: loaded: amdgpu
unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
gpu: amdgpu d-rect: 13440x5400 display-ID: 0
Monitor-1: DP-1 pos: 3-1 model: Philips 27E1N1800A serial: <filter>
built: 2024 res: mode: 3840x2160 hz: 60 scale: 100% (1) dpi: 163 gamma: 1.2
size: 597x336mm (23.5x13.23") diag: 685mm (27") ratio: 16:9 modes:
max: 3840x2160 min: 720x400
Monitor-2: DP-2 pos: 2-4 model: Philips 27E1N1800A serial: <filter>
built: 2024 res: mode: 3840x2160 hz: 60 scale: 178% (1.78) to: 2160x3840
dpi: 163 gamma: 1.2 size: 597x336mm (23.5x13.23") diag: 685mm (27")
ratio: 16:9 modes: max: 3840x2160 min: 720x400
Monitor-3: DP-3 pos: 1-3 model: BE24EQK serial: <filter> built: 2021 res:
mode: 1920x1080 hz: 60 scale: 100% (1) dpi: 93 gamma: 1.2
size: 527x296mm (20.75x11.65") diag: 604mm (23.8") ratio: 16:9 modes:
max: 1920x1080 min: 720x400
Monitor-4: HDMI-A-1 pos: 3-2 model: Philips 27E1N1800A serial: <filter>
built: 2024 res: mode: 3840x2160 hz: 60 scale: 100% (1) dpi: 163 gamma: 1.2
size: 597x336mm (23.5x13.23") diag: 685mm (27") ratio: 16:9 modes:
max: 3840x2160 min: 720x400
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: swrast gbm: drv: kms_swrast surfaceless: drv: radeonsi
wayland: drv: radeonsi x11: drv: radeonsi
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 25.0.4-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 7900 XT (radeonsi
navi31 LLVM 19.1.7 DRM 3.61 6.14.4-zen1-1-zen) device-ID: 1002:744c
memory: 19.53 GiB unified: no display-ID: :1.0
API: Vulkan v: 1.4.309 layers: 13 device: 0 type: discrete-gpu name: AMD
Radeon RX 7900 XT (RADV NAVI31) driver: mesa radv v: 25.0.4-arch1.1
device-ID: 1002:744c surfaces: xcb,xlib,wayland device: 1 type: cpu
name: llvmpipe (LLVM 19.1.7 256 bits) driver: mesa llvmpipe
v: 25.0.4-arch1.1 (LLVM 19.1.7) device-ID: 10005:0000
surfaces: xcb,xlib,wayland
Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
de: kscreen-console,kscreen-doctor gpu: corectrl wl: wayland-info
x11: xdpyinfo, xprop, xrandr
Audio:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 31 HDMI/DP Audio
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 2d:00.1 chip-ID: 1002:ab30 class-ID: 0403
Device-2: Intel USB2.0 Device driver: hid-generic,snd-usb-audio,usbhid
type: USB rev: 1.1 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-6:8
chip-ID: 8087:1024 class-ID: 0300 serial: <filter>
API: ALSA v: k6.14.4-zen1-1-zen status: kernel-api with: aoss
type: oss-emulator tools: N/A
Server-1: PipeWire v: 1.4.2 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Intel Wi-Fi 6E AX210/AX1675 2x2 [Typhoon Peak] driver: iwlwifi
v: kernel pcie: gen: 2 speed: 5 GT/s lanes: 1 bus-ID: 04:00.0
chip-ID: 8086:2725 class-ID: 0280
IF: wlp4s0 state: up mac: <filter>
Device-2: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
vendor: Micro-Star MSI driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s
lanes: 1 port: e000 bus-ID: 05:00.0 chip-ID: 10ec:8168 class-ID: 0200
IF: enp5s0 state: down mac: <filter>
Device-3: Realtek RTL8125 2.5GbE vendor: Micro-Star MSI driver: r8169
v: kernel pcie: gen: 2 speed: 5 GT/s lanes: 1 port: d000 bus-ID: 2a:00.0
chip-ID: 10ec:8125 class-ID: 0200
IF: enp42s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
IF-ID-1: docker0 state: down mac: <filter>
Info: services: NetworkManager, smbd, systemd-timesyncd, wpa_supplicant
Bluetooth:
Device-1: Intel AX210 Bluetooth driver: btusb v: 0.8 type: USB rev: 2.0
speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-2.3:6 chip-ID: 8087:0032
class-ID: e001
Report: btmgmt ID: hci0 rfk-id: 0 state: down bt-service: enabled,running
rfk-block: hardware: no software: yes address: <filter> bt-v: 5.3 lmp-v: 12
status: discoverable: no pairing: no
Drives:
Local Storage: total: 3.18 TiB used: 654.74 GiB (20.1%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 980 PRO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: 3B2QGXA7 temp: 47.9 C
scheme: GPT
ID-2: /dev/sda maj-min: 8:0 vendor: SanDisk model: SSD G5 BICS4
size: 465.76 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
tech: SSD serial: <filter> fw-rev: 00WD scheme: GPT
ID-3: /dev/sdb maj-min: 8:16 vendor: Western Digital
model: WD2003FZEX-00SRLA0 size: 1.82 TiB block-size: physical: 4096 B
logical: 512 B speed: 6.0 Gb/s tech: HDD rpm: 7200 serial: <filter>
fw-rev: 1A01 scheme: MBR
Partition:
ID-1: / raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 191.72 GiB (20.6%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 608 KiB (0.2%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
ID-3: /home raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 191.72 GiB (20.6%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-4: /var/log raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 191.72 GiB (20.6%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-5: /var/tmp raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 191.72 GiB (20.6%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 62.71 GiB used: 0 KiB (0.0%) priority: 100
comp: zstd avail: lzo-rle,lzo,lz4,lz4hc,deflate,842 max-streams: 24
dev: /dev/zram0
Sensors:
System Temperatures: cpu: 58.5 C mobo: 48.5 C gpu: amdgpu temp: 56.0 C
mem: 70.0 C
Fan Speeds (rpm): N/A gpu: amdgpu fan: 589
Info:
Memory: total: 64 GiB note: est. available: 62.71 GiB used: 9.85 GiB (15.7%)
Processes: 591 Power: uptime: 36m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 25.07 GiB services: org_kde_powerdevil,upowerd
Init: systemd v: 257 default: graphical tool: systemctl
Packages: pm: pacman pkgs: 1960 libs: 549 tools: octopi,paru,yay
Compilers: clang: 19.1.7 gcc: 14.2.1 alt: 13 Shell: garuda-inxi
default: fish v: 4.0.2 running-in: konsole inxi: 3.3.38
Garuda (2.7.2-1):
System install date:     2025-02-28
Last full system update: 2025-04-30
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut
Windows dual boot:       No/Undetected
Failed units:

Hi there, I just read the beginning of your post. I didn’t read your logs etc. From the sounds of things you need to mount your share at boot, so that it is available as soon as you login.

See:

man fstab
2 Likes

If im not mistaken based on my fstab and what I see they should be mounting at boot. Here are the relevant lines from my /etc/fstab:

//FUCHSBAU/inustuf/Dokumente  /home/inu/Documents  cifs  credentials=/etc/samba-credentials,iocharset=utf8,file_mode=0775,dir_mode=0775,uid=1000,gid=1001,domain=WORKGROUP  0  0
//FUCHSBAU/inustuf/Pictures     /home/inu/Pictures     cifs  credentials=/etc/samba-credentials,iocharset=utf8,file_mode=0775,dir_mode=0775,uid=1000,gid=1001,domain=WORKGROUP  0  0
//FUCHSBAU/inustuf/Download  /home/inu/Downloads  cifs  credentials=/etc/samba-credentials,iocharset=utf8,file_mode=0775,dir_mode=0775,uid=1000,gid=1001,domain=WORKGROUP  0  0
UUID=2a388224-de3e-493a-9b5f-54759a064d86  /mnt/SteamLibrary  ext4  defaults  0  0

FUCHSBAU is my unraid server. I used to have these folders also mounted on Windows. No issues there, except it being Windows and doing random things.

Even right after booting, I can open Dolphin and access the folders mounted from FUCHSBAU instantly, with no delay or issue. For example, my wallpapers are there and are loaded with no problems.

The freeze only happens the first time I open the file dialog specifically from browser (didnt check anything else than firefox/firedragon!) after a reboot. If I then close the dialog (or wait for it to unfreeze) and open it again in the browser, it’s fast.

I might have made mistakes in my setup as I am still learning Linux, but this particular behavior is a bit annoying!

Do you have the package gvfs-smb installed?

I know it is for gnome, but I seem to remember in the far distant past when I used Samba that Firefox based browsers sometimes benefited from installing gvfs-smb with KDE. Been ages since I used Samba, I switched to using NFS probably a dozen or more years ago. Samba was way too prone to bugs and breakages for my liking.

I haven’t used Windows in ages so, I have no use for Samba. Sorry if I’m not being much help to you, but I’m super rusty on my Samba details now.

Strangely, I have at times found using a systemd mount unit worked better if NFS was acting buggy using fstab to mount my shares. You wouldn’t think the two methods would result in different behavior, but I have found that sometimes with NFS in the past.

1 Like

yes, ‘warning: gvfs-smb-1.57.2-3 is up to date’

You may want to test my method of setting up Firefox to integrate the KDE file dialogue. I’m not sure exactly how KDE Dragonized and FireDragon are pre-configured, because I use Garuda KDE Lite where it’s pretty much a DIY configuration. I suspect my setup differs from the default Garuda FireDragon configuration, but I can’t say definitively. It might be worth trying my way of configuring Firefox, as perhaps it may help with your issue.


Make sure the following packages are installed for full Firefox KDE integration:


xdg-desktop-portal-kde  

plasma-integration 

plasma-browser-integration



Enter about:config in the Firefox/FireDragon address bar, and enable the following settings:

widget.use-xdg-desktop-portal.file-picker 1

widget.use-xdg-desktop-portal.location 2

widget.use-xdg-desktop-portal.mime-handler 1

widget.use-xdg-desktop-portal.open-uri 2

widget.use-xdg-desktop-portal.settings 2

Enter about:config in the Firefox address bar, then search for:

widget.use

Create the setting “widget.use”, then change the value to “true”

Enter about:config in the Firefox address bar, then find the following value:

media.hardwaremediakeys.enabled

Set to “false”.

This disables the media entry from Firefox and only uses the one from the Plasma integration add-on.

Then reboot.



See the Arch Wiki entry:


Install the following Firefox extension:


The plasma-browser-integration package must already be installed for this extension to work.

Install the Plasma Integration extension from within Firefox/FireDragon:

Alternately, the Plasma Integration extension can also be installed from the AUR:

https://aur.archlinux.org//cgit/aur.git/snapshot/firefox-extension-plasma-integration.tar.gz



That’s how I setup my browser for Firefox/KDE integration, it may be worth a trying out with FireDragon.

3 Likes

If you are using static IP addresses in your LAN, I would also try to use these instead of “Fuchsbau” in fstab.
So
//192.xxx.xxx.xxx/inustuf/documents
You will of course need to replace the “x” with the IP addresses used in your LAN.

2 Likes

Since it was faster than the other idea, I tried that first, but it didn’t change anything.

Packages are installed.

╭─inu@Inux in ~
╰─λ pacman -Q xdg-desktop-portal-kde
pacman -Q plasma-integration
pacman -Q plasma-browser-integration
xdg-desktop-portal-kde 6.3.4-1
plasma-integration 6.3.4-2
plasma-browser-integration 6.3.4-1
widget.use-xdg-desktop-portal.mime-handler 1

was set to 2, changed it to 1, everything else was OK.

media.hardwaremediakeys.enabled

changed from true to false

Plasma Integration addon was already installed, pretty sure its out-of-box.

No difference. Only thing that changed was that FireDragon now asks me if i want it as default browser. Its still selected as default in the default applications.


Something else i just checked, Discord uses the same file upload menu, at least the icon is the same. No problems here, i click on ‘file upload’ and the dialog opens.

Installed Chrome, also same dialog, no problems, fast. I just dont want to use it :smiley:

Problem only exists in Firedragon and Firefox.
Sounds like maybe I should just find a different browser? I’m pretty sure I have seen some recommendations here.

I would search Firefox bug reports to see if you can locate something similar, perhaps there is a known fix/workaround.

3 Likes

Tried that before posting, most i could find was either a ‘suddenly works again’ or the typical ‘post died’.
Couldnt find anything to the topic sadly.