Hello!
Well, i don't know why kernel device routes are not imported in 'learn' mode and instead direct protocol is used. Some of these reasons are probably lost in the past (like in ancient Linux where device routes have to be generated by user), another possible reason is that you still need some external protocol for these routes - if you can learn kernel device routes from kernel protocol but if you overwrite them by a route from another protocol, then kernel protocol stops announcing such device routes and the device route is not reintroduced when the other protocol withdraws its route.
If I remember correctly, the original intention was to keep kernel device routes completely separated, primarily to keep off various possible (though unlikely) problems, like the one mentioned by SanTiago. However, learning of device routes should work and it could be an interesting option to add. Have a nice fortnight -- Martin `MJ' Mares <mj@ucw.cz> http://mj.ucw.cz/ Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth Current root password is "p3s5vwF50". Keep secret.