Re: [PATCH] fix qla2xxx regression on sparc64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> On Aug 21, 2020, at 3:21 PM, René Rebe <rene@xxxxxxxxxxxx> wrote:
> 
> Hey,
> 
>> On 21. Aug 2020, at 20:00, Himanshu Madhani <himanshu.madhani@xxxxxxxxxx> wrote:
>> 
>> 
>> 
>>> On Aug 21, 2020, at 12:49 PM, René Rebe <rene@xxxxxxxxxxxx> wrote:
>>> 
>>> Hi,
>>> 
>>>> On 21. Aug 2020, at 17:17, Himanshu Madhani <himanshu.madhani@xxxxxxxxxx> wrote:
>>>> 
>>>> Hi Rene, 
>>>> 
>>>>> On Aug 21, 2020, at 9:47 AM, René Rebe <rene@xxxxxxxxxxxx> wrote:
>>>>> 
>>>>> Hey,
>>>>> 
>>>>>> On 21. Aug 2020, at 15:49, Himanshu Madhani <himanshu.madhani@xxxxxxxxxx> wrote:
>>>>>> 
>>>>>> Hi Rene,
>>>>>> 
>>>>>> 
>>>>>>> On Aug 21, 2020, at 7:28 AM, Rene Rebe <rene@xxxxxxxxxxxxx> wrote:
>>>>>>> 
>>>>>>> 
>>>>>>> Commit 9a50aaefc1b896e734bf7faf3d085f71a360ce97 in 2014 broke
>>>>>>> qla2xxx on sparc64, e.g. as in the Sun Blade 1000 / 2000.
>>>>>>> Unbreak by fixing endianess in nvram firmware defaults
>>>>>>> initialization.
>>>>>>> 
>>>>>> 
>>>>>> I could not find this commit 9a50aaefc1b896e734bf7faf3d085f71a360ce97 in Linus or SCSI tree. 
>>>>> 
>>>>> Did I copy this wrong?
>>>>> 	https://urldefense.com/v3/__https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/scsi/qla2xxx?id=9a50aaefc1b896e734bf7faf3d085f71a360ce97__;!!GqivPVa7Brio!L6-irbVsNXqZh_TSb_WyaBZ1S3Evo18GqWr8hX2Z-tNl3rZbWv0orEt7Igy_n_89mkIf$ 
>>>>> 
>>>> 
>>>> Yes. The actual commit that change those lines is following 
>>>> 
>>>> https://urldefense.com/v3/__https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=98aee70d19a7e3203649fa2078464e4f402a0ad8__;!!GqivPVa7Brio!Jsf7iuXhoEimJ56ynA6RrwNm3nkfk3ATaMfNVTUhnU9-NfIZT3eVBiXtsQHXXzu7NMDs$ 
>>>> 
>>>> So your fixes tag should be 
>>>> 
>>>> Fixes: 98aee70d19a7e ("qla2xxx: Add endianizer to max_payload_size modifier.”)
>>>> 
>>>> And looking at the changes, I see that the frame_payload_size was changed to __le16 so this should not cause regression in your env. 
>>>> 
>>>> Interestingly this patch had fixed the regression and was originally tested on SunBlade-1000
>>>> 
>>>> https://urldefense.com/v3/__https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=4e08df3f91837656c36712f559d5ce8d80852760__;!!GqivPVa7Brio!Jsf7iuXhoEimJ56ynA6RrwNm3nkfk3ATaMfNVTUhnU9-NfIZT3eVBiXtsQHXX5pZx4bu$ 
>>>> 
>>>> Can you try reverting 98aee70d19a7e and retest to confirm that this patch indeed introduced regression for you. 
>>> 
>>> Well, linux kernels since 3.17 did not work on this adapter on sparc64:
>>> 
>>> and I reverted the whole 9a50aaefc1b896e734bf7faf3d085f71a360ce97 and factored the changes out and tested what I sent with 5..8.1.
>>> 
>>> This was also reported back in the say, but somehow never applied, ..?
>>> 
>>> 	https://urldefense.com/v3/__https://lore.kernel.org/lkml/86A17A977688E04689F40F6B1EC20EC601940E06A9@xxxxxxxxxxxxxxxx/__;!!GqivPVa7Brio!Jsf7iuXhoEimJ56ynA6RrwNm3nkfk3ATaMfNVTUhnU9-NfIZT3eVBiXtsQHXX9w-_N_o$ 
>>> 
>> 
>> Wow. This should have been done the moment Author acknowledged the revert. I am stumped that we are still talking about this revert after 5+ yrs and its not done. Would you please send just plain revert request for commit 98aee70d19a7e rather than reverting whole merge window patch.
> 
> Well, how many people care about vintage Sun sparc64 hardware, ..? ;-)
> 
> IMHO it makes no sense to revert this in full today. It does not revert cleanly and all the other __le16 conversions did not cause regressions that I know of.
> So instead having one not __le16 member, I suggest the partial revert I posted initially. I can resend it with the updated Fixes: reference as requested
> 

Okay. I am fine with the patch you send earlier with Fixes tag and also add Cc to Stable as well so that it get ported in stable release. 
I would also like you to add link for the past discussion in the commit message so that we remember why this patch was added. 

>        /* Firmware Initialization Control Block. */
> -      uint16_t version;
> +      __le16  version;
>        uint16_t reserved_1;
> ++<<<<<<< HEAD
> +      __le16  frame_payload_size;
> +      __le16  execution_throttle;
> +      __le16  exchange_count;
> +      __le16  hard_address;
> ++=======
> +       uint16_t frame_payload_size;
> +       uint16_t execution_throttle;
> +       uint16_t exchange_count;
> +       uint16_t hard_address;
> ++>>>>>>> parent of 98aee70d19a7... qla2xxx: Add endianizer to max_payload_size modifier.
> 
> …
> 
> @@@ -8411,11 -5903,11 +8437,19 @@@ qla81xx_nvram_config(scsi_qla_host_t *v
>                 * Set default initialization control block.
>                 */
>                memset(nv, 0, ha->nvram_size);
> ++<<<<<<< HEAD
> +              nv->nvram_version = cpu_to_le16(ICB_VERSION);
> +              nv->version = cpu_to_le16(ICB_VERSION);
> +              nv->frame_payload_size = cpu_to_le16(2048);
> +              nv->execution_throttle = cpu_to_le16(0xFFFF);
> +              nv->exchange_count = cpu_to_le16(0);
> ++=======
> +               nv->nvram_version = __constant_cpu_to_le16(ICB_VERSION);
> +               nv->version = __constant_cpu_to_le16(ICB_VERSION);
> +               nv->frame_payload_size = __constant_cpu_to_le16(2048);
> +               nv->execution_throttle = __constant_cpu_to_le16(0xFFFF);
> +               nv->exchange_count = __constant_cpu_to_le16(0);
> ++>>>>>>> parent of 98aee70d19a7... qla2xxx: Add endianizer to max_payload_size modifier.
> 
> …
> 
>>> Regards,
>>> 	René
>>> 
>>>>>> Can you please provide details of the commit which introduced this regression.
>>>>> 
>>>>> See above, there was plenty of more reworks and code shuffling, and the quoted commit is also a condensed changes of other /14 series and other scsi work, …
>>>>> 
>>>>> Have a nice weekend,
>>>>> 	René
>>>>> 
>>>>>> Also when you
>>>>>> resubmit this patch please use Fixes tag. See documentation here for the correct format.
>>>>>> 
>>>>>> https://urldefense.com/v3/__https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst__;!!GqivPVa7Brio!L6-irbVsNXqZh_TSb_WyaBZ1S3Evo18GqWr8hX2Z-tNl3rZbWv0orEt7Igy_n620C3iF$ 
>>>>>> 
>>>>>>> Signed-off-by: René Rebe <rene@xxxxxxxxxxxx>
>>>>>>> 
>>>>>>> --- linux-5.8/drivers/scsi/qla2xxx/qla_init.c.vanilla	2020-08-21 09:55:18.600926737 +0200
>>>>>>> +++ linux-5.8/drivers/scsi/qla2xxx/qla_init.c	2020-08-21 09:57:35.992926885 +0200
>>>>>>> @@ -4603,18 +4603,18 @@
>>>>>>> 			nv->firmware_options[1] = BIT_7 | BIT_5;
>>>>>>> 			nv->add_firmware_options[0] = BIT_5;
>>>>>>> 			nv->add_firmware_options[1] = BIT_5 | BIT_4;
>>>>>>> -			nv->frame_payload_size = 2048;
>>>>>>> +			nv->frame_payload_size = cpu_to_le16(2048);
>>>>>>> 			nv->special_options[1] = BIT_7;
>>>>>>> 		} else if (IS_QLA2200(ha)) {
>>>>>>> 			nv->firmware_options[0] = BIT_2 | BIT_1;
>>>>>>> 			nv->firmware_options[1] = BIT_7 | BIT_5;
>>>>>>> 			nv->add_firmware_options[0] = BIT_5;
>>>>>>> 			nv->add_firmware_options[1] = BIT_5 | BIT_4;
>>>>>>> -			nv->frame_payload_size = 1024;
>>>>>>> +			nv->frame_payload_size = cpu_to_le16(1024);
>>>>>>> 		} else if (IS_QLA2100(ha)) {
>>>>>>> 			nv->firmware_options[0] = BIT_3 | BIT_1;
>>>>>>> 			nv->firmware_options[1] = BIT_5;
>>>>>>> -			nv->frame_payload_size = 1024;
>>>>>>> +			nv->frame_payload_size = cpu_to_le16(1024);
>>>>>>> 		}
>>>>>>> 
>>>>>>> 		nv->max_iocb_allocation = cpu_to_le16(256);
>>>>>>> 
>>>>>>> -- 
>>>>>>> René Rebe, ExactCODE GmbH, Lietzenburger Str. 42, DE-10789 Berlin
>>>>>>> https://urldefense.com/v3/__https://exactcode.com__;!!GqivPVa7Brio!KU2euUgVJIRXqzU0RdhkxvMdgtotnSUfdk9KmK73n26lyGlTMhmSvyadcgXXxI-1EV4u$  | https://urldefense.com/v3/__https://t2sde.org__;!!GqivPVa7Brio!KU2euUgVJIRXqzU0RdhkxvMdgtotnSUfdk9KmK73n26lyGlTMhmSvyadcgXXxAAjd8CY$  | https://urldefense.com/v3/__https://rene.rebe.de__;!!GqivPVa7Brio!KU2euUgVJIRXqzU0RdhkxvMdgtotnSUfdk9KmK73n26lyGlTMhmSvyadcgXXxDUjMdad$ 
>>>>>> 
>>>>>> --
>>>>>> Himanshu Madhani	 Oracle Linux Engineering
>>>>>> 
>>>>> 
>>>>> -- 
>>>>> ExactCODE GmbH, Lietzenburger Str. 42, DE-10789 Berlin, https://urldefense.com/v3/__https://exactcode.com__;!!GqivPVa7Brio!L6-irbVsNXqZh_TSb_WyaBZ1S3Evo18GqWr8hX2Z-tNl3rZbWv0orEt7Igy_n-uIVWXr$ 
>>>>> https://urldefense.com/v3/__https://exactscan.com__;!!GqivPVa7Brio!L6-irbVsNXqZh_TSb_WyaBZ1S3Evo18GqWr8hX2Z-tNl3rZbWv0orEt7Igy_n2dniKkK$  | https://urldefense.com/v3/__https://ocrkit.com__;!!GqivPVa7Brio!L6-irbVsNXqZh_TSb_WyaBZ1S3Evo18GqWr8hX2Z-tNl3rZbWv0orEt7Igy_n-v2wVJD$  | https://urldefense.com/v3/__https://t2sde.org__;!!GqivPVa7Brio!L6-irbVsNXqZh_TSb_WyaBZ1S3Evo18GqWr8hX2Z-tNl3rZbWv0orEt7Igy_n9g--eFu$  | https://urldefense.com/v3/__https://rene.rebe.de__;!!GqivPVa7Brio!L6-irbVsNXqZh_TSb_WyaBZ1S3Evo18GqWr8hX2Z-tNl3rZbWv0orEt7Igy_nxllUxx0$
>>>> 
>>>> --
>>>> Himanshu Madhani	 Oracle Linux Engineering
>>>> 
>>> 
>>> -- 
>>> ExactCODE GmbH, Lietzenburger Str. 42, DE-10789 Berlin, https://urldefense.com/v3/__https://exactcode.com__;!!GqivPVa7Brio!Jsf7iuXhoEimJ56ynA6RrwNm3nkfk3ATaMfNVTUhnU9-NfIZT3eVBiXtsQHXX6haBk6D$ 
>>> https://urldefense.com/v3/__https://exactscan.com__;!!GqivPVa7Brio!Jsf7iuXhoEimJ56ynA6RrwNm3nkfk3ATaMfNVTUhnU9-NfIZT3eVBiXtsQHXX4W9vLaa$  | https://urldefense.com/v3/__https://ocrkit.com__;!!GqivPVa7Brio!Jsf7iuXhoEimJ56ynA6RrwNm3nkfk3ATaMfNVTUhnU9-NfIZT3eVBiXtsQHXX04ZQeL4$  | https://urldefense.com/v3/__https://t2sde.org__;!!GqivPVa7Brio!Jsf7iuXhoEimJ56ynA6RrwNm3nkfk3ATaMfNVTUhnU9-NfIZT3eVBiXtsQHXX6DRH0bV$  | https://urldefense.com/v3/__https://rene.rebe.de__;!!GqivPVa7Brio!Jsf7iuXhoEimJ56ynA6RrwNm3nkfk3ATaMfNVTUhnU9-NfIZT3eVBiXtsQHXXz0D-Wul$
>> 
>> --
>> Himanshu Madhani	 Oracle Linux Engineering
>> 
> 
> -- 
> ExactCODE GmbH, Lietzenburger Str. 42, DE-10789 Berlin, https://urldefense.com/v3/__https://exactcode.com__;!!GqivPVa7Brio!Pzi_Eeyo1QdtyP0r5gMlCBHiq2DPWzBnz2dTVcfduR8O8gSkBXIZ3RI4DP0Q74GDxqJE$ 
> https://urldefense.com/v3/__https://exactscan.com__;!!GqivPVa7Brio!Pzi_Eeyo1QdtyP0r5gMlCBHiq2DPWzBnz2dTVcfduR8O8gSkBXIZ3RI4DP0Q76FLfX-m$  | https://urldefense.com/v3/__https://ocrkit.com__;!!GqivPVa7Brio!Pzi_Eeyo1QdtyP0r5gMlCBHiq2DPWzBnz2dTVcfduR8O8gSkBXIZ3RI4DP0Q70Zxm72q$  | https://urldefense.com/v3/__https://t2sde.org__;!!GqivPVa7Brio!Pzi_Eeyo1QdtyP0r5gMlCBHiq2DPWzBnz2dTVcfduR8O8gSkBXIZ3RI4DP0Q79_X62BE$  | https://urldefense.com/v3/__https://rene.rebe.de__;!!GqivPVa7Brio!Pzi_Eeyo1QdtyP0r5gMlCBHiq2DPWzBnz2dTVcfduR8O8gSkBXIZ3RI4DP0Q71A3vvWa$ 
> 

--
Himanshu Madhani	 Oracle Linux Engineering





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux