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