On Mon, Jan 19, 2015 at 12:05:58AM +0900, Akinobu Mita wrote: > While accessing a scsi_device, the use count of the underlying LLDD > module is incremented. The module reference is retrieved through > .module field of struct scsi_host_template. > > This mapping between scsi_device and underlying LLDD module works well > except some drivers which consist with the core driver and the actual > LLDDs and scsi_host_template is defined in the core driver. In these > cases, the actual LLDDs can be unloaded even if the scsi_device is > being accessed. > > This patch series fixes the module reference mismatch problem for > ufs, usb-storage, esp_scsi, ahci_platform, and pata_platform drivers > by moving owner module reference field from struct scsi_host_template > to struct Scsi_Host and allowing the LLDDs to set their correct module > reference.
Hmmm, can't we just move sht definitions to actual LLDDs? libata can do that easily. sht, as its name implies, is the template for creating the scsi_hosts of a given type. We're now just moving module ownership from sht definition site to whatever callsite the actual instance is being created which can also be wrapped in a separate layer requiring explicit propagation. Why not just propagate sht's directly? What's the difference? Thanks. -- tejun -- You received this message because you are subscribed to the Google Groups "open-iscsi" group. To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscr...@googlegroups.com. To post to this group, send email to open-iscsi@googlegroups.com. Visit this group at http://groups.google.com/group/open-iscsi. For more options, visit https://groups.google.com/d/optout.