Hi, This is just a notice for you risk takers, always living on the edge of NetBSD! I have started doing some conversions to a world where the softc of a driver doesn't embed a struct device. While it is definitely a better world, the road to it will have a few bumps; this is something I've been doing in a couple of my private trees for a long time, and I can assure you it is not possible to always get it right on the first try. The reason for that is that the old world order made the code use a lot of casts, so the compiler cannot help us detect all the assumptions about the contents of a struct device pointer or a softc pointer. I apologize in advance for the breakage, and I welcome reports of weird crashes or panics that are related to device. I also welcome some patches, if you look at the commits you can tell what is involved, but please be careful. Also, I will handle myself stuff in scsipi or ata, as they have a lot of side effects all through the tree. That way I'll take the blame for those areas. The parts for which patches are interesting because easily reviewed are the arch- specific devices, usually under arch/${ARCH}/dev. Thanks, -- Quentin Garnier - cube%cubidou.net@localhost - cube%NetBSD.org@localhost "See the look on my face from staying too long in one place [...] every time the morning breaks I know I'm closer to falling" KT Tunstall, Saving My Face, Drastic Fantastic, 2007.
Attachment:
pgpSV9dnzGGyL.pgp
Description: PGP signature