769bc4a9af
Adds an additive `register_driver_shared(Arc<dyn Driver>)` method to `DeviceManager` so the caller (driver-manager) can pass a pre-shared `Arc<DriverConfig>` and retain a `Weak` reference to the SAME allocation. The SIGCHLD reaper's `Weak::upgrade()` then resolves to the same maps that `probe()` populates, fixing the long-standing Q1 dead-driver-leak where the reaper operated on stale clones with empty maps.