2015-02-17 16:40:30

by Tomas Henzl

[permalink] [raw]
Subject: [PATCH 1/2] cciss: remove duplicate entries from board_type struct

and devices not supported by this driver from unresettable list

Signed-off-by: Tomas Henzl <[email protected]>
---
drivers/block/cciss.c | 4 ----
1 file changed, 4 deletions(-)

diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
index ff20f192b0..48498220cd 100644
--- a/drivers/block/cciss.c
+++ b/drivers/block/cciss.c
@@ -139,8 +139,6 @@ static struct board_type products[] = {
{0x3214103C, "Smart Array E200i", &SA5_access},
{0x3215103C, "Smart Array E200i", &SA5_access},
{0x3237103C, "Smart Array E500", &SA5_access},
- {0x3223103C, "Smart Array P800", &SA5_access},
- {0x3234103C, "Smart Array P400", &SA5_access},
{0x323D103C, "Smart Array P700m", &SA5_access},
};

@@ -574,8 +572,6 @@ static void cciss_procinit(ctlr_info_t *h)

/* List of controllers which cannot be hard reset on kexec with reset_devices */
static u32 unresettable_controller[] = {
- 0x324a103C, /* Smart Array P712m */
- 0x324b103C, /* SmartArray P711m */
0x3223103C, /* Smart Array P800 */
0x3234103C, /* Smart Array P400 */
0x3235103C, /* Smart Array P400i */
--
1.9.3


2015-02-17 16:40:40

by Tomas Henzl

[permalink] [raw]
Subject: [PATCH 2/2] cciss: correct the non-resettable board list

The hpsa driver carries a more recent version,
copy the table from there.

Signed-off-by: Tomas Henzl <[email protected]>
---
drivers/block/cciss.c | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)

diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
index 48498220cd..0ca65b25ef 100644
--- a/drivers/block/cciss.c
+++ b/drivers/block/cciss.c
@@ -582,12 +582,32 @@ static u32 unresettable_controller[] = {
0x3215103C, /* Smart Array E200i */
0x3237103C, /* Smart Array E500 */
0x323D103C, /* Smart Array P700m */
+ 0x40800E11, /* Smart Array 5i */
0x409C0E11, /* Smart Array 6400 */
0x409D0E11, /* Smart Array 6400 EM */
+ 0x40700E11, /* Smart Array 5300 */
+ 0x40820E11, /* Smart Array 532 */
+ 0x40830E11, /* Smart Array 5312 */
+ 0x409A0E11, /* Smart Array 641 */
+ 0x409B0E11, /* Smart Array 642 */
+ 0x40910E11, /* Smart Array 6i */
};

/* List of controllers which cannot even be soft reset */
static u32 soft_unresettable_controller[] = {
+ 0x40800E11, /* Smart Array 5i */
+ 0x40700E11, /* Smart Array 5300 */
+ 0x40820E11, /* Smart Array 532 */
+ 0x40830E11, /* Smart Array 5312 */
+ 0x409A0E11, /* Smart Array 641 */
+ 0x409B0E11, /* Smart Array 642 */
+ 0x40910E11, /* Smart Array 6i */
+ /* Exclude 640x boards. These are two pci devices in one slot
+ * which share a battery backed cache module. One controls the
+ * cache, the other accesses the cache through the one that controls
+ * it. If we reset the one controlling the cache, the other will
+ * likely not be happy. Just forbid resetting this conjoined mess.
+ */
0x409C0E11, /* Smart Array 6400 */
0x409D0E11, /* Smart Array 6400 EM */
};
@@ -4663,8 +4683,7 @@ static int cciss_kdump_hard_reset_controller(struct pci_dev *pdev)
*/
cciss_lookup_board_id(pdev, &board_id);
if (!ctlr_is_resettable(board_id)) {
- dev_warn(&pdev->dev, "Cannot reset Smart Array 640x "
- "due to shared cache module.");
+ dev_warn(&pdev->dev, "Controller not resettable\n");
return -ENODEV;
}

--
1.9.3

2015-05-18 21:26:15

by Don Brace

[permalink] [raw]
Subject: RE: [PATCH 2/2] cciss: correct the non-resettable board list

> -----Original Message-----
> From: Tomas Henzl [mailto:[email protected]]
> Sent: Tuesday, February 17, 2015 10:40 AM
> To: [email protected]
> Cc: Don Brace; [email protected]; [email protected]
> Subject: [PATCH 2/2] cciss: correct the non-resettable board list
>
> The hpsa driver carries a more recent version,
> copy the table from there.
>
> Signed-off-by: Tomas Henzl <[email protected]>
> ---
> drivers/block/cciss.c | 23 +++++++++++++++++++++--
> 1 file changed, 21 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
> index 48498220cd..0ca65b25ef 100644
> --- a/drivers/block/cciss.c
> +++ b/drivers/block/cciss.c
> @@ -582,12 +582,32 @@ static u32 unresettable_controller[] = {
> 0x3215103C, /* Smart Array E200i */
> 0x3237103C, /* Smart Array E500 */
> 0x323D103C, /* Smart Array P700m */
> + 0x40800E11, /* Smart Array 5i */
> 0x409C0E11, /* Smart Array 6400 */
> 0x409D0E11, /* Smart Array 6400 EM */
> + 0x40700E11, /* Smart Array 5300 */
> + 0x40820E11, /* Smart Array 532 */
> + 0x40830E11, /* Smart Array 5312 */
> + 0x409A0E11, /* Smart Array 641 */
> + 0x409B0E11, /* Smart Array 642 */
> + 0x40910E11, /* Smart Array 6i */
> };
>
> /* List of controllers which cannot even be soft reset */
> static u32 soft_unresettable_controller[] = {
> + 0x40800E11, /* Smart Array 5i */
> + 0x40700E11, /* Smart Array 5300 */
> + 0x40820E11, /* Smart Array 532 */
> + 0x40830E11, /* Smart Array 5312 */
> + 0x409A0E11, /* Smart Array 641 */
> + 0x409B0E11, /* Smart Array 642 */
> + 0x40910E11, /* Smart Array 6i */
> + /* Exclude 640x boards. These are two pci devices in one slot
> + * which share a battery backed cache module. One controls the
> + * cache, the other accesses the cache through the one that controls
> + * it. If we reset the one controlling the cache, the other will
> + * likely not be happy. Just forbid resetting this conjoined mess.
> + */
> 0x409C0E11, /* Smart Array 6400 */
> 0x409D0E11, /* Smart Array 6400 EM */
> };
> @@ -4663,8 +4683,7 @@ static int cciss_kdump_hard_reset_controller(struct
> pci_dev *pdev)
> */
> cciss_lookup_board_id(pdev, &board_id);
> if (!ctlr_is_resettable(board_id)) {
> - dev_warn(&pdev->dev, "Cannot reset Smart Array 640x "
> - "due to shared cache module.");
> + dev_warn(&pdev->dev, "Controller not resettable\n");
> return -ENODEV;
> }
>
> --
> 1.9.3

Looks good.

2015-05-18 21:36:06

by Don Brace

[permalink] [raw]
Subject: RE: [PATCH 1/2] cciss: remove duplicate entries from board_type struct

> -----Original Message-----
> From: Tomas Henzl [mailto:[email protected]]
> Sent: Tuesday, February 17, 2015 10:40 AM
> To: [email protected]
> Cc: Don Brace; [email protected]; [email protected]
> Subject: [PATCH 1/2] cciss: remove duplicate entries from board_type struct
>
> and devices not supported by this driver from unresettable list
>
> Signed-off-by: Tomas Henzl <[email protected]>
> ---
> drivers/block/cciss.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
> index ff20f192b0..48498220cd 100644
> --- a/drivers/block/cciss.c
> +++ b/drivers/block/cciss.c
> @@ -139,8 +139,6 @@ static struct board_type products[] = {
> {0x3214103C, "Smart Array E200i", &SA5_access},
> {0x3215103C, "Smart Array E200i", &SA5_access},
> {0x3237103C, "Smart Array E500", &SA5_access},
> - {0x3223103C, "Smart Array P800", &SA5_access},
> - {0x3234103C, "Smart Array P400", &SA5_access},
> {0x323D103C, "Smart Array P700m", &SA5_access},
> };
>
> @@ -574,8 +572,6 @@ static void cciss_procinit(ctlr_info_t *h)
>
> /* List of controllers which cannot be hard reset on kexec with reset_devices */
> static u32 unresettable_controller[] = {
> - 0x324a103C, /* Smart Array P712m */
> - 0x324b103C, /* SmartArray P711m */
> 0x3223103C, /* Smart Array P800 */
> 0x3234103C, /* Smart Array P400 */
> 0x3235103C, /* Smart Array P400i */
> --
> 1.9.3

Looks good

2015-05-19 18:52:44

by Don Brace

[permalink] [raw]
Subject: RE: [PATCH 1/2] cciss: remove duplicate entries from board_type struct

> -----Original Message-----
> From: Tomas Henzl [mailto:[email protected]]
> Sent: Tuesday, February 17, 2015 10:40 AM
> To: [email protected]
> Cc: Don Brace; [email protected]; [email protected]
> Subject: [PATCH 1/2] cciss: remove duplicate entries from board_type struct
>
> and devices not supported by this driver from unresettable list
>
> Signed-off-by: Tomas Henzl <[email protected]>
> ---
> drivers/block/cciss.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
> index ff20f192b0..48498220cd 100644
> --- a/drivers/block/cciss.c
> +++ b/drivers/block/cciss.c
> @@ -139,8 +139,6 @@ static struct board_type products[] = {
> {0x3214103C, "Smart Array E200i", &SA5_access},
> {0x3215103C, "Smart Array E200i", &SA5_access},
> {0x3237103C, "Smart Array E500", &SA5_access},
> - {0x3223103C, "Smart Array P800", &SA5_access},
> - {0x3234103C, "Smart Array P400", &SA5_access},
> {0x323D103C, "Smart Array P700m", &SA5_access},
> };
>
> @@ -574,8 +572,6 @@ static void cciss_procinit(ctlr_info_t *h)
>
> /* List of controllers which cannot be hard reset on kexec with reset_devices */
> static u32 unresettable_controller[] = {
> - 0x324a103C, /* Smart Array P712m */
> - 0x324b103C, /* SmartArray P711m */
> 0x3223103C, /* Smart Array P800 */
> 0x3234103C, /* Smart Array P400 */
> 0x3235103C, /* Smart Array P400i */
> --
> 1.9.3

Signed-off-by Don Brace <[email protected]>

2015-05-19 18:55:36

by Don Brace

[permalink] [raw]
Subject: RE: [PATCH 2/2] cciss: correct the non-resettable board list

> -----Original Message-----
> From: Tomas Henzl [mailto:[email protected]]
> Sent: Tuesday, February 17, 2015 10:40 AM
> To: [email protected]
> Cc: Don Brace; [email protected]; [email protected]
> Subject: [PATCH 2/2] cciss: correct the non-resettable board list
>
> The hpsa driver carries a more recent version,
> copy the table from there.
>
> Signed-off-by: Tomas Henzl <[email protected]>
> ---
> drivers/block/cciss.c | 23 +++++++++++++++++++++--
> 1 file changed, 21 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
> index 48498220cd..0ca65b25ef 100644
> --- a/drivers/block/cciss.c
> +++ b/drivers/block/cciss.c
> @@ -582,12 +582,32 @@ static u32 unresettable_controller[] = {
> 0x3215103C, /* Smart Array E200i */
> 0x3237103C, /* Smart Array E500 */
> 0x323D103C, /* Smart Array P700m */
> + 0x40800E11, /* Smart Array 5i */
> 0x409C0E11, /* Smart Array 6400 */
> 0x409D0E11, /* Smart Array 6400 EM */
> + 0x40700E11, /* Smart Array 5300 */
> + 0x40820E11, /* Smart Array 532 */
> + 0x40830E11, /* Smart Array 5312 */
> + 0x409A0E11, /* Smart Array 641 */
> + 0x409B0E11, /* Smart Array 642 */
> + 0x40910E11, /* Smart Array 6i */
> };
>
> /* List of controllers which cannot even be soft reset */
> static u32 soft_unresettable_controller[] = {
> + 0x40800E11, /* Smart Array 5i */
> + 0x40700E11, /* Smart Array 5300 */
> + 0x40820E11, /* Smart Array 532 */
> + 0x40830E11, /* Smart Array 5312 */
> + 0x409A0E11, /* Smart Array 641 */
> + 0x409B0E11, /* Smart Array 642 */
> + 0x40910E11, /* Smart Array 6i */
> + /* Exclude 640x boards. These are two pci devices in one slot
> + * which share a battery backed cache module. One controls the
> + * cache, the other accesses the cache through the one that controls
> + * it. If we reset the one controlling the cache, the other will
> + * likely not be happy. Just forbid resetting this conjoined mess.
> + */
> 0x409C0E11, /* Smart Array 6400 */
> 0x409D0E11, /* Smart Array 6400 EM */
> };
> @@ -4663,8 +4683,7 @@ static int cciss_kdump_hard_reset_controller(struct
> pci_dev *pdev)
> */
> cciss_lookup_board_id(pdev, &board_id);
> if (!ctlr_is_resettable(board_id)) {
> - dev_warn(&pdev->dev, "Cannot reset Smart Array 640x "
> - "due to shared cache module.");
> + dev_warn(&pdev->dev, "Controller not resettable\n");
> return -ENODEV;
> }
>
> --
> 1.9.3
correct the non-resettable board list

2015-05-19 18:56:47

by Don Brace

[permalink] [raw]
Subject: RE: [PATCH 2/2] cciss: correct the non-resettable board list

> -----Original Message-----
> From: Tomas Henzl [mailto:[email protected]]
> Sent: Tuesday, February 17, 2015 10:40 AM
> To: [email protected]
> Cc: Don Brace; [email protected]; [email protected]
> Subject: [PATCH 2/2] cciss: correct the non-resettable board list
>
> The hpsa driver carries a more recent version,
> copy the table from there.
>
> Signed-off-by: Tomas Henzl <[email protected]>
> ---
> drivers/block/cciss.c | 23 +++++++++++++++++++++--
> 1 file changed, 21 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
> index 48498220cd..0ca65b25ef 100644
> --- a/drivers/block/cciss.c
> +++ b/drivers/block/cciss.c
> @@ -582,12 +582,32 @@ static u32 unresettable_controller[] = {
> 0x3215103C, /* Smart Array E200i */
> 0x3237103C, /* Smart Array E500 */
> 0x323D103C, /* Smart Array P700m */
> + 0x40800E11, /* Smart Array 5i */
> 0x409C0E11, /* Smart Array 6400 */
> 0x409D0E11, /* Smart Array 6400 EM */
> + 0x40700E11, /* Smart Array 5300 */
> + 0x40820E11, /* Smart Array 532 */
> + 0x40830E11, /* Smart Array 5312 */
> + 0x409A0E11, /* Smart Array 641 */
> + 0x409B0E11, /* Smart Array 642 */
> + 0x40910E11, /* Smart Array 6i */
> };
>
> /* List of controllers which cannot even be soft reset */
> static u32 soft_unresettable_controller[] = {
> + 0x40800E11, /* Smart Array 5i */
> + 0x40700E11, /* Smart Array 5300 */
> + 0x40820E11, /* Smart Array 532 */
> + 0x40830E11, /* Smart Array 5312 */
> + 0x409A0E11, /* Smart Array 641 */
> + 0x409B0E11, /* Smart Array 642 */
> + 0x40910E11, /* Smart Array 6i */
> + /* Exclude 640x boards. These are two pci devices in one slot
> + * which share a battery backed cache module. One controls the
> + * cache, the other accesses the cache through the one that controls
> + * it. If we reset the one controlling the cache, the other will
> + * likely not be happy. Just forbid resetting this conjoined mess.
> + */
> 0x409C0E11, /* Smart Array 6400 */
> 0x409D0E11, /* Smart Array 6400 EM */
> };
> @@ -4663,8 +4683,7 @@ static int cciss_kdump_hard_reset_controller(struct
> pci_dev *pdev)
> */
> cciss_lookup_board_id(pdev, &board_id);
> if (!ctlr_is_resettable(board_id)) {
> - dev_warn(&pdev->dev, "Cannot reset Smart Array 640x "
> - "due to shared cache module.");
> + dev_warn(&pdev->dev, "Controller not resettable\n");
> return -ENODEV;
> }
>
> --
> 1.9.3
Signed-off-by Don Brace <[email protected]>

2015-05-19 18:58:22

by Don Brace

[permalink] [raw]
Subject: RE: [PATCH 2/2] cciss: correct the non-resettable board list

-----Original Message-----
> From: Don Brace
> Sent: Tuesday, May 19, 2015 1:56 PM
> To: 'Tomas Henzl'; [email protected]
> Cc: [email protected]; [email protected]
> Subject: RE: [PATCH 2/2] cciss: correct the non-resettable board list
>
> > -----Original Message-----
> > From: Tomas Henzl [mailto:[email protected]]
> > Sent: Tuesday, February 17, 2015 10:40 AM
> > To: [email protected]
> > Cc: Don Brace; [email protected]; [email protected]
> > Subject: [PATCH 2/2] cciss: correct the non-resettable board list
> >
> > The hpsa driver carries a more recent version,
> > copy the table from there.
> >
> > Signed-off-by: Tomas Henzl <[email protected]>
> > ---
> > drivers/block/cciss.c | 23 +++++++++++++++++++++--
> > 1 file changed, 21 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c
> > index 48498220cd..0ca65b25ef 100644
> > --- a/drivers/block/cciss.c
> > +++ b/drivers/block/cciss.c
> > @@ -582,12 +582,32 @@ static u32 unresettable_controller[] = {
> > 0x3215103C, /* Smart Array E200i */
> > 0x3237103C, /* Smart Array E500 */
> > 0x323D103C, /* Smart Array P700m */
> > + 0x40800E11, /* Smart Array 5i */
> > 0x409C0E11, /* Smart Array 6400 */
> > 0x409D0E11, /* Smart Array 6400 EM */
> > + 0x40700E11, /* Smart Array 5300 */
> > + 0x40820E11, /* Smart Array 532 */
> > + 0x40830E11, /* Smart Array 5312 */
> > + 0x409A0E11, /* Smart Array 641 */
> > + 0x409B0E11, /* Smart Array 642 */
> > + 0x40910E11, /* Smart Array 6i */
> > };
> >
> > /* List of controllers which cannot even be soft reset */
> > static u32 soft_unresettable_controller[] = {
> > + 0x40800E11, /* Smart Array 5i */
> > + 0x40700E11, /* Smart Array 5300 */
> > + 0x40820E11, /* Smart Array 532 */
> > + 0x40830E11, /* Smart Array 5312 */
> > + 0x409A0E11, /* Smart Array 641 */
> > + 0x409B0E11, /* Smart Array 642 */
> > + 0x40910E11, /* Smart Array 6i */
> > + /* Exclude 640x boards. These are two pci devices in one slot
> > + * which share a battery backed cache module. One controls the
> > + * cache, the other accesses the cache through the one that controls
> > + * it. If we reset the one controlling the cache, the other will
> > + * likely not be happy. Just forbid resetting this conjoined mess.
> > + */
> > 0x409C0E11, /* Smart Array 6400 */
> > 0x409D0E11, /* Smart Array 6400 EM */
> > };
> > @@ -4663,8 +4683,7 @@ static int cciss_kdump_hard_reset_controller(struct
> > pci_dev *pdev)
> > */
> > cciss_lookup_board_id(pdev, &board_id);
> > if (!ctlr_is_resettable(board_id)) {
> > - dev_warn(&pdev->dev, "Cannot reset Smart Array 640x "
> > - "due to shared cache module.");
> > + dev_warn(&pdev->dev, "Controller not resettable\n");
> > return -ENODEV;
> > }
> >
> > --
> > 1.9.3

Goofed on the last one. Sorry about that.

Signed-off-by Don Brace <[email protected]>