lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Mon, 10 Jul 2017 21:56:44 +0000
From:   Don Brace <don.brace@...rosemi.com>
To:     Meelis Roos <mroos@...ux.ee>, Christoph Hellwig <hch@...radead.org>
CC:     Laurence Oberman <loberman@...hat.com>,
        Jens Axboe <axboe@...nel.dk>,
        Linux Kernel list <linux-kernel@...r.kernel.org>,
        "linux-block@...r.kernel.org" <linux-block@...r.kernel.org>,
        Scott Benesh <scott.benesh@...rosemi.com>,
        Scott Teel <scott.teel@...rosemi.com>,
        "Kevin Barnett" <kevin.barnett@...rosemi.com>,
        "linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
        Hannes Reinecke <hare@...e.de>
Subject: RE: device support in hpsa, was: Re: OOPS from cciss_ioctl in
 4.12+git

So, adding adding  hpsa_allow_any=1 did not work...

When you added the 0x40800e11, did you add it to both tables?

/* define the PCI info for the cards we can control */
static const struct pci_device_id hpsa_pci_device_id[] = {
       {PCI_VENDOR_ID_COMPAQ, PCI_DEVICE_ID_COMPAQ_CISSB, 0x0E11, 0x4080},
...
{0,}
};

/*  board_id = Subsystem Device ID & Vendor ID
 *  product = Marketing Name for the board
 *  access = Address of the struct of function pointers
 */
static struct board_type products[] = {
{0x40800E11, "Smart Array 5i", &SA5B_access},


...
};

I added it at the very first entry to make it easier.


---
However, there is not a SA5B_access table in hpsa.h.

/*
 *  This card is the opposite of the other cards.
 *   0 turns interrupts on...
 *   0x04 turns them off...
 */
static void SA5B_intr_mask(ctlr_info_t *h, unsigned long val)
{
        if (val)
        { /* Turn interrupts on */
                h->interrupts_enabled = 1;
                writel(0, h->vaddr + SA5_REPLY_INTR_MASK_OFFSET);
                (void) readl(h->vaddr + SA5_REPLY_INTR_MASK_OFFSET);
        } else /* Turn them off */
        {
                h->interrupts_enabled = 0;
                writel( SA5B_INTR_OFF,
                        h->vaddr + SA5_REPLY_INTR_MASK_OFFSET);
                (void) readl(h->vaddr + SA5_REPLY_INTR_MASK_OFFSET);
        }
}


/*
 *      Returns true if an interrupt is pending..
 */
static bool SA5B_intr_pending(ctlr_info_t *h)
{
        unsigned long register_value  =
                readl(h->vaddr + SA5_INTR_STATUS);
#ifdef CCISS_DEBUG
        printk("cciss: intr_pending %lx\n", register_value);
#endif  /* CCISS_DEBUG */
        if( register_value &  SA5B_INTR_PENDING)
                return  1;
        return 0 ;
}


static struct access_method SA5B_access = {
        .submit_command = SA5_submit_command,
        .set_intr_mask = SA5B_intr_mask,
        .fifo_full = SA5_fifo_full,
        .intr_pending = SA5B_intr_pending,
        .command_completed = SA5_completed,
};



Can you try adding the two table entries and the SA5B definitions in hpsa.h?



> -----Original Message-----
> From: mroos@...h.ut.ee [mailto:mroos@...h.ut.ee] On Behalf Of Meelis
> Roos
> Sent: Monday, July 10, 2017 9:08 AM
> To: Christoph Hellwig <hch@...radead.org>
> Cc: Laurence Oberman <loberman@...hat.com>; Jens Axboe
> <axboe@...nel.dk>; Linux Kernel list <linux-kernel@...r.kernel.org>; linux-
> block@...r.kernel.org; Don Brace <don.brace@...rosemi.com>; Scott
> Benesh <scott.benesh@...rosemi.com>; Scott Teel
> <scott.teel@...rosemi.com>; Kevin Barnett
> <kevin.barnett@...rosemi.com>; linux-scsi@...r.kernel.org; Hannes
> Reinecke <hare@...e.de>
> Subject: Re: device support in hpsa, was: Re: OOPS from cciss_ioctl in 4.12+git
> 
> EXTERNAL EMAIL
> 
> 
> > On Fri, Jul 07, 2017 at 11:42:38AM -0400, Laurence Oberman wrote:
> > > What happens when  hpsa_allow_any=1 with the Smart Array 64xx
> > > It should probe.
> >
> > But only if it has a HP vendor ID as far as I can tell.  We'd
> > still need to add the compaq ids so that these controllers get
> > probed.  But maybe it's time to add them and flip the hpsa_allow_any
> > default (maybe conditionally on a config option?) and mark cciss
> > deprecated.
> 
> I added hpsa_allow_any=1, did not help.
> 
> Added a wildcard Compaq entry with RAID class, like the one for HP,
> still no go:
> 
> [    5.199125] hpsa 0000:00:04.0: unrecognized board ID: 0x40800e11, ignoring.
> [    5.282517] hpsa 0000:00:04.0: Board ID not found
> 
> Added specific PCI ID and subdevice ID quad and I still get the same
> messages and the adapter is ignored.
> 
> What am I doing wrong?
> 
> --
> Meelis Roos (mroos@...ux.ee)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ