Podatności Linux kernel
10 407 znanych podatności CVE w Linux kernel, przetłumaczonych i ocenionych.
- CVE-2026-81012Wysokie
W jądrze Linux w sterowniku platform/x86 hp-bioscfg funkcja hp_get_string_from_buffer() porównywała długość konwertowanego łańcucha z rozmiarem bufora docelowego za pomocą warunku "size > dst_size". Gdy długość była równa dst_size, bezwarunkowy zapis terminatora NUL trafiał jeden bajt poza bufor docelowy.
- CVE-2026-81011Wysokie
W jądrze Linux w module platform/x86 hp-bioscfg parsery pakietów ACPI otrzymywały błędną liczbę elementów — zamiast zwalidowanej wartości obj->package.count przekazywały długość pola NAME (typu string), co wynikało z unii acpi_object. Obecnie jest to bezpieczne, ponieważ funkcja hp_init_bios_package_attribute() odrzuca pakiety o zbyt małej liczbie elementów, ale planowane złagodzenie tego sprawdzenia doprowadziłoby do odczytu poza granicami sterty (out-of-bounds heap read). Poprawka przekazuje prawidłową, zwalidowaną liczbę elementów do parserów.
- CVE-2026-81008Wysokie
W jądrze Linux występuje podatność use-after-free w funkcjach icc_get() i of_icc_get_by_index(). Gdy alokacja pamięci dla path->name nie powiedzie się, ścieżka błędu wywołuje kfree(path) bez wcześniejszego usunięcia wskaźników z listy req_list, co prowadzi do dangling pointers i późniejszego użycia zwolnionej pamięci. Problem został naprawiony poprzez zastąpienie kfree(path) funkcją icc_put(path) oraz zwolnienie mutexa icc_lock przed jej wywołaniem.
- CVE-2026-81007Wysokie
W jądrze Linux funkcja ipmb_write() w sterowniku IPMI odczytywała pola wiadomości przed walidacją bajtu długości. Krótki lub zerowy zapis może odczytać niezainicjalizowane bajty stosu, a długość mniejsza niż nagłówek SMBus powoduje niedomiar długości zapisu blokowego.
- CVE-2026-81006Wysokie
W jądrze Linux funkcja ipmi_add_smi() tworzy pliki nr_users i nr_msgs przed próbą utworzenia pliku maintenance_mode. Jeśli ostatnie tworzenie się nie powiedzie, ścieżka błędu usuwa tylko nr_users przed zwolnieniem referencji do interfejsu, pozostawiając zarejestrowany atrybut sysfs nr_msgs w zwolnionym interfejsie.
- CVE-2026-81005Niskie ryzyko· EPSS 7%
W jądrze Linux występuje podatność typu NULL pointer dereference w sterowniku ipmi_si. Gdy rejestracja interfejsu IPMI nie powiedzie się (np. BMC nie odpowiada poprawnie na polecenie Get Device ID), funkcja shutdown_smi() zwalnia pamięć si_sm i ustawia wskaźnik na NULL, ale flaga in_shutdown nie jest ustawiana. Asynchroniczne zadanie redo_bmc_reg może następnie ponowić próbę komunikacji z już wyczyszczonym interfejsem, co prowadzi do wywołania start_kcs_transaction() z NULL wskaźnikiem i awarii jądra.
- CVE-2026-81004Wysokie
W jądrze Linux, jeśli podczas uruchamiania interfejsu IPMI wystąpi błąd, może on mieć zaplanowaną pracę do wykonania. Praca ta musi zostać anulowana przed zwolnieniem interfejsu, czego brakowało w module ipmi:msghandler.
- CVE-2026-81003Wysokie
W jądrze Linux w funkcji afiucv_hs_rcv() (net/iucv) gniazdo AF_IUCV było wybierane wyłącznie na podstawie czterech pól nazw w nagłówku transportowym, bez sprawdzania urządzenia sieciowego, z którego ramka przyszła. Umożliwiało to dostarczenie ramki z dowolnego netdev do gniazda AF_IUCV, w tym z urządzenia w innej przestrzeni nazw. Poprawka pomija gniazda, których hs_dev nie odpowiada urządzeniu wejściowemu.
- CVE-2026-81001Wysokie
W jądrze Linux występuje podatność use-after-free w funkcji sl_sync() sterownika SLIP. Tablica slip_devs[] przechowuje wskaźniki do struktur net_device bez zwiększania licznika referencji, a zwolnienie wpisu następuje poza ochroną rtnl_lock(), co pozwala na dostęp do zwolnionej pamięci podczas wywołania slip_open().
- CVE-2026-81000Wysokie
W jądrze Linux w funkcji tun_get_user() sterownika TUN/TAP wartość tun->align jest używana zarówno jako headroom skb, jak i do wyboru ilości danych liniowych. Gdy align przekracza dostępne miejsce w jednej stronie skb, wyrażenie SKB_MAX_HEAD(align) ulega niedomiarowi, a wynik staje się ujemny i po przypisaniu do zmiennej size_t powoduje umieszczenie skb->data poza zaalokowanym obszarem. OVS może propagować zbyt duży headroom z innego portu do TUN/TAP.
- CVE-2026-80999Niskie ryzyko· EPSS 10%
W jądrze Linux w sterowniku DSA dla układów Realtek funkcje rtl83xx_reset_assert() i rtl83xx_reset_deassert() używały gpiod_set_value() zamiast gpiod_set_value_cansleep() do sterowania GPIO resetu. Gdy GPIO resetu jest obsługiwane przez kontroler mogący zasypiać (np. ekspander I2C), wywołanie gpiod_set_value() generuje ostrzeżenie jądra. Podatność dotyczy jąder v6.9+ zawierających te funkcje pomocnicze.
- CVE-2026-80998Wysokie
W jądrze Linux sterownik bnxt w ścieżce SW USO może wcześnie zakończyć działanie z NETDEV_TX_BUSY, mimo że txr->kick_pending zostało wcześniej ustawione na 1. W takiej sytuacji sterownik zapisuje część deskryptorów BD, ale nie zapisuje doorbella, co powoduje zatrzymanie kolejki TX, ponieważ urządzenie nie wie, że ma wykonać transmisję i wygenerować ukończenie wybudzające kolejkę.
- CVE-2026-80997Wysokie
W jądrze Linux naprawiono błąd w sterowniku IPA (net: ipa), który powodował trwałe zatrzymanie kolejki TX modemu po wznowieniu działania (runtime resume). Funkcja ipa_start_xmit() bezwarunkowo zatrzymywała kolejkę TX przed wywołaniem pm_runtime_get(), licząc na wznowienie kolejki przez mechanizm wake. Jednak zadanie wake było uruchamiane zbyt wcześnie — zanim stan zasilania osiągnął RPM_ACTIVE — przez co wznowienie kolejki nie następowało, a transmisja zawieszała się na stałe.
- CVE-2026-80996Niskie ryzyko· EPSS 6%
W jądrze Linux handlery netlink L2TP dla tworzenia i modyfikacji tunelu oraz sesji wysyłają powiadomienia multicast po zakończeniu właściwej operacji. Błąd alokacji, kodowania lub multicastu powiadomienia jest zwracany jako wynik komendy, mimo że operacja już się powiodła, co może powodować ponawianie przez wywołujących i gromadzenie aktywnych obiektów.
- CVE-2026-80995Wysokie
W jądrze Linux funkcja mctp_route_lookup() używa rt->dev bez utrzymywania referencji, a mctp_route_lookup_single() zwraca trasę tylko pod ochroną RCU. Urządzenie trasy może zostać równolegle zniszczone, co prowadzi do use-after-free w mctp_dev_saddr() przy odczycie rt->dev->addrs[0], osiągalnego przez nieuprzywilejowanego lokalnego użytkownika AF_MCTP bez CAP_NET_RAW. W tym samym oknie mctp_dev_hold() zwiększa refcount, który już osiągnął zero.
- CVE-2026-80993Niskie ryzyko· EPSS 10%
W jądrze Linux funkcja phylink_inband_caps() sprawdza PCS zwrócony przez mac_select_pcs tylko pod kątem NULL, podczas gdy mac_select_pcs może zwrócić również wskaźnik błędu. Powoduje to, że phylink_pcs_inband_caps() dereferencjonuje ops ze struktury phylink_pcs mimo błędu, co prowadzi do paniki jądra.
- CVE-2026-80992Wysokie
W jądrze Linux sterownik ravb może dereferencjonować nieprawidłowy zegar PTP, ponieważ zegar PTP jest niedostępny przed pierwszym otwarciem, a błędy rejestracji mogą pozostawić wskaźnik błędu w priv->ptp.clock. Odczyt indeksu zegara może wtedy spowodować dereferencję NULL lub wskaźnika błędu.
- CVE-2026-80991Wysokie
W jądrze Linux w sterowniku sieciowym ravb (Renesas Ethernet AVB) procedura obsługi przerwania PTP ravb_ptp_interrupt() może wyścignąć się z funkcją ravb_ptp_stop(), przekazując wskaźnik zegara do ptp_clock_event() w momencie, gdy ptp_clock_unregister() zwalnia ten zegar. Prowadzi to do użycia po zwolnieniu pamięci (use-after-free). Poprawka wprowadza bezpieczny dostęp do wskaźnika zegara oraz atomowe odłączenie go przed wyłączeniem przerwań PTP i synchronizację przerwań.
- CVE-2026-80990Niskie ryzyko· EPSS 11%
W jądrze Linux w sterowniku Thunderbolt funkcja tb_xdomain_alloc_in_hopid() przekazuje żądany identyfikator HopID jako dolne ograniczenie do ida_alloc_range(), więc zajęty identyfikator nie jest błędem — alokator zwraca następny wolny. tbnet_connected_work() traktuje każdy inny identyfikator jako błąd i zwraca bez zwolnienia przydzielonego zasobu, przez co alokacja pozostaje aktywna przez cały czas trwania połączenia XDomain. Poprawka zwalnia identyfikator, gdy nie jest tym, o który proszono.
- CVE-2026-80989Wysokie
W jądrze Linux w sterowniku Thunderbolt każda ścieżka błędu w tbnet_connected_work() cofa własne operacje i zwraca bez wyczyszczenia flagi login_sent, przez co połączenie nadal wygląda na ustanowione. Kolejne tbnet_tear_down() wykonuje ponownie demontaż, który już się odbył — zatrzymuje już zatrzymane pierścienie (dev_WARN(), fatalne przy panic_on_warn) i zwalnia net->remote_transmit_path nawet na ścieżce niezgodności HopID, gdzie połączenie nigdy nie posiadało tego identyfikatora. Poprawka czyści login_sent na tych ścieżkach.
- CVE-2026-80988Niskie ryzyko· EPSS 7%
W jądrze Linux w module NTB ntb_transport funkcja ntb_transport_tx_enqueue() miała odrzucać pakiety wysyłane przy niedziałającym łączu QP, ale zwracała 0 bez zużycia pakietu. Zero oznacza sukces, więc ntb_netdev zgłasza NETDEV_TX_OK i zapomina skb — nic go nie zakolejkowało ani nie zwolniło, co powoduje wyciek jednego skb na każdą transmisję wyścigującą się z awarią łącza. Poprawka zwraca -ENOLINK, przywracając kontrakt, że niezerowy wynik pozostawia bufor właścicielowi.
- CVE-2026-80987Wysokie
W jądrze Linux w module NTB ntb_transport funkcja ntb_process_tx() obsługuje zbyt duży bufor, wywołując tx_handler() z pustym wskaźnikiem danych i zwracając sukces. ntb_netdev nie zwalnia wtedy skb w swoim callbacku ukończenia ani nie wchodzi na ścieżkę błędu kolejkowania, co powoduje wyciek. Poprawka odrzuca zbyt duże bufory w ntb_transport_tx_enqueue() przed zajęciem wpisu kolejki i zwraca -EMSGSIZE.
- CVE-2026-80985Wysokie
W jądrze Linux w module net/smc funkcje smc_llc_rmt_delete_rkey() i smc_llc_save_add_link_rkeys() czytają część komunikatu v2, która nie mieści się w 44-bajtowej unii smc_llc_msg, ograniczając się rozmiarem bufora, a nie rozmiarem tego, co faktycznie przyszło. Na łączu ze współdzielonym buforem odbioru v2 44-bajtowy DELETE_RKEY_V2 deklarujący 255 kluczy rkey sięga do rkey[9..254] w danych pozostawionych przez wcześniejszy komunikat i przekazuje je do smc_rtoken_delete(), co może usunąć zarejestrowany rtoken. Poprawka kopiuje ogon komunikatu do wpisu kolejki i deklaruje klucze inline jako element unii.
- CVE-2026-80984Niskie ryzyko· EPSS 10%
W jądrze Linux w module net/smc funkcja smc_close_stream_wait() wywołuje smc_tx_prepared_sends() wewnątrz warunku sk_wait_event(), który jest oceniany raz z zwolnioną blokadą gniazda. smcd_buf_detach() czyści conn->sndbuf_desc z smc_conn_kill() pod lock_sock(), więc grupa łącząca kończąca się w trakcie oczekiwania pozostawia pomocnika dereferencjonującego NULL, powodując błąd w close(). Poprawka próbkuje wskaźnik raz w pomocniku i zgłasza brak przygotowanych danych, gdy jest nieustawiony.
- CVE-2026-80983Niskie ryzyko· EPSS 7%
W jądrze Linux w module net/smc funkcja smc_switch_conns() pobiera referencję na gniazdo SMC przed zwolnieniem lgr->conns_lock, aby połączenie pozostało aktywne podczas pobierania slotu CDC. Etykieta err_out zwalnia tylko referencję łącza wr_tx, więc to wczesne wyjście zwraca bez pasującego sock_put(). Wyciek sk_refcnt oznacza, że smc_sock nigdy nie zostaje zniszczony, a referencja do przestrzeni nazw sieci nie jest zwalniana, co uniemożliwia demontaż netns. Poprawka restrukturyzuje kod tak, aby jedno sock_put() obejmowało oba wyniki.
- CVE-2026-80982Wysokie
W jądrze Linux w module net/smc funkcja smc_rx_splice() przekazuje strony RMB do potoku i pobiera referencję gniazda na wpis, aby smc_sock pozostał aktywny do zakończenia odczytu. Jednak połączenie nie — równoległe zamknięcie uruchamia smc_conn_free(), które zwalnia bufor odbioru z powrotem do puli grupy łączącej. smc_rx_pipe_buf_release() sprawdza sk_state przed pobraniem blokady gniazda; stan może się zmienić między testem a blokadą, a smc_rx_update_cons() dereferencjonuje conn->rmb_desc i przechodzi przez conn->lgr, które zostały już zwolnione — jest to użycie po zwolnieniu pamięci. Poprawka pobiera najpierw blokadę gniazda i sprawdza conn->freed.
- CVE-2026-80979Wysokie
W jądrze Linux w podsystemie net/smc funkcja smc_conn_free() wyrejestrowuje połączenie tylko wtedy, gdy grupa łączy wciąż znajduje się na liście urządzenia, i nigdy nie ustawia conn->killed. W oknie między odłączeniem grupy a zabiciem jej połączeń urządzenie może ponownie uzbroić tasklet odbiorczy po tasklet_kill(), co prowadzi do użycia zwolnionego bufora (use-after-free).
- CVE-2026-80978Wysokie
W jądrze Linux urządzenia tuneli IP wyliczają reklamowany needed_headroom z niższych urządzeń wyjściowych. Stos urządzeń tworzonych przez użytkownika może sprawić, że wartość przekroczy zakres 16-bitowych przesunięć nagłówka skb, co przy rezerwacji w wyjściu IP powoduje zawinięcie tych przesunięć.
- CVE-2026-80977Wysokie
W jądrze Linux funkcja skb_tx_error() kończy zerocopy uarg i czyści SKBFL_ALL_ZEROCOPY, a skb_zcopy_downgrade_managed() czyści SKBFL_MANAGED_FRAG_REFS — oba w skb_shinfo() współdzielonym przez klony. Przy klonie Open vSwitch (OVS_ACTION_ATTR_RECIRC) prowadzi to do zdjęcia znacznika z pakietu wciąż przekazywanego i późniejszego odszyfrowania ESP w miejscu na fragmentach, których nie posiada się na wyłączność.
- CVE-2026-80975Wysokie
W jądrze Linux występuje podatność w sterowniku mfd: qnap-mcu. Funkcja qnap_mcu_exec() publikuje bufor na stosie (rx) do ścieżki odbioru, która może zapisywać do niego po przekroczeniu limitu czasu lub po niepowodzeniu zapisu, gdy ramka stosu nie jest już ważna. Prowadzi to do uszkodzenia pamięci stosu i potencjalnego wykonania dowolnego kodu.
- CVE-2026-80974Niskie ryzyko· EPSS 11%
W jądrze Linux w funkcjach sm501_pci_probe() i sm501_plat_probe() przydzielana jest pamięć dla struktury sm501_devdata, która nie jest zwalniana przez odpowiadające funkcje usuwania sm501_pci_remove() i sm501_plat_remove(). Powoduje to wyciek pamięci przy każdym usunięciu urządzenia.
- CVE-2026-80972Niskie ryzyko· EPSS 6%
Sterownik ALSA aloop w jądrze Linux bez weryfikacji ufa wartości devptr->id podczas probe, zakładając, że mieści się ona w prawidłowym zakresie indeksu karty. Przy ręcznym powiązaniu urządzenia przez sysfs wartość ta może wynosić -1 ("none"), co prowadzi do dostępu poza zakresem tablicy index[] i innych parametrów.
- CVE-2026-80969Niskie ryzyko· EPSS 11%
Sterownik ALSA mpu401 w jądrze Linux bez weryfikacji ufa wartości devptr->id podczas probe, zakładając, że mieści się ona w prawidłowym zakresie indeksu karty. Przy ręcznym powiązaniu urządzenia przez sysfs wartość ta może wynosić -1 ("none"), co prowadzi do dostępu poza zakresem tablicy index[] i innych parametrów.
- CVE-2026-80968Niskie ryzyko· EPSS 11%
Sterownik ALSA mts64 w jądrze Linux sprawdza wartość devptr->id, ale nie weryfikuje wartości ujemnych, które są często przekazywane jako "none" przy powiązaniu urządzenia przez sysfs. Może to prowadzić do dostępu poza zakresem tablicy index[] i innych parametrów.
- CVE-2026-80967Wysokie
Funkcja pcxhr_probe() w jądrze Linux wywołuje pcxhr_threaded_irq() przed zainicjalizowaniem mutexa mgr->lock, mimo że wątek obsługi przerwania używa tego mutexa. Wczesne przerwanie może więc działać na niezainicjalizowanym stanie mutexa podczas probe.
- CVE-2026-80966Niskie ryzyko· EPSS 11%
Sterownik ALSA portman2x4 w jądrze Linux sprawdza wartość devptr->id, ale nie weryfikuje wartości ujemnych, które są często przekazywane jako "none" przy powiązaniu urządzenia przez sysfs. Może to prowadzić do dostępu poza zakresem tablicy index[] i innych parametrów.
- CVE-2026-80955Wysokie
W jądrze Linux w funkcji kset_replay() modułu dm-pcache występuje błąd use-after-free oraz nieprawidłowe operacje na segmentach. Gdy klucz ma nieaktualny seg_gen, pamięć klucza jest zwalniana, a następnie odwołuje się do niej wywołanie cache_seg_get(). Dodatkowo dla wygasłych nieprawidłowych kluczy niepotrzebnie ustawiany jest bit w seg_map i wywoływane cache_seg_get().
- CVE-2026-80954Wysokie
W jądrze Linux funkcja i3c_device_get_supported_xfer_mode() odwołuje się do dev->desc bez trzymania blokady bus->lock, co jest niedozwolone. Funkcja potrzebuje jedynie kontrolera nadrzędnego powiązanego z magistralą urządzenia, więc należy użyć dev->bus, które jest zawsze ważne przez cały czas życia urządzenia.
- CVE-2026-80953Wysokie
W jądrze Linux sterownik adi_i3c_master_probe() żąda przerwania i odmaskowuje REG_IRQ_PENDING_CMDR przed zainicjalizowaniem stanu IBI, listy kolejki transferów i blokady kolejki transferów. Oczekujące przerwanie CMDR może wywołać adi_i3c_master_irq() i użyć niezainicjalizowanej blokady, co wykrył Lockdep.
- CVE-2026-80952Wysokie
W jądrze Linux funkcja i3c_master_unregister_i3c_devs() czyści i3cdev->dev->desc przed wywołaniem device_unregister(). Podczas wyrejestrowania i3c_device_uevent() oraz wyścigowy modalias_show() mogą zobaczyć NULL desc i użyć niezainicjalizowanej struktury na stosie, ujawniając zawartość stosu jądra. Może też wystąpić use-after-free przy zapisie desc po zwolnieniu urządzenia.
- CVE-2026-80951Niskie ryzyko· EPSS 11%
W jądrze Linux funkcja svc_i3c_master_handle_ibi() odczytuje ładunek IBI z RX FIFO do slotu, ograniczając pętlę rozmiarem FIFO (SVC_I3C_FIFO_SIZE), a nie rozmiarem slotu. Sterownik może zażądać mniejszego max_payload_len (np. mctp-i3c żąda 1), więc urządzenie wysyłające więcej bajtów powoduje zapis poza slot->data, czyli out-of-bounds write do puli IBI.
- CVE-2026-80950Wysokie
W jądrze Linux sterownik Renesas I3C używa modelu asynchronicznego: przygotowuje strukturę renesas_i3c_xfer, kolejkuje ją i czeka na zakończenie. Jeśli wystąpi przekroczenie czasu, wątek oczekujący usuwa transfer z kolejki i zwalnia go; późniejsze przerwanie może odwołać się do zwolnionej pamięci, powodując awarię.
- CVE-2026-80949Niskie ryzyko· EPSS 7%
W jądrze Linux funkcja brcmf_sdio_read_control() nie zwalnia pamięci przydzielonej dla buf w niektórych ścieżkach błędów. Poprawka polega na dodaniu wywołań vfree() w tych ścieżkach.
- CVE-2026-80948Niskie ryzyko· EPSS 12%
W jądrze Linux funkcja iwl_op_mode_dvm_start() w sterowniku iwlwifi dvm: skok do out_free_eeprom pomija etykietę out_free_eeprom_blob. W efekcie ścieżki błędów po pomyślnym sparsowaniu EEPROM zwalniają priv->nvm_data, ale wycieka priv->eeprom_blob. Poprawka zmienia kolejność etykiet obsługi błędów.
- CVE-2026-80947Wysokie
W jądrze Linux w sterowniku wifi rtl8xxxu występuje błąd use-after-free związany z kolejką roboczą rx_urb_wq. Funkcja rtl8xxxu_stop() nie anuluje rx_urb_wq, więc worker może wykonać się po zwolnieniu struktury priv przez rtl8xxxu_disconnect(), co prowadzi do użycia zwolnionej pamięci. Problem występuje przy aktywnym ruchu RX i następującym po nim rozłączeniu urządzenia.
- CVE-2026-80946Niskie ryzyko· EPSS 5%
W jądrze Linux transport fuse-io-uring kopiuje req->in.h i req->out.h bezpośrednio do/z przestrzeni użytkownika w fuse_uring_copy_to_ring() i fuse_uring_commit(). Nagłówki znajdują się w obiekcie slab fuse_request, którego cache nie ma białej listy usercopy, co narusza CONFIG_HARDENED_USERCOPY i powoduje panikę jądra.
- CVE-2026-80943Wysokie
W jądrze Linux w sterowniku wifi rtlwifi (rtl8192du) funkcja rtl92du_tx_fill_desc() używa wartości QoS TID z nagłówka 802.11 jako indeksu tablicy sta_entry->tids[]. Ponieważ ieee80211_get_tid() zwraca wartość 0..15, a tablica ma tylko MAX_TID_COUNT (9) elementów, TID większy niż 8 powoduje dostęp poza zakresem tablicy stanu agregacji.
- CVE-2026-80942Niskie ryzyko· EPSS 6%
W jądrze Linux w sterowniku wifi rtlwifi (rtl8192du) funkcja rtl92du_init_sw_vars() nie zwalnia pamięci przydzielonej w rtl92du_init_shared_data() w żadnej ze ścieżek błędów występujących po tym przydziale. Prowadzi to do wycieku pamięci.
- CVE-2026-80941Niskie ryzyko· EPSS 11%
W jądrze Linux w sterowniku wifi rtw88 funkcja rtw_txq_push_skb() nie zwalnia skb przed powrotem w ścieżce błędu, mimo że funkcja rtw_hci_tx_write() oczekuje zwolnienia skb w przypadku niepowodzenia. Prowadzi to do wycieku pamięci w rtw_txq_push().
- CVE-2026-80940Niskie ryzyko· EPSS 6%
W jądrze Linux w sterowniku wifi rtw88 (PCI) funkcja rtw_pci_probe() przydziela zasoby PCI przez rtw_pci_setup_resource() przed konfiguracją NAPI. Jeśli rtw_pci_napi_init() zawiedzie, ścieżka błędu pomija rtw_pci_destroy(), pozostawiając przydzielone zasoby PCI.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

