Niedawno uaktualniłem do Kubuntu Natty Beta 1 i miałem wiele problemów z procesem kworker . Chwilowo zużywa prawie połowę mojego procesora. Co dziwne, wydaje się, że wpływa na moje porty USB; za każdym razem, gdy podłączam dysk USB, procesor kworker przechodzi w hipernapęd, pozostawiając mnie niezdolnym do pracy.
Myślałem o zgłoszeniu błędu, ale odkąd nawet nie znalazłem żadnego rozsądnego wyjaśnienia, co to jest kworker , pomyślałem, że powinienem dowiedzieć się pierwszy.
Odpowiedzi:
„kworker” jest procesem zastępczym dla wątków roboczych jądra, które wykonują większość faktycznego przetwarzania dla jądra, szczególnie w przypadkach, w których występują przerwania, timery, operacje we / wy itp. Zazwyczaj odpowiadają one zdecydowanej większości przydzielonych „ systemowy czas do uruchomienia procesów. Nie jest to coś, co można bezpiecznie usunąć z systemu w jakikolwiek sposób, i jest to całkowicie niezwiązane z nepomuk lub KDE (z wyjątkiem tego, że te programy mogą wykonywać wywołania systemowe, które mogą wymagać od jądra czegoś).
Pojawiły się doniesienia o nadmiernej aktywności kworkera dla stosunkowo nieużywanych systemów, poczynając od rozwoju 2.6.36 ( przykładowa dyskusja ), oraz szerokie raporty o pomieszaniu i problemach z 2.6.38 (chociaż wiele z tych raportów zawiera słowo „Natty”, więc przypuszczam ci ludzie nie używali żadnego jądra między 2.6.35 (dystrybuowanym w Ubuntu 10.10) a 2.6.38 (dystrybuowanym w Ubuntu 11.04).
Znalazłem wiele raportów o czymś, co „naprawiło” to dla jednego lub drugiego użytkownika. Większość „poprawek” wydaje się być związana z aktualizacjami jądra różnego rodzaju. W przypadku, gdy aktualizację można prześledzić pod kątem konkretnego problemu, często wydaje się, że jest to jakaś usługa sterownika lub jądra, która została załatana, aby nie była źle zachowana: Mam wrażenie, że w jądrze znajduje się bardzo wiele rzeczy, które mogą powodować zachowanie co jest obserwowane jako nadmierne użycie kworkera.
Jeśli okaże się, że system nie nadaje się do użytku z powodu nadmiernej aktywności kworkera, zaleciłbym wykonanie mniejszej liczby czynności. Jeśli uważasz, że nic nie robisz, spróbuj zamknąć długo działające usługi lub liczniki czasu (czytniki RSS, czytniki poczty, indeksatory plików, narzędzia do śledzenia aktywności itp.). Jeśli to nie zadziała, spróbuj uruchomić ponownie. Jeśli twój system umożliwia włączanie lub wyłączanie sprzętu w środowisku przed uruchomieniem, spróbuj wyłączyć sprzęt, którego nie używasz. Jeśli zdarzy się to przy każdym ponownym uruchomieniu, zanim cokolwiek zrobisz, możesz spróbować odinstalować, ale w tym momencie będziesz chciał uruchomić narzędzia do profilowania syscall, aby wyśledzić określone aplikacje, które wydają się powodować to przeciążenie.
Należy mieć nadzieję, że Twój system przestanie wyrażać to zachowanie przy przyszłej aktualizacji jądra (i wiele z najczęstszych przyczyn tego problemu zostało rozwiązanych).
źródło
Co to jest kworker?
kworker
oznacza proces jądra Linuksa wykonujący „pracę” (przetwarzanie wywołań systemowych). Możesz mieć kilka z nich na liście procesów:kworker/0:1
jest to na pierwszym rdzeniu procesora,kworker/1:1
na drugim itd.Dlaczego kworker przeskakuje twój procesor? Aby dowiedzieć się, dlaczego kworker marnuje procesor, możesz utworzyć ślady procesora: obserwuj obciążenie procesora (z
top
czymś lub coś takiego), aw chwilach dużego obciążeniakworker
wykonaj,echo l > /proc/sysrq-trigger
aby utworzyć ślad śledzenia. (W systemie Ubuntu musisz się zalogowaćsudo -s
). Zrób to kilka razy, a następnie obserwuj ślady wstecz na końcu danychdmesg
wyjściowych. Zobacz, co dzieje się często w śladach procesora, miejmy nadzieję, że wskazuje to na źródło problemu.Przykład: e1000e. W moim przypadku prawie za każdym razem znajdowałem taki ślad:
Wskazało mi to na problem z
e1000e
modułem karty Ethernet i rzeczywiściesudo rmmod e1000e
sprawiło, że wysokie obciążenie procesora natychmiast zniknęło [ błąd e1000e nr 26 ].źródło
echo l > /proc/sysrq-trigger
wygląda na to, że nie działa na proxy mówiącymsysrq: SysRq : This sysrq operation is disabled.
smutno.Dlaczego kworker przeskakuje twój procesor (cd.)? Jako alternatywę dla mojej innej odpowiedzi tutaj , Perf jest bardziej profesjonalnym sposobem analizy zadań jądra, które powodują obciążenie procesora:
Zainstaluj
perf
:(Drugi pakiet musi pasować do wersji jądra. Możesz najpierw zainstalować
linux-tools-common
i wywołać,perf
aby poinformować cię, jakiego pakietu potrzebuje.)Nagraj około 10 sekund śledzenia wstecznego na wszystkich procesorach:
Przeanalizuj swoje nagranie:
(Przejdź wykres połączenia z ←, →, ↑, ↓i Enter).
źródło
perf
prześledziłem problem aż dosd_mod
modułu jądra. Wyłączenie SCSI wvmx
pliku uniemożliwiło modułowi załadowanie i przywróciło system do normalnej prędkości:scsi0.present = "FALSE"
Po prostu, aby wszyscy wiedzieli. Natknąłem się na ten problem, zainstalowałem perf (co jest świetnym narzędziem), wskazywał na blokowanie spinów i XFS. To wskazywało na NFS. Potem zdałem sobie sprawę, że jednego z moich wierzchowców brakowało miejsca. Zwolnienie miejsca spowodowało, że procesor kworker spadł do zera.
Widocznie może to być objaw braku miejsca na dysku na zajętym serwerze NFS!
źródło
Niedawno zainstalowałem Ubuntu Natty na zewnętrznym dysku USB paszport wd. Kiedy zaczynam na pulpicie, który ma około dwóch lat, wszystko działa jak urok. Kiedy uruchamiam na nowym laptopie (system MSI gt680r), spowalnia on po obudzeniu komputera ze stanu uśpienia lub po podłączeniu innego dysku USB.
Procesy Kworker wymagają coraz więcej procesorów, a mysz od czasu do czasu się zawiesza.
Przeczytałem kilka rozwiązań na różnych forach, które nie działały.
Wszedłem w biografie mojego laptopa, gdzie były:
Zmieniłem na:
i odtąd nie zamarza już na natty na moim laptopie.
Umożliwiłbym przekazanie zwrotne, jeśli i kiedy problem zostanie rozwiązany.
źródło
Myślę, że wyłączenie Nepomuka może ci pomóc:
http://www.freetechie.com/blog/disable-nepomuk-desktop-search-on-kde-4-4-2-kubuntu-lucid-10-04/
źródło