Re: [PATCH] Re: [2.6.1] Kernel panic with ppa driver updates

walt
2004-02-08T05:05:38Z

viro@parcelfarce.linux.theplanet.co.uk wrote:
> On Sat, Feb 07, 2004 at 07:35:52PM -0800, walt wrote:

>>ppa: Version 2.07 (for Linux 2.4.x)
>>dev = dfd67940, dev->cur_cmd = 7232b2df
>>Unable to handle kernel paging request at virtual address 7232b403

> Aaaaaargh.... memset(dev, 0, sizeof(dev)); - spot the bug here...
>
> Fix follows. Linus, apply it, please. Amazing that it survives in modular
> case...
>
> diff -urN RC2-bk1-base/drivers/scsi/imm.c RC2-bk1-current/drivers/scsi/imm.c
> --- RC2-bk1-base/drivers/scsi/imm.c Thu Feb 5 18:48:49 2004
> +++ RC2-bk1-current/drivers/scsi/imm.c Sat Feb 7 22:44:16 2004
> @@ -1153,7 +1153,7 @@
> if (!dev)
> return -ENOMEM;
>
> - memset(dev, 0, sizeof(dev));
> + memset(dev, 0, sizeof(imm_struct));
>
> dev->base = -1;
> dev->mode = IMM_AUTODETECT;
> diff -urN RC2-bk1-base/drivers/scsi/ppa.c RC2-bk1-current/drivers/scsi/ppa.c
> --- RC2-bk1-base/drivers/scsi/ppa.c Thu Feb 5 18:48:57 2004
> +++ RC2-bk1-current/drivers/scsi/ppa.c Sat Feb 7 22:44:27 2004
> @@ -1010,7 +1010,7 @@
> dev = kmalloc(sizeof(ppa_struct), GFP_KERNEL);
> if (!dev)
> return -ENOMEM;
> - memset(dev, 0, sizeof(dev));
> + memset(dev, 0, sizeof(ppa_struct));
> dev->base = -1;
> dev->mode = PPA_AUTODETECT;
> dev->recon_tmo = PPA_RECON_TMO;
> -

Yes, it's fixed now. Thank you!