Message ID | 1422643333-27926-18-git-send-email-jsnow@redhat.com |
---|---|
State | New |
Headers | show |
On 30/01/2015 19:42, John Snow wrote: > +/** > + * Boot and fully enable the HBA device. > + * @see ahci_boot, ahci_pci_enable and ahci_hba_enable. > + */ > +static AHCIQState *ahci_macro_bootup(void) Ugly name... I would just leave out this patch. Paolo > +{ > + AHCIQState *ahci; > + ahci = ahci_boot(); > + > + ahci_pci_enable(ahci); > + ahci_hba_enable(ahci); > + > + return ahci; > +}
On 02/02/2015 05:37 AM, Paolo Bonzini wrote: > > > On 30/01/2015 19:42, John Snow wrote: >> +/** >> + * Boot and fully enable the HBA device. >> + * @see ahci_boot, ahci_pci_enable and ahci_hba_enable. >> + */ >> +static AHCIQState *ahci_macro_bootup(void) > > Ugly name... I would just leave out this patch. > > Paolo > >> +{ >> + AHCIQState *ahci; >> + ahci = ahci_boot(); >> + >> + ahci_pci_enable(ahci); >> + ahci_hba_enable(ahci); >> + >> + return ahci; >> +} > It comes in handy later for testing migration so I don't have to do a lot of boilerplate for each instance, though it is just a convenience subroutine with no logic of its own. I like to cut down on boilerplate as much as possible to expose the logic of the test as much as possible. Have a suggestion for a better name, or are you very adamant about culling it? --js
On 02/02/2015 22:12, John Snow wrote: > > It comes in handy later for testing migration so I don't have to do a > lot of boilerplate for each instance, though it is just a convenience > subroutine with no logic of its own. > > I like to cut down on boilerplate as much as possible to expose the > logic of the test as much as possible. > > Have a suggestion for a better name, or are you very adamant about > culling it? I'm adamant about culling it because I don't have a suggestion for a better name. In the long run, I think we should just have a qos_boot function that does everything including PCI scanning, mapping BARs and initializing devices. But we're of course very far from that. Paolo
diff --git a/tests/ahci-test.c b/tests/ahci-test.c index 3a0131a..9207e73 100644 --- a/tests/ahci-test.c +++ b/tests/ahci-test.c @@ -107,6 +107,21 @@ static void ahci_shutdown(AHCIQState *ahci) qtest_shutdown(qs); } +/** + * Boot and fully enable the HBA device. + * @see ahci_boot, ahci_pci_enable and ahci_hba_enable. + */ +static AHCIQState *ahci_macro_bootup(void) +{ + AHCIQState *ahci; + ahci = ahci_boot(); + + ahci_pci_enable(ahci); + ahci_hba_enable(ahci); + + return ahci; +} + /*** Specification Adherence Tests ***/ /** @@ -787,9 +802,7 @@ static void test_identify(void) { AHCIQState *ahci; - ahci = ahci_boot(); - ahci_pci_enable(ahci); - ahci_hba_enable(ahci); + ahci = ahci_macro_bootup(); ahci_test_identify(ahci); ahci_shutdown(ahci); }
Add a routine that can be used to engage the AHCI device at a not-granular level so that bringing up the functionality of the HBA is easy in future tests that are not concerned with testing the bring-up process. Signed-off-by: John Snow <jsnow@redhat.com> --- tests/ahci-test.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-)