Number: 59450
Category: kern
Synopsis: bwfm0 network interface stops responding (No buffer space available) on large downloads
Confidential: no
Severity: critical
Priority: medium
Responsible: kern-bug-people
State: open
Class: sw-bug
Submitter-Id: net
Arrival-Date: Sat May 31 00:35:00 +0000 2025
Originator: Cameron
Release: 10.1
Organization:
none
Environment:
NetBSD raspberrypi 10.1_STABLE NetBSD 10.1_STABLE (GENERIC) #0: Fri May 16 05:17:34 UTC 2025 mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/evbarm/compile/GENERIC evbarm
Description:
When trying to download large files (>12 MB), the Raspberry Pi 3 onboard WiFi module will stop functioning with a (No buffer space available) error, and the entire system must be restarted. I don't know if this is a problem with the driver, something in the TCP/IP stack, or some other problem, so feel free to change the category as appropriate.
How-To-Repeat:
Install NetBSD on a Raspberry Pi 3 as described here: https://wiki.netbsd.org/ports/evbarm/raspberry_pi/#index7h2
I used armv7.img.gz and decompressed it onto an SD card.
Configure networking with the onboard WiFi adapter as outlined here: https://www.netbsd.org/docs/guide/en/chap-net-practice.html#chap-net-practice-lan-setup-wlan
The interface name should be bwfm0. Do a `ping www.google.com` test to confirm that it's working.
Setup pkgin as described here: https://www.netbsd.org/docs/guide/en/chap-boot.html#chap-boot-pkgsrc (I added the PKG_PATH variable to /etc/profile so that it persists across reboots)
Attempt to install a reasonably large package (for example: `pkgin install neverball`)
After a while, the download will stall completely (for me, it seems to hang after downloading 12 MB of neverball-1.6.0nb16.tar.gz every time)
The following messages will be repeatedly *spammed* to the console and will continue for several minutes after Ctrl+C is pressed:
May 30 19:15:29 raspberrypi mDNSResponder: mDNSPlatformSendUDP got error 55 (No buffer space available) sending packet to 224.0.0.251 on interface 192.168.0.163/bwfm0/3
May 30 19:15:29 raspberrypi mDNSResponder: mDNSPlatformSendUDP got error 55 (No buffer space available) sending packet to FF02:0000:0000:0000:0000:0000:0000:00FB on interface 192.168.0.163/bwfm0/3
May 30 19:15:29 raspberrypi dhcp[569]: ps_root_recvmsg: No buffer space available
At this point the network interface is in an unusable state and will no longer function. Not even doing `ifconfig bwfm0 down; ifconfig bwfm0 up` will restore it. The only way to get it working again is to reboot.
This can also be reproduced by trying to download a very large file, for example: `curl http://xcal1.vodafone.co.uk/1GB.zip > /dev/null`
Fix: