Как работает bridge на уровне ядра?
Кто может продолжить цепочку: реальное устройство eth0 инициирует прерывание -> процессор смотрит в таблице прерываний откуда брать код драйвера, а что дальше
Слишком глубоко копнул: если тебя интересует именно бриджевание, то зачем разбираться в том, как драйвер сетевухи взаимодействует с ядром, если код бриджевания в линуксе не зависит от того, как сетевой пакет попал в систему.
Очень грубо: если сетевой пакет получен с одного из интерфейсов-слейвов бриджа -- посмотреть, есть ли для его адреса назначения запись в forwarding database, если есть -- переслать пакет в интерфейс из этой записи, если нет -- переслать во все интерфейсы этого бриджа, кроме того, через который пакет был получен.
Если хочется подробностей, можно почитать тут: it-ebooks.info/book/2195
Или тут: https://git.kernel.org/cgit/linux/kernel/git/torva... , там всего пара интересных файлов, по 500 строчек каждый.
Если так сильно хочется разобраться ВООБЩЕ в сетевой архитектуре, включая обработку прерываний, структуры ядра, и прочее, то существует перевод хорошей книги.
 "Linux: сетевая архитектура. Структура и реализация сетевых протоколов в ядре", КУДИЦ-ОБРАЗ, ISBN 5-9579-0094-X
Она, конечно, немного устарела, но общее понимание даст.
А вообще, какова цель? Может, вы к проблеме не с той стороны подходите?