@iacobs: I tried your package on Arch Linux (kernel 4.4.1-2-ARCH), but when I plug in an SD card, I get the following errors in dmesg: [ 434.301513] au6601-pci 0000:02:00.0: AU6601 controller found [1aea:6601] (rev 0) [ 434.301607] au6601-pci 0000:02:00.0: enabling device (0004 -> 0006) [ 434.441333] mmc0: host does not support reading read-only switch, assuming write-enable [ 439.447768] au6601-pci 0000:02:00.0: Got data interrupt 0x00100000 even though no data operation was in progress. [ 439.447805] BUG: unable to handle kernel NULL pointer dereference at 0000000000000020 [ 439.449050] IP: [] au6601_irq+0x2a6/0x370 [au6601_pci] [ 439.449999] PGD 307940067 PUD 307d48067 PMD 0 [ 439.450928] Oops: 0002 [#1] PREEMPT SMP [ 439.451847] Modules linked in: au6601_pci(O) xt_conntrack ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 xt_addrtype iptable_filter nf_nat nf_conntrack br_netfilter bridge stp llc sha256_ssse3 sha256_generic hmac drbg ansi_cprng ctr ccm als(O) cmac ecb rfcomm dm_thin_pool dm_persistent_data dm_bio_prison dm_bufio libcrc32c loop bnep snd_hda_codec_hdmi joydev mousedev nls_iso8859_1 nls_cp437 vfat fat arc4 snd_hda_codec_conexant snd_hda_codec_generic asus_nb_wmi asus_wmi sparse_keymap iTCO_wdt iTCO_vendor_support uvcvideo intel_rapl x86_pkg_temp_thermal intel_powerclamp coretemp videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 btusb kvm_intel videobuf2_core btrtl v4l2_common btbcm kvm btintel videodev bluetooth media irqbypass crct10dif_pclmul iwlmvm [ 439.455154] crc32_pclmul cdc_acm aesni_intel mac80211 aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd evdev input_leds iwlwifi mac_hid pcspkr psmouse serio_raw cfg80211 i2c_i801 thermal rfkill i915 wmi snd_soc_rt5640 dell_smo8800 snd_soc_rl6231 snd_soc_core battery drm_kms_helper snd_hda_intel i2c_hid elan_i2c snd_compress snd_hda_codec dw_dmac snd_pcm_dmaengine hid drm ac97_bus dw_dmac_core snd_hda_core video intel_gtt snd_hwdep int3402_thermal i2c_designware_platform snd_soc_sst_acpi gpio_lynxpoint syscopyarea 8250_dw e1000e spi_pxa2xx_platform ac snd_pcm i2c_designware_core fjes sysfillrect processor_thermal_device sysimgblt snd_timer int340x_thermal_zone fb_sys_fops snd int3400_thermal intel_soc_dts_iosf i2c_algo_bit acpi_thermal_rel iosf_mbi soundcore ptp tpm_tis mei_me pps_core tpm [ 439.458822] button mei lpc_ich shpchp processor sch_fq_codel pci_stub vboxpci(O) vboxnetflt(O) vboxnetadp(O) vboxdrv(O) ip_tables x_tables ext4 crc16 mbcache jbd2 dm_mod uas usb_storage sd_mod atkbd libps2 crc32c_intel ahci libahci ehci_pci ehci_hcd libata xhci_pci xhci_hcd scsi_mod usbcore usb_common i8042 serio sdhci_acpi sdhci led_class mmc_core [ 439.462679] CPU: 2 PID: 5277 Comm: irq/17-au6601 h Tainted: G O 4.4.1-2-ARCH #1 [ 439.463983] Hardware name: ASUSTeK COMPUTER INC. BU201LA/BU201LA, BIOS BU201LA.204 08/12/2014 [ 439.465299] task: ffff88001edf0000 ti: ffff88018f3a0000 task.ti: ffff88018f3a0000 [ 439.466629] RIP: 0010:[] [] au6601_irq+0x2a6/0x370 [au6601_pci] [ 439.467966] RSP: 0018:ffff88018f3a3e00 EFLAGS: 00010206 [ 439.469302] RAX: 0000000000000000 RBX: 0000000001108000 RCX: 0000000000000000 [ 439.470644] RDX: ffff88031df103d8 RSI: ffff88031df0db78 RDI: ffff8801ac06a540 [ 439.471999] RBP: ffff88018f3a3e20 R08: 000000000000000a R09: 000000000000036f [ 439.473346] R10: 0000000000011888 R11: 000000000000036f R12: ffff8801ac06a540 [ 439.474857] R13: ffff8801ac06a590 R14: 0000000000100000 R15: ffffffff810cf870 [ 439.476908] FS: 0000000000000000(0000) GS:ffff88031df00000(0000) knlGS:0000000000000000 [ 439.478344] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 439.479736] CR2: 0000000000000020 CR3: 0000000308b82000 CR4: 00000000001406e0 [ 439.481115] Stack: [ 439.482489] ffff8801979f8380 ffff88030ee71a00 ffff88030ee71a00 ffff88001edf0000 [ 439.483918] ffff88018f3a3e48 ffffffff810cf890 ffff88018f3a3e48 ffff88001edf0000 [ 439.485309] ffff8801979f8380 ffff88018f3a3ec0 ffffffff810cfb78 ffff88018f3a3ea8 [ 439.486694] Call Trace: [ 439.488115] [] irq_thread_fn+0x20/0x50 [ 439.489513] [] irq_thread+0x138/0x1b0 [ 439.490906] [] ? wake_threads_waitq+0x30/0x30 [ 439.492310] [] ? irq_thread_dtor+0xb0/0xb0 [ 439.493708] [] kthread+0xd8/0xf0 [ 439.495111] [] ? kthread_worker_fn+0x170/0x170 [ 439.496516] [] ret_from_fork+0x3f/0x70 [ 439.497921] [] ? kthread_worker_fn+0x170/0x170 [ 439.499333] Code: fe ff ff 49 8b 7c 24 08 44 89 f2 48 c7 c6 68 96 bd a0 e8 ce f4 80 e0 f7 c3 00 00 70 00 0f 84 90 fe ff ff 49 8b 44 24 38 4c 89 e7 40 20 92 ff ff ff e8 1e f5 ff ff e9 77 fe ff ff 49 8b 74 24 [ 439.500887] RIP [] au6601_irq+0x2a6/0x370 [au6601_pci] [ 439.502382] RSP [ 439.503864] CR2: 0000000000000020 [ 439.513060] ---[ end trace 870e3ffaa214a6dc ]--- [ 439.513115] BUG: unable to handle kernel paging request at ffffffffffffffd8 [ 439.514907] IP: [] kthread_data+0x10/0x20 [ 439.516822] PGD 180c067 PUD 180e067 PMD 0 [ 439.518383] Oops: 0000 [#2] PREEMPT SMP [ 439.519921] Modules linked in: au6601_pci(O) xt_conntrack ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 xt_addrtype iptable_filter nf_nat nf_conntrack br_netfilter bridge stp llc sha256_ssse3 sha256_generic hmac drbg ansi_cprng ctr ccm als(O) cmac ecb rfcomm dm_thin_pool dm_persistent_data dm_bio_prison dm_bufio libcrc32c loop bnep snd_hda_codec_hdmi joydev mousedev nls_iso8859_1 nls_cp437 vfat fat arc4 snd_hda_codec_conexant snd_hda_codec_generic asus_nb_wmi asus_wmi sparse_keymap iTCO_wdt iTCO_vendor_support uvcvideo intel_rapl x86_pkg_temp_thermal intel_powerclamp coretemp videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 btusb kvm_intel videobuf2_core btrtl v4l2_common btbcm kvm btintel videodev bluetooth media irqbypass crct10dif_pclmul iwlmvm [ 439.525269] crc32_pclmul cdc_acm aesni_intel mac80211 aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd evdev input_leds iwlwifi mac_hid pcspkr psmouse serio_raw cfg80211 i2c_i801 thermal rfkill i915 wmi snd_soc_rt5640 dell_smo8800 snd_soc_rl6231 snd_soc_core battery drm_kms_helper snd_hda_intel i2c_hid elan_i2c snd_compress snd_hda_codec dw_dmac snd_pcm_dmaengine hid drm ac97_bus dw_dmac_core snd_hda_core video intel_gtt snd_hwdep int3402_thermal i2c_designware_platform snd_soc_sst_acpi gpio_lynxpoint syscopyarea 8250_dw e1000e spi_pxa2xx_platform ac snd_pcm i2c_designware_core fjes sysfillrect processor_thermal_device sysimgblt snd_timer int340x_thermal_zone fb_sys_fops snd int3400_thermal intel_soc_dts_iosf i2c_algo_bit acpi_thermal_rel iosf_mbi soundcore ptp tpm_tis mei_me pps_core tpm [ 439.530849] button mei lpc_ich shpchp processor sch_fq_codel pci_stub vboxpci(O) vboxnetflt(O) vboxnetadp(O) vboxdrv(O) ip_tables x_tables ext4 crc16 mbcache jbd2 dm_mod uas usb_storage sd_mod atkbd libps2 crc32c_intel ahci libahci ehci_pci ehci_hcd libata xhci_pci xhci_hcd scsi_mod usbcore usb_common i8042 serio sdhci_acpi sdhci led_class mmc_core [ 439.536080] CPU: 2 PID: 5277 Comm: irq/17-au6601 h Tainted: G D O 4.4.1-2-ARCH #1 [ 439.538005] Hardware name: ASUSTeK COMPUTER INC. BU201LA/BU201LA, BIOS BU201LA.204 08/12/2014 [ 439.540155] task: ffff88001edf0000 ti: ffff88018f3a0000 task.ti: ffff88018f3a0000 [ 439.541946] RIP: 0010:[] [] kthread_data+0x10/0x20 [ 439.543711] RSP: 0018:ffff88018f3a3b28 EFLAGS: 00010202 [ 439.545518] RAX: 0000000000000000 RBX: ffff88001edf0000 RCX: 0000000000000000 [ 439.547282] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff88001edf0000 [ 439.549099] RBP: ffff88018f3a3b28 R08: 0000000000000000 R09: 0000000000000395 [ 439.550822] R10: 00000000ffffffff R11: 0000000000000395 R12: ffff88001edf0690 [ 439.552655] R13: ffff88001edf0000 R14: 0000000000000000 R15: 0000000000000046 [ 439.554413] FS: 0000000000000000(0000) GS:ffff88031df00000(0000) knlGS:0000000000000000 [ 439.556602] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 439.558684] CR2: ffffffffffffffd8 CR3: 0000000308b82000 CR4: 00000000001406e0 [ 439.560481] Stack: [ 439.562162] ffff88018f3a3b48 ffffffff810cf9b3 ffffffff81a61630 ffff88001edf0690 [ 439.563848] ffff88018f3a3b78 ffffffff810922e3 ffff88001edf0000 ffff88018f3a3ba8 [ 439.565469] 0000000000000000 0000000000000020 ffff88018f3a3be8 ffffffff810791f5 [ 439.567018] Call Trace: [ 439.568528] [] irq_thread_dtor+0x23/0xb0 [ 439.569975] [] task_work_run+0x73/0x90 [ 439.571430] [] do_exit+0x395/0xae0 [ 439.572849] [] oops_end+0x9a/0xd0 [ 439.574301] [] no_context+0x15c/0x380 [ 439.575646] [] __bad_area_nosemaphore+0x128/0x230 [ 439.576914] [] bad_area_nosemaphore+0x13/0x20 [ 439.578198] [] __do_page_fault+0x222/0x450 [ 439.579445] [] ? irq_forced_thread_fn+0x70/0x70 [ 439.580693] [] do_page_fault+0x22/0x30 [ 439.581967] [] page_fault+0x28/0x30 [ 439.583187] [] ? irq_forced_thread_fn+0x70/0x70 [ 439.584410] [] ? au6601_irq+0x2a6/0x370 [au6601_pci] [ 439.585658] [] irq_thread_fn+0x20/0x50 [ 439.586874] [] irq_thread+0x138/0x1b0 [ 439.588147] [] ? wake_threads_waitq+0x30/0x30 [ 439.589467] [] ? irq_thread_dtor+0xb0/0xb0 [ 439.590666] [] kthread+0xd8/0xf0 [ 439.591882] [] ? kthread_worker_fn+0x170/0x170 [ 439.593068] [] ret_from_fork+0x3f/0x70 [ 439.594247] [] ? kthread_worker_fn+0x170/0x170 [ 439.595528] Code: 41 5d 5d c3 e8 36 eb f6 ff e9 13 ff ff ff 0f 1f 00 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 8b 87 10 05 00 00 55 48 89 e5 <48> 8b 40 d8 5d c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 [ 439.597228] RIP [] kthread_data+0x10/0x20 [ 439.598689] RSP [ 439.600779] CR2: ffffffffffffffd8 [ 439.602161] ---[ end trace 870e3ffaa214a6dd ]--- [ 439.602163] Fixing recursive fault but reboot is needed! Any ideas?