This leak has been around for several kernel versions (at least 3.x) 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 [12470.068443] ------------[ cut here ]------------ [12470.068464] WARNING: at drivers/net/wireless/ath/ath9k/htc_drv_txrx.c:501 ath9k_htc_tx_process+0x39f/0x3b0 [ath9k_htc]() [12470.068472] Hardware name: GA-MA790GP-DS4H [12470.068477] Modules linked in: it87 hwmon_vid snd_hda_codec_hdmi ath9k_htc ath9k_common ath9k_hw ath snd_hda_codec_realtek mac80211 radeoe [12470.068538] Pid: 4509, comm: sh Not tainted 3.3.1-gentoo #1 [12470.068544] Call Trace: [12470.068548] <IRQ> [<ffffffff8103866a>] warn_slowpath_common+0x7a/0xb0 [12470.068569] [<ffffffff810386b5>] warn_slowpath_null+0x15/0x20 [12470.068581] [<ffffffffa00a792f>] ath9k_htc_tx_process+0x39f/0x3b0 [ath9k_htc] [12470.068594] [<ffffffffa00a7733>] ? ath9k_htc_tx_process+0x1a3/0x3b0 [ath9k_htc] [12470.068608] [<ffffffffa00a813e>] ath9k_htc_txstatus+0x3e/0x150 [ath9k_htc] [12470.068620] [<ffffffffa00a6cf5>] ath9k_wmi_event_tasklet+0x145/0x170 [ath9k_htc] [12470.068629] [<ffffffff8103f334>] tasklet_action+0x64/0x110 [12470.068637] [<ffffffff8103fa35>] __do_softirq+0xa5/0x1c0 [12470.068648] [<ffffffff8163cba6>] ? _raw_spin_unlock+0x26/0x30 [12470.068657] [<ffffffff8164639c>] call_softirq+0x1c/0x30 [12470.068667] [<ffffffff81004515>] do_softirq+0x65/0xa0 [12470.068674] [<ffffffff8103fd95>] irq_exit+0x65/0x70 [12470.068682] [<ffffffff81004021>] do_IRQ+0x61/0xe0 [12470.068689] [<ffffffff8163d12e>] common_interrupt+0x6e/0x6e [12470.068694] <EOI> [<ffffffff8136241c>] ? extract_entropy+0x7c/0xa0 [12470.068713] [<ffffffff81311f3c>] ? __strnlen_user+0x4c/0x50 [12470.068721] [<ffffffff81311fbc>] strnlen_user+0x2c/0x40 [12470.068730] [<ffffffff8119b359>] load_elf_binary+0x10f9/0x19e0 [12470.068741] [<ffffffff8114f1ed>] search_binary_handler+0x12d/0x390 [12470.068749] [<ffffffff8114f10d>] ? search_binary_handler+0x4d/0x390 [12470.068757] [<ffffffff8119a260>] ? elf_map+0x1c0/0x1c0 [12470.068766] [<ffffffff8114fedc>] do_execve_common.clone.26+0x3ac/0x460 [12470.068774] [<ffffffff8114fc52>] ? do_execve_common.clone.26+0x122/0x460 [12470.068782] [<ffffffff8114ffa6>] do_execve+0x16/0x20 [12470.068791] [<ffffffff8100b525>] sys_execve+0x45/0x70 [12470.068800] [<ffffffff8164534c>] stub_execve+0x6c/0xc0 [12470.068807] ---[ end trace 26da0132f4091647 ]--- Reproducible: Always Actual Results: Linux penguin4 3.3.1-gentoo #1 SMP Wed Apr 4 22:06:03 EDT 2012 x86_64 AMD Phenom(tm) II X4 B50 Processor AuthenticAMD GNU/Linux
This seems to occur after resuming from sleep state. david@penguin4 ~ $ emerge --info gentoo-sources Portage 2.1.10.56 (default/linux/amd64/10.0/desktop/gnome, gcc-4.5.3, glibc-2.14.1-r2, 3.3.1-gentoo x86_64) ================================================================= System Settings ================================================================= System uname: Linux-3.3.1-gentoo-x86_64-AMD_Phenom-tm-_II_X4_B50_Processor-with-gentoo-2.1 Timestamp of tree: Sun, 15 Apr 2012 02:45:01 +0000 app-shells/bash: 4.2_p24 dev-lang/python: 2.7.3, 3.2.2-r1 dev-util/cmake: 2.8.7-r5 dev-util/pkgconfig: 0.26 sys-apps/baselayout: 2.1 sys-apps/openrc: 0.9.9.3 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.13, 2.68 sys-devel/automake: 1.10.3, 1.11.5 sys-devel/binutils: 2.22-r1 sys-devel/gcc: 4.5.3-r2 sys-devel/gcc-config: 1.6 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r3 sys-kernel/linux-headers: 3.3 (virtual/os-headers) sys-libs/glibc: 2.14.1-r2 Repositories: gentoo location: /usr/portage sync: rsync://rsync26.us.gentoo.org/gentoo-portage priority: -1000 x-local-overlay location: /home/david/local-overlay masters: gentoo priority: 0 ABI="amd64" ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" ACCEPT_PROPERTIES="*" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw " APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile " ARCH="amd64" AUTOCLEAN="yes" BOOTSTRAP_USE="cxx unicode multilib" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -ggdb -D_FORTIFY_SOURCE=2 -mtune=amdfam10" CFLAGS_amd64="-m64" CFLAGS_x32="-mx32" CFLAGS_x86="-m32" CHOST="x86_64-pc-linux-gnu" CHOST_amd64="x86_64-pc-linux-gnu" CHOST_x32="x86_64-pc-linux-gnu" CHOST_x86="i686-pc-linux-gnu" CLEAN_DELAY="5" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" COLLISION_IGNORE="/lib/modules" COLORTERM="gnome-terminal" CONFIG_PROTECT="/etc /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-rebuil" CVS_RSH="ssh" CXXFLAGS="-march=native -O2 -ggdb -D_FORTIFY_SOURCE=2 -mtune=amdfam10" DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-zOyZUIOC2K,guid=26793bbe29c1cd7d21777d8a0000015b" DEFAULT_ABI="amd64" DESKTOP_SESSION="gnome" DISPLAY=":0" DISTDIR="/usr/portage/distfiles" EDITOR="/bin/nano" ELIBC="glibc" EMERGE_DEFAULT_OPTS=" -q --verbose --newuse --deep" EMERGE_WARNING_DELAY="10" EPREFIX="" EROOT="/" FCFLAGS="-march=native -O2 -ggdb -D_FORTIFY_SOURCE=2 -mtune=amdfam10" FEATURES="assume-digests binpkg-logs distlocks ebuild-locks fixlafiles multilib-strict news parallel-fetch protect-owned sandbox sfperms spl" FETCHCOMMAND="/usr/bin/wget -t 3 -T 60 --passive-ftp --timeout=15 -O "${DISTDIR}/${FILE}" "${URI}"" FETCHCOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}"" FETCHCOMMAND_SFTP="bash -c "x=\${2#sftp://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ;" FETCHCOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; e" FFLAGS="-march=native -O2 -ggdb -D_FORTIFY_SOURCE=2 -mtune=amdfam10" GCC_SPECS="" GDK_USE_XFT="1" GDMSESSION="gnome" GENTOO_MIRRORS="http://www.gtlib.gatech.edu/pub/gentoo" GJS_DEBUG_OUTPUT="stderr" GJS_DEBUG_TOPICS="JS ERROR;JS LOG" GNOME_DESKTOP_SESSION_ID="this-is-deprecated" GNOME_KEYRING_CONTROL="/tmp/keyring-jfuKgS" GNOME_KEYRING_PID="2640" GPG_AGENT_INFO="/tmp/keyring-jfuKgS/gpg:0:1" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore " GRUB_PLATFORMS="" GSETTINGS_BACKEND="dconf" GUILE_LOAD_PATH="/usr/share/guile/1.8" HG="/usr/bin/hg" HOME="/home/david" INFOPATH="/usr/share/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.22/info:/usr/sha" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LANG="en_US.UTF-8" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LDFLAGS_amd64="-m elf_x86_64" LDFLAGS_x32="-m elf32_x86_64" LDFLAGS_x86="-m elf_i386" LESS="-R -M --shift 5" LESSOPEN="|lesspipe %s" LIBDIR_amd64="lib64" LIBDIR_amd64_fbsd="lib64" LIBDIR_n32="lib32" LIBDIR_n64="lib64" LIBDIR_o32="lib" LIBDIR_ppc="lib32" LIBDIR_ppc64="lib64" LIBDIR_s390="lib32" LIBDIR_s390x="lib64" LIBDIR_sparc32="lib32" LIBDIR_sparc64="lib64" LIBDIR_x32="libx32" LIBDIR_x86="lib32" LIBDIR_x86_fbsd="lib32" LINGUAS="en en_US en_GB" LOGNAME="david" LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:c" MAKEOPTS="-j5 --load-average" MANPATH="/usr/local/share/man:/usr/share/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/" MULTILIB_ABIS="amd64 x86" MULTILIB_STRICT_DENY="64-bit.*shared object" MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X1" MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage|udev)" NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OPENGL_PROFILE="xorg-x11" PAGER="/usr/bin/less" PATH="/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3:/usr/games/bin" PHP_TARGETS="php5-3" PKGDIR="/usr/portage/packages" PORTAGE_ARCHLIST="ppc sparc64-freebsd ppc-openbsd x86-openbsd ppc64 x86-winnt x86-fbsd ppc-aix alpha arm x86-freebsd s390 amd64 arm-linux x8" PORTAGE_BINHOST_CHUNKSIZE="3000" PORTAGE_BIN_PATH="/usr/lib64/portage/bin" PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png" PORTAGE_CONFIGROOT="/" PORTAGE_DEBUG="0" PORTAGE_DEPCACHEDIR="/var/cache/edb/dep" PORTAGE_ELOG_CLASSES="warn info error log qa" PORTAGE_ELOG_MAILFROM="portage@localhost" PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}" PORTAGE_ELOG_MAILURI="root@localhost localhost" PORTAGE_ELOG_SYSTEM="mail:warn,error syslog:* save save_summary" PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5" PORTAGE_FETCH_RESUME_MIN_SIZE="350K" PORTAGE_GID="250" PORTAGE_GPG_SIGNING_COMMAND="gpg --sign --clearsign --yes --default-key "${PORTAGE_GPG_KEY}" --homedir "${PORTAGE_GPG_DIR}" "${FILE}"" PORTAGE_INST_GID="0" PORTAGE_INST_UID="0" PORTAGE_IONICE_COMMAND="ionice -c 3 -p ${PID}" PORTAGE_NICENESS="3" PORTAGE_OVERRIDE_EPREFIX="" PORTAGE_PYM_PATH="/usr/lib64/portage/pym" PORTAGE_QUIET="1" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --tim" PORTAGE_RSYNC_RETRIES="-1" PORTAGE_SYNC_STALE="30" PORTAGE_TMPDIR="/var/tmp" PORTAGE_VERBOSE="1" PORTAGE_WORKDIR_MODE="0700" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/home/david/local-overlay" PORT_LOGDIR="/var/log/portage" PORT_LOGDIR_CLEAN="find "${PORT_LOGDIR}" -type f ! -name "summary.log*" -mtime +7 -delete" PRELINK_PATH_MASK="/usr/lib64/libfreebl3.so:/usr/lib64/libnssdbm3.so:/usr/lib64/libsoftokn3.so" PROFILE_ONLY_VARIABLES="ARCH ELIBC KERNEL USERLAND" PWD="/home/david" PYTHONDONTWRITEBYTECODE="1" QT_GRAPHICSSYSTEM="raster" RESUMECOMMAND="/usr/bin/wget -c -t 3 -T 60 --passive-ftp --timeout=30 -O "${DISTDIR}/${FILE}" "${URI}"" RESUMECOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}"" RESUMECOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; " ROOT="/" ROOTPATH="/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3" RPMDIR="/usr/portage/rpm" RUBYOPT="-rauto_gem" RUBY_TARGETS="ruby18 ree18" SESSION_MANAGER="local/penguin4:@/tmp/.ICE-unix/2661,unix/penguin4:/tmp/.ICE-unix/2661" SHELL="/bin/bash" SHLVL="1" SSH_AGENT_PID="2683" SSH_AUTH_SOCK="/tmp/keyring-jfuKgS/ssh" SYMLINK_LIB="yes" SYNC="rsync://rsync26.us.gentoo.org/gentoo-portage" TERM="xterm" USE="X a52 aac acl acpi aim alsa amd64 berkdb bluetooth branding bzip2 cairo caps cdda cdr cli colord consolekit cracklib crypt cups cxx dbu" USER="david" USERLAND="GNU" USERNAME="david" USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CALLIGRA_FEATURES CAMERAS COLLECTD_PLUGINS CROSSCOMPILE_OPTS CURL_SSL D" USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND" USE_ORDER="env:pkg:conf:defaults:pkginternal:repo:env.d" VIDEO_CARDS="radeon r300 r600" WINDOWID="31496939" WINDOWPATH="7" XAUTHORITY="/var/run/gdm/auth-for-david-quOe1N/database" XDG_CONFIG_DIRS="/etc/xdg" XDG_DATA_DIRS="/usr/local/share:/usr/share:/usr/share/gdm" XDG_MENU_PREFIX="gnome-" XDG_SESSION_COOKIE="8a665d47e8062fb1b22714f200000009-1334270209.822392-1541087240" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ip" _="/usr/bin/emerge" ================================================================= Package Settings ================================================================= sys-kernel/gentoo-sources-3.3.1 was built with the following: USE="(multilib) -build -deblob -symlink"
investigating the above I found that CONFIG_USB_SUSPEND was not set. I set that and enabled some further debugging in the kernel section and then recompiled. echo clear > /sys/kernel/debug/kmemleak rebooted. the kememleak scan ran at boot time but the above file was empty. Did some surfing and played a youtube video recheck /sys/kernel/debug/kmemleak I will act the file and send as an attachment the following trace is cut from dmesg as is the original report [ 860.653011] ------------[ cut here ]------------ [ 860.653033] WARNING: at drivers/net/wireless/ath/ath9k/htc_drv_txrx.c:501 ath9k_htc_tx_process+0x31e/0x330 [ath9k_htc]() [ 860.653040] Hardware name: GA-MA790GP-DS4H [ 860.653044] Modules linked in: it87 hwmon_vid ath9k_htc ath9k_common ath9k_hw ath mac80211 cfg80211 snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_intel snd_hda_codec snd_hwdep snd_pcm radeon drm_kms_helper ttm snd_page_alloc cfbfillrect cfbimgblt cfbcopyarea snd_timer firewire_ohci firewire_core k10temp crc_itu_t snd soundcore [ 860.653092] Pid: 19, comm: ksoftirqd/3 Not tainted 3.3.1-gentoo #3 [ 860.653098] Call Trace: [ 860.653111] [<ffffffff8103814a>] warn_slowpath_common+0x7a/0xb0 [ 860.653121] [<ffffffff81038195>] warn_slowpath_null+0x15/0x20 [ 860.653134] [<ffffffffa02df72e>] ath9k_htc_tx_process+0x31e/0x330 [ath9k_htc] [ 860.653146] [<ffffffffa02df100>] ? ath9k_htc_tx_get_packet+0x90/0x1a0 [ath9k_htc] [ 860.653159] [<ffffffffa02dfefe>] ath9k_htc_txstatus+0x3e/0x150 [ath9k_htc] [ 860.653170] [<ffffffffa02debad>] ath9k_wmi_event_tasklet+0x13d/0x170 [ath9k_htc] [ 860.653180] [<ffffffff8103eae8>] tasklet_action+0x68/0x110 [ 860.653187] [<ffffffff8103f1d0>] __do_softirq+0xa0/0x1b0 [ 860.653195] [<ffffffff8103f39a>] run_ksoftirqd+0xba/0x170 [ 860.653202] [<ffffffff8103f2e0>] ? __do_softirq+0x1b0/0x1b0 [ 860.653210] [<ffffffff8105bfa6>] kthread+0x96/0xa0 [ 860.653221] [<ffffffff816402a4>] kernel_thread_helper+0x4/0x10 [ 860.653229] [<ffffffff8105bf10>] ? flush_kthread_worker+0xb0/0xb0 [ 860.653238] [<ffffffff816402a0>] ? gs_change+0x13/0x13 [ 860.653243] ---[ end trace 87f828e8ead86104 ]--- Noticing above mentions wmi and have read that it is recommended to disable that when running virtuals. I don't currently have virtuals on the box but did enable support in kernel. Will disable wmi, update to 3.3.2 and rebuild a new kernel
Created attachment 309477 [details] cat kmemleak > kmemleak-ouput
I ran cppcheck against the /ath/* in /usr/src/linux/drivers/net/wireless (this is still gentoo-sources 3.3.1 "Checking ath9k/mci.c... [ath9k/mci.c:72]: (error) Memory leak: entry" the code section would be ----snip--- { struct ath_mci_profile_info *entry; if ((mci->num_sco == ATH_MCI_MAX_SCO_PROFILE) && (info->type == MCI_GPM_COEX_PROFILE_VOICE)) { ath_dbg(common, MCI, "Too many SCO profile, failed to add new profile\n"); return false; } if (((NUM_PROF(mci) - mci->num_sco) == ATH_MCI_MAX_ACL_PROFILE) && (info->type != MCI_GPM_COEX_PROFILE_VOICE)) { ath_dbg(common, MCI, "Too many ACL profile, failed to add new profile\n"); return false; } entry = ath_mci_find_profile(mci, info); if (entry) memcpy(entry, info, 10); else { entry = kzalloc(sizeof(*entry), GFP_KERNEL); if (!entry) return false; memcpy(entry, info, 10); INC_PROF(mci, info); list_add_tail(&info->list, &mci->info); } return true; } ---/snip---- I changed my mind about turning off wmi thinking it might be better to turn off virtualization support instead. Will do this when I move to 3.3.2 this evening, Hope the above is useful.
Created attachment 309743 [details] kernel trace from 3.3.2 with paravirtualsation not set in kernel config
Created attachment 310309 [details] kernel trace from 3.3.3
Created attachment 310311 [details] lspci-vvvvvvxxx Adding this after reading requests for such on ath9k.org mailing list command was #lspci -vvvvvvxxx
Possibly the same issue on https://bugzilla.kernel.org/show_bug.cgi?id=42583
This bug still exists afaik and the link in Comment #8 verifies since the error message is so similar. I have had two of these Atheros USB wifi devices. The first I obtained was a refurb purchased thru ebay. It lasted about 90 days. the secod was a brand new one purchased at HHGreg locally. It has now died after lasting less than a year. If I could find my receipt I would try to get another. As is I do not have a working device anymore. Both were Netgear WNA 1100. Closing resolved needinfo since the device no longer is dead. Another user may wish to re-open and pursue if they have the inclination or hardware