Проблемы в драйверах Linux

Этот раздел содержит информацию о проблемах в драйверах и ядре ОС Linux, обнаруженных сотрудниками Центра верификации в рамках программы Linux Driver Verification.

Кликните на номер замечания для просмотра подробных сведений. Кликните на заголовке для сортировки списка по указанному столбцу.

В колонке Принято отражается информация о принятии замечания после рассмотрения разработчиками соответствующего стандарта.

НомерТипКраткое описаниеДобавленоПринятоСтатус
L0050 Падение carl9170: отсутствия блокировки мьютекса на одном из путей в carl9170_op_set_key 2011-08-30 https://lkml.org/lkml/2011/8/23/380
commit
Исправлено в kernel 3.1-rc5
K0009 Утечка (ath5k) Память для sc->ah выделяется в ath5k_init_softc(), но нигде не освобождается 2011-08-08 Kernel Bug Tracker, bug #37592 Исправлено в ядре 3.1-rc1
L0049 Падение hfsplus: Двойной iput одного inode в hfsplus_fill_super() 2011-06-24 https://lkml.org/lkml/2011/6/23/675
commit
Исправлено в kernel 3.0
L0048 Падение hfsplus: отсутствует обработка неуспешного выполнения hfs_find_init() 2011-06-24 https://lkml.org/lkml/2011/7/5/500
commit
Исправлено в kernel 3.1-rc1
L0047 Утечка drivers/video/hecubafb.c: отсутствие вызова module_put на пути обработки ошибки в hecubafb_probe() 2011-06-20 https://lkml.org/lkml/2011/6/17/267
commit
Исправлено в kernel 3.0-rc6
L0046 Утечка gigaset: отсутствие вызовы module_put перед перезапуском if_open() 2011-06-20 https://lkml.org/lkml/2011/6/17/321 commit 2f9381e Исправлено в kernel 3.0-rc4
L0045 Утечка drivers/net/wan/farsync.c: Вызов module_get() без module_put() на пути обработки ошибки в fst_open() 2011-06-20 https://lkml.org/lkml/2011/6/17/320 commit d0fd64c Исправлено в kernel 3.0-rc4
L0044 Падение drivers/usb/gadget/inode.c: пропущено освобождение data->lock mutex на одном из путей в ep_write() 2011-06-08 https://lkml.org/lkml/2011/5/26/58
commit
Исправлено в kernel 3.0-rc3
L0042 Утечка drivers/media/radio/si470x/radio-si470x-usb.c: утечка в si470x_usb_driver_probe() 2011-06-08 https://lkml.org/lkml/2011/5/31/483
commit
Исправлено в ядре 3.1-rc1
L0041 Блокировка drivers/net/usb/catc.c: потенциальная блокировка в catc_ctrl_run() 2011-06-07 https://lkml.org/lkml/2011/5/31/504
commit
Исправлено в ядре 3.0-rc2
L0040 Падение drivers/media/dvb/dvb-usb/lmedm04.c: Если mutex_lock_interruptible не сработал, то мьютекс освобождать не нужно 2011-06-01 https://lkml.org/lkml/2011/4/15/306
commit
Исправлено в ядре 3.0-rc1
K0005 Утечка (ath5k) Не все элементы массива chinfo[pier].pd_curves[] освобождаются 2011-04-05 Kernel Bug Tracker, bug #32942 Исправлено в ядре 3.0
K0004 Утечка (ath5k) Не всегда освобождается память, выделенная в ath5k_eeprom_convert_pcal_info_* с помощью kcalloc 2011-04-05 Kernel Bug Tracker, bug #32722 Исправлено в ядре 3.0
L0039 Падение drivers/usb/gadget/inode.c: пропущено освобождение data->lock mutex на одном из путей в ep_read() 2011-03-22 https://lkml.org/lkml/2011/3/9/37
commit
Исправлено в ядре 2.6.39-rc4
K0002 Падение (ext4) Вызов kfree для неинициализированного указателя в ext4_mb_init_backend 2011-03-10 Kernel Bug Tracker, bug #30872 Исправлено в ядре 2.6.39-rc1
L0038 Падение drivers/input/tablet/wacom_sys.c: нет usb_free_urb на ошибочном пути 2011-02-09 https://lkml.org/lkml/2011/2/9/21
commit
Исправлено в ядре 2.6.38-rc5
L0037 Падение drivers/media/video/tlg2300/pd-video.c: двойной mutex_unlock 2011-02-04 https://lkml.org/lkml/2011/1/25/478
commit
Исправлено в ядре 2.6.39-rc1
L0036 Падение drivers/rtc/rtc-proc.c: отсутствует module_put после module_get on error path 2011-02-04 https://lkml.org/lkml/2011/1/28/103
commit
Исправлено в ядре 2.6.38-rc5
L0035 Падение drivers/media/radio/si470x/radio-si470x-common.c: двойной mutex_lock в si470x_fops_read() 2011-01-24 https://lkml.org/lkml/2011/1/23/11
commit
Исправлено в ядре 2.6.39-rc1
L0034 Падение pohmelfs/dir.c: ненужный mutex_unlock() в функции pohmelfs_rename() 2011-01-21 https://lkml.org/lkml/2011/1/19/334
commit
Исправлено в ядре 2.6.39-rc1
K0001 Падение (ext4) Разыменование NULL при использовании sb->s_fs_info после неудачной попытки монтирования 2011-01-14 Kernel Bug Tracker, bug #26752 Исправлено в ядре 2.6.39-rc1
L0033 Падение drivers/net/wireless/iwlwifi/iwl3945-base.c: mutex_unlock без mutex_lock 2010-12-14 commit 7ada88e5e5d7b465de8d0441b4a8d890a602074f Исправлено в 2.6.35
L0032 Падение Выход из функции без разблокировки мютекса в драйвере drivers/media/video/cx231xx/cx231xx-core.c 2010-12-13 https://lkml.org/lkml/2010/12/13/343 Сообщение в LKML
L0030 Падение kernel/range.c: неправильная работа функции clean_sort_range() в случае полного массива 2010-12-10 https://lkml.org/lkml/2010/11/5/264
commit
Исправлено в kernel 2.6.37
K0003 Падение (fat) Нет обработки ошибок выделения памяти в fat_cache_add 2010-12-10 Kernel Bug Tracker, bug #24622 Исправлено в ядре 3.0
L0029 Падение drivers/net/wireless/wl12xx/main.c: Не освобождается mutex_lock 2010-09-14 commit fe643414dbf330d6d910e01edd48dd93dc6f2942, http://lkml.org/lkml/2009/7/13/320 Исправлено в ядре 2.6.32
L0027 Падение drivers/media/radio/radio-gemtek-pci.c: Двойной mutex_lock 2010-08-23 commit 3addbb8075c00e2a2408c192bd1002dead26b2aa Исправлено в ядре 2.6.32
L0026 Падение drivers/net/3c505.c: Двойная блокировка spin_lock_irqsave 2010-06-08 http://lkml.org/lkml/2010/6/7/139 Признано ошибкой
L0025 Падение drivers/mtd/mtd_blkdevs.c: Небезопасный вызов функции module_put 2010-01-26 http://lkml.org/lkml/2010/1/12/246, commit 048d87199566663e4edc4880df3703c04bcf41d9 Исправлено в ядре 2.6.35
L0023 Падение drivers/usb/mos7840.c: Разыменование нулевого указателя 2009-12-23 http://lkml.org/lkml/2009/12/21/140 Исправлено в kernel 2.6.35
L0022 Падение drivers/usb/mos7840.c: Разыменование нулевого указателя 2009-12-23 http://lkml.org/lkml/2009/12/21/135 Признано ошибкой.
L0021 Падение drivers/usb/mos7840.c: Разыменование нулевого указателя 2009-12-23 http://lkml.org/lkml/2009/12/21/131 Признано ошибкой
L0020 Падение drivers/net/hamradio/bpqether.c: Разыменование нулевого указателя 2009-12-23 http://kerneltrap.org/mailarchive/linux-netdev/2009/12/15/6264106 Отправлено письмо в LKML
L0019 Падение drivers/net/3c507.c: Разыменование нулевого указателя 2009-12-22 http://lkml.org/lkml/2009/12/21/120 Признано ошибкой
L0018 Падение drivers/isdn/icn/icn.c: Разыменование нулевого указателя 2009-12-22 http://lkml.org/lkml/2009/12/15/219 Признано ошибкой
L0017 Падение drivers/message/fusion/mptscsih.c: Разыменование нулевого указателя 2009-12-22 http://kerneltrap.org/mailarchive/linux-scsi/2009/12/14/6643693/ Отправлено письмо в LKML
L0016 Падение drivers/ata/sata_mv.c: Разыменование нулевого указателя в драйвере 2009-12-22 http://lkml.org/lkml/2009/12/14/237, commit 0535f2bc170bc0779ac471faff39f633ca19ab59 Исправлено в ядре 2.6.33
L0015 Падение drivers/input/input.c: Возможен вызов mutex_lock без последующего mutex_unlock 2009-10-14 http://lkml.org/lkml/2009/10/13/353, commit 1572ca2a842a839b78780d9074d2f140b31907cc Исправлено в ядре 2.6.32
L0014 Падение drivers/hid/hidraw.c: Двойной mutex_lock 2009-10-13 http://lkml.org/lkml/2009/10/12/101, commit b0e14951ee0f6c29abc64b92ec7075a159ede37c Исправлено в ядре 2.6.35
L0012 Падение drivers/net/irda/ali-ircc.c: Двойная блокировка spin_lock_irqsave 2009-10-08 http://lkml.org/lkml/2009/10/8/113 Отправлено письмо
L0011 Падение drivers/net/znet.c: Вызов функции might_sleep из контекста spin_lock_irqsave/spin_unlock_irqrestore 2009-10-08 http://lkml.org/lkml/2009/10/7/317, commit 879e9304134bb6214fb52377ac1e01e1910f4916 Исправлено в ядре 2.6.32
L0010 Падение drivers/media/video/usbvideo/koniacwc.c: Возможно переполнение cam->input_physname, при использовании strncat (неверно задан третий параметр) 2009-10-08 http://lkml.org/lkml/2009/10/7/218, commit caac970f91f39f67b5e48680840605e24896ff99 Исправлено в ядре 2.6.33-rc1
L0009 Падение drivers/char/isicom.c: Вызов функции might_sleep из контекста spin_lock_irqsave/spin_unlock_irqrestore 2009-10-08 http://lkml.org/lkml/2009/10/7/246, commit 2493c0c166565e36831196446af594eb07892daf Исправлено в ядре 2.6.33-rc1
L0008 Падение drivers/media/video/usbvideo/quickcam_messenger.c: Возможно переполнение cam->input_physname, при использовании strncat (неверно задан третий параметр) 2009-10-07 http://lkml.org/lkml/2009/10/7/217
commit
Исправлено в ядре 2.6.33-rc1
L0006 Падение drivers/scsi/scsi_lib.c: Подозрение на использование функции might_sleep в критической секции: spin_lock/spin_unlock 2009-09-22 http://lkml.org/lkml/2009/9/24/537 Обсуждается
L0005 Падение drivers/gpu/drm/drm_gem.c: Возможно падение на assert'е BUG_ON(!mutex_is_locked(&dev->struct_mutex)) в drm_gem_object_free 2009-09-18 http://bugzilla.kernel.org/show_bug.cgi?id=13227 Признано ошибкой
L0002 Утечка fs/cifs/cifsencrypt.c: Утечка памяти 2009-09-14 http://lkml.org/lkml/2009/8/11/210, commit 1b3859bc9e20d764316346665fc93ecea2d2b176 Исправлено в ядре 2.6.32
L0003 Падение drivers/media/video/hdpvr/hdpvr-core.c(hdpvr-video.c): Нарушен баланс блокировки мютекса 2009-09-14 http://lkml.org/lkml/2009/6/19/274, commit 00c1e2167e3163d2e193644b7d768f06d2a8c279 Исправлено в ядре 2.6.32
L0004 Утечка security/selinux/hooks.c: В функции inode_doint_with_dentry() не освобождается память перед выходом 2009-09-14 http://lkml.org/lkml/2009/8/10/119, commit 314dabb83a547ec4da819e8cbc78fac9cec605cd Исправлено в ядре 2.6.31
L0001 Падение drivers/media/video/cafe_ccic.c: Нарушен баланс блокировки mutex'ов в функции cafe_pci_probe 2009-09-10 http://lkml.org/lkml/2009/9/10/167, commit 0faf6f6b892aeb25934c9adc7fe328350d2d25cc Исправлено в ядре 2.6.34