Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

kernel: IORegistry interest notifications -- IOREG_EVENT_INTEREST and an 'IOIN' Mach message carrying messageType, messageArgument and serial

Aperta
#242 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
48/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
c

Direzione di ricerca

Start by reading src-overlay/sys/compat/mach/iokit_notify.c and the registry implementation in iokit_registry.c; check the existing 'IONT' message definition and watch-registration path. The issue estimates about 180 LOC across iokit_registry.c and iokit_notify.c/.h. Done when a watcher pinned to a node receives an interest message with the correct type, argument, and serial.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

area:power enhancement

Summary

The kernel already sends Mach notifications for device arrival and departure (src-overlay/sys/compat/mach/iokit_notify.c, msgid 'IONT'), but not Apple's per-object interest messages -- the channel IORegisterForSystemPower, battery changes and clamshell changes all ride on.

Design

  • a new watch kind IOREG_EVENT_INTEREST in IOREGIOCWATCH, pinned to a node id
  • a new msgid 'IOIN' with {header, NDR, id, messageType (uint32), messageArgument (uint64), serial (uint32)} -- the existing 'IONT' struct is documented as frozen once shipped
  • ~100 LOC in iokit_registry.c, ~80 in iokit_notify.c/.h

The same 'IOIN' struct is what pmconfigd sends to apps in v1 (L4), so moving the fan-out into the kernel later (R1) changes the sender, not the wire format.

Acceptance

  • a watcher pinned to a node receives an interest message with the right type, argument and serial

K6 in epic nextbsd/nextbsd#490 (E17 Power management). Depends on: none.

Plan: https://pkgdemon.github.io/nextbsd-power-management-plan.html · Draft: https://pkgdemon.github.io/nextbsd-e17-tickets.html#k6

Lingua principale
C
Stelle
12
Fork
3
Merge medio
7h 1m
PR unite (30g)
7

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di nextbsd/nextbsd-kernel

Tutte le issue di nextbsd/nextbsd-kernel

Issue simili

Altre issue su C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.