[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CO2PR11MB0088969E015C67811BC64E0197E80@CO2PR11MB0088.namprd11.prod.outlook.com>
Date: Mon, 22 Aug 2016 17:36:07 +0000
From: Yuval Mintz <Yuval.Mintz@...gic.com>
To: Raghu Vatsavayi <rvatsavayi@...iumnetworks.com>,
David Miller <davem@...emloft.net>
CC: netdev <netdev@...r.kernel.org>,
Derek Chickles <derek.chickles@...iumnetworks.com>,
Satanand Burla <satananda.burla@...iumnetworks.com>,
Felix Manlunas <felix.manlunas@...iumnetworks.com>,
Raghu Vatsavayi <raghu.vatsavayi@...iumnetworks.com>
Subject: RE: [PATCH net-next V3 09/18] liquidio: MSIX support for CN23XX
> + u64 time_threshold;
> + u64 cnt_threshold;
...
> + octeon_write_csr64(
> + oct, CN23XX_SLI_OQ_PKT_INT_LEVELS(oq_no),
> + ((u64)(time_threshold << 32 | cnt_threshold)));
No need for the cast.
> + if (!droq) {
> + dev_err(&oct->pci_dev->dev, "23XX bringup FIXME: oct
> pfnum:%d ioq_vector->ioq_num :%d droq is NULL\n",
> + oct->pf_num, ioq_vector->ioq_num);
> + return 0;
> + }
> + if (oct->msix_on != 1) {
> + if (intr64 & CN23XX_INTR_PKT_DATA)
> + oct->int_status |= OCT_DEV_INTR_PKT_DATA;
> + }
What's the significance of 1? Is it actually a Boolean?
> +static int msix_enable = 1;
What's the purpose of this static variable? Is there any way to change it?
> + if (OCTEON_CN23XX_PF(oct) && msix_enable) {
> + if (!oct->msix_entries) {
> + /* dev_err(&oct->pci_dev->dev,
> + * "Memory Alloc failed...\n");
> + * This is commenting due WARNING: Possible
> unnecessary
> + * out of memory' message
> + */
> + return 1;
> + }
Don't submit commented prints.
> + irqret = request_irq(msix_entries[num_ioq_vectors].vector,
> + liquidio_legacy_intr_handler, 0, "octeon",
> + oct);
> + if (irqret) {
> + dev_err(&oct->pci_dev->dev,
> + "OCTEON: Request_irq failed for MSIX interrupt
> Error: %d\n",
> + irqret);
> + kfree(oct->msix_entries);
> + return 1;
Shouldn't you also call pci_disable_msix() on error flow?
> + }
> + for (i = 0; i < num_ioq_vectors; i++) {
> + irqret = request_irq(msix_entries[i].vector,
> + liquidio_msix_intr_handler, 0,
> + "octeon", &oct->ioq_vector[i]);
> + if (irqret) {
> + dev_err(&oct->pci_dev->dev,
> + "OCTEON: Request_irq failed for MSIX
...
> + kfree(oct->msix_entries);
> + return 1;
Likewise
Powered by blists - more mailing lists