diff options
author | Raghava Aditya Renukunta <raghavaaditya.renukunta@pmcs.com> | 2016-02-04 00:06:07 +0100 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2016-02-24 03:27:02 +0100 |
commit | b9fb54b425e14658959bbc753452aaaf4d11d6fa (patch) | |
tree | 0a51d794b4b7aefc9ed0378ae5c206fe004d23e2 /drivers/scsi/aacraid/aacraid.h | |
parent | aacraid: Fix AIF triggered IOP_RESET (diff) | |
download | linux-b9fb54b425e14658959bbc753452aaaf4d11d6fa.tar.xz linux-b9fb54b425e14658959bbc753452aaaf4d11d6fa.zip |
aacraid: Fix character device re-initialization
During EEH PCI hotplug activity kernel unloads and loads the driver,
causing character device to be unregistered(aac_remove_one).When the
driver is loaded back using aac_probe_one the character device needs
to be registered again for the AIF management tools to work.
Fixed by adding code to register character device in aac_probe_one if
it is unregistered in aac_remove_one.
Signed-off-by: Raghava Aditya Renukunta <raghavaaditya.renukunta@pmcs.com>
Reviewed-by: Shane Seymour <shane.seymour@hpe.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/aacraid/aacraid.h')
-rw-r--r-- | drivers/scsi/aacraid/aacraid.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/scsi/aacraid/aacraid.h b/drivers/scsi/aacraid/aacraid.h index 75bc65ecad37..9cdf4d2bdece 100644 --- a/drivers/scsi/aacraid/aacraid.h +++ b/drivers/scsi/aacraid/aacraid.h @@ -94,6 +94,13 @@ enum { #define aac_phys_to_logical(x) ((x)+1) #define aac_logical_to_phys(x) ((x)?(x)-1:0) +/* + * These macros are for keeping track of + * character device state. + */ +#define AAC_CHARDEV_UNREGISTERED (-1) +#define AAC_CHARDEV_NEEDS_REINIT (-2) + /* #define AAC_DETAILED_STATUS_INFO */ struct diskparm |