All of lore.kernel.org
 help / color / mirror / Atom feed
From: srinivas pandruvada <srinivas.pandruvada@linux.intel.com>
To: Hans de Goede <hdegoede@redhat.com>, markgross@kernel.org
Cc: platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering
Date: Wed, 29 Jun 2022 07:14:34 -0700	[thread overview]
Message-ID: <4fa1d4befe5de6d402aeb72ec1ae9953789da3ec.camel@linux.intel.com> (raw)
In-Reply-To: <55a6470c-1ce5-b237-d3be-1b98e4dbe3ce@redhat.com>

Hi Hans,

Thanks for the review.

On Wed, 2022-06-29 at 12:00 +0200, Hans de Goede wrote:
> Hi,
> 
> On 6/27/22 23:50, Srinivas Pandruvada wrote:
> > 
[...]

> >  
> > +struct isst_if_pkg_info {
> > +       struct pci_dev *pci_dev[2];
> 
> This and (continued below) ...
> 
Didn't understand the comment.

> > +};
> > +
> >  static struct isst_if_cpu_info *isst_cpu_info;
> > +static struct isst_if_pkg_info *isst_pkg_info;
> > +
> >  #define ISST_MAX_PCI_DOMAINS   8
> >  
> >  static struct pci_dev *_isst_if_get_pci_dev(int cpu, int bus_no,
> > int dev, int fn)
> >  {
> > +       int pkg_id = topology_physical_package_id(cpu);
> >         struct pci_dev *matched_pci_dev = NULL;
> >         struct pci_dev *pci_dev = NULL;
> >         int no_matches = 0;
> > @@ -324,6 +331,8 @@ static struct pci_dev *_isst_if_get_pci_dev(int
> > cpu, int bus_no, int dev, int fn
> >                 }
> >  
> >                 if (node == isst_cpu_info[cpu].numa_node) {
> > +                       isst_pkg_info[pkg_id].pci_dev[bus_no] =
> > _pci_dev;
> > +
> 
> This and ...
> 
Please explain the comment.

> >                         pci_dev = _pci_dev;
> >                         break;
> >                 }
> > @@ -342,6 +351,9 @@ static struct pci_dev *_isst_if_get_pci_dev(int
> > cpu, int bus_no, int dev, int fn
> >         if (!pci_dev && no_matches == 1)
> >                 pci_dev = matched_pci_dev;
> >  
> > +       if (!pci_dev)
> > +               pci_dev = isst_pkg_info[pkg_id].pci_dev[bus_no];
> > +
> 
> This assumes that bus_no is never > 1, is this assumption enforced
> somewhere?
> 
Yes. That is checked at the beginning of function
   if (bus_no < 0 || bus_no > 1 || cpu < 0 || cpu >= nr_cpu_ids ||
            cpu >= num_possible_cpus())
	 return NULL;


> Also maybe make the 2 in:
> 
> > +struct isst_if_pkg_info {
> > +       struct pci_dev *pci_dev[2];
> 
> a #define ?
I will.

Thanks,
Srinivas

> 
> Regards,
> 
> Hans
> 
> 
> >         return pci_dev;
> >  }
> >  
> > @@ -417,10 +429,19 @@ static int isst_if_cpu_info_init(void)
> >         if (!isst_cpu_info)
> >                 return -ENOMEM;
> >  
> > +       isst_pkg_info = kcalloc(topology_max_packages(),
> > +                               sizeof(*isst_pkg_info),
> > +                               GFP_KERNEL);
> > +       if (!isst_pkg_info) {
> > +               kfree(isst_cpu_info);
> > +               return -ENOMEM;
> > +       }
> > +
> >         ret = cpuhp_setup_state(CPUHP_AP_ONLINE_DYN,
> >                                 "platform/x86/isst-if:online",
> >                                 isst_if_cpu_online, NULL);
> >         if (ret < 0) {
> > +               kfree(isst_pkg_info);
> >                 kfree(isst_cpu_info);
> >                 return ret;
> >         }
> > @@ -433,6 +454,7 @@ static int isst_if_cpu_info_init(void)
> >  static void isst_if_cpu_info_exit(void)
> >  {
> >         cpuhp_remove_state(isst_if_online_id);
> > +       kfree(isst_pkg_info);
> >         kfree(isst_cpu_info);
> >  };
> >  
> 


  reply	other threads:[~2022-06-29 14:15 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-27 21:50 [PATCH] platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering Srinivas Pandruvada
2022-06-28 20:16 ` Hans de Goede
2022-06-29 10:00 ` Hans de Goede
2022-06-29 14:14   ` srinivas pandruvada [this message]
2022-06-29 15:36     ` Hans de Goede

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4fa1d4befe5de6d402aeb72ec1ae9953789da3ec.camel@linux.intel.com \
    --to=srinivas.pandruvada@linux.intel.com \
    --cc=hdegoede@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=markgross@kernel.org \
    --cc=platform-driver-x86@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.