On Tue, 21 Jul 2020 18:09:13 +0100 Edward Cree wrote: > On 21/07/2020 17:45, Jakub Kicinski wrote: > > On Tue, 21 Jul 2020 15:48:00 +0100 Edward Cree wrote: > >> Aaaaargh; does anyone have any bright ideas? > > No bright ideas. Why do you want the driver to be modular in the first > > place? > Well, 'sfc' already is, and I'm not sure changing that is an option > (wouldn't it break users' scripts?). And I find development is a lot > easier if you can just rebuild a module and reload it rather than > having to wait for LD to put together a whole new vmlinux. > > > Maybe I'm wrong, but I've never seen a reason to break up vendor drivers > > for high performance NICs into multiple modules. > So, what are you suggesting?
I was talking about option 2 below, yes. > 1) both drivers are builtin-only > 2) a single module containing both drivers > 3) something else? > > Both (1) and (2) would allow replacing the linker trick with an if() > on efx->revision or an efx->type-> function with INDIRECT_CALLABLE. > > I don't know for sure but I suspect we made the drivers separate > modules simply because we could (or so we thought) and we didn't > know for certain no-one would ever want the extra flexibility. > > I'll ask around and see if there's any reason we can't do (2). > > -ed