[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v8 17/24] x86: L2 CAT: implement CPU init and free flow.
On 17-03-09 08:04:35, Jan Beulich wrote: > >>> On 15.02.17 at 09:49, <yi.y.sun@xxxxxxxxxxxxxxx> wrote: > > @@ -684,6 +686,53 @@ struct feat_ops l3_cdp_ops = { > > .write_msr = l3_cdp_write_msr, > > }; > > > > +/* L2 CAT callback functions implementation. */ > > +static void l2_cat_init_feature(struct cpuid_leaf regs, > > const struct cpuid_leaf * (and of course I should have noticed this > already in earlier patches, but I didn't) > Will fixed this from beginning. > > + struct feat_node *feat, > > + struct psr_socket_info *info) > > +{ > > + struct psr_cat_hw_info l2_cat = { }; > > I realize Konrad did ask for the initializer here, but it's really pointless > to have such when both structure fields get very obviously set right > below. If you want an initializer, just set the fields to their final values. > Got it. Thanks! > > + unsigned int socket; > > + > > + /* No valid values so do not enable the feature. */ > > + if ( !regs.a || !regs.d ) > > + return; > > + > > + l2_cat.cbm_len = (regs.a & CAT_CBM_LEN_MASK) + 1; > > + l2_cat.cos_max = min(opt_cos_max, regs.d & CAT_COS_MAX_MASK); > > + > > + /* cos=0 is reserved as default cbm(all ones). */ > > + feat->cos_reg_val[0] = (1ull << l2_cat.cbm_len) - 1; > > + > > + feat->feature = PSR_SOCKET_L2_CAT; > > + ASSERT(!test_bit(PSR_SOCKET_L2_CAT, &info->feat_mask)); > > + __set_bit(PSR_SOCKET_L2_CAT, &info->feat_mask); > > + > > + feat->info.l2_cat_info = l2_cat; > > + > > + info->nr_feat++; > > Is this field really used for anything? I don't recall seeing other than > these increments. > Just for a record. Will remove it. > Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |