lkml.org 
[lkml]   [2009]   [Sep]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/5] dynamic logical partitioning infrastructure
    Nathan Fontenot wrote:
    > +#include <linux/kernel.h>
    > +#include <linux/kref.h>
    > +#include <linux/notifier.h>
    > +#include <linux/proc_fs.h>
    > +#include <linux/spinlock.h>
    > +
    > +#include <asm/prom.h>
    > +#include <asm/machdep.h>
    > +#include <asm/uaccess.h>
    > +#include <asm/rtas.h>
    > +#include <asm/pSeries_reconfig.h>
    > +
    > +#define CFG_CONN_WORK_SIZE 4096
    > +static char workarea[CFG_CONN_WORK_SIZE];
    > +spinlock_t workarea_lock;

    This can be:

    static DEFINE_SPINLOCK(workarea_lock);

    Then you can get rid of the runtime initializer.

    > +
    > +int release_drc(u32 drc_index)
    > +{
    > + int dr_status, rc;
    > +
    > + rc = rtas_call(rtas_token("get-sensor-state"), 2, 2, &dr_status,
    > + DR_ENTITY_SENSE, drc_index);
    > + if (rc || dr_status != DR_ENTITY_PRESENT)
    > + return -1;
    > +
    > + rc = rtas_set_indicator(ISOLATION_STATE, drc_index, ISOLATE);
    > + if (rc)
    > + return -1;
    > +
    > + rc = rtas_set_indicator(ALLOCATION_STATE, drc_index, ALLOC_UNUSABLE);
    > + if (rc) {
    > + rtas_set_indicator(ISOLATION_STATE, drc_index, UNISOLATE);
    > + return -1;
    > + }

    Is there a better return value here that might be more descriptive than -1?


    > +
    > + return 0;
    > +}
    > +
    > +static int pseries_dlpar_init(void)
    > +{
    > + spin_lock_init(&workarea_lock);
    > +
    > + if (!machine_is(pseries))
    > + return 0;

    What's the point of this if check if you return 0 either way?

    > +
    > + return 0;
    > +}
    > +__initcall(pseries_dlpar_init);


    > Index: powerpc/arch/powerpc/platforms/pseries/reconfig.c
    > ===================================================================
    > --- powerpc.orig/arch/powerpc/platforms/pseries/reconfig.c 2009-09-11
    > 12:43:39.000000000 -0500
    > +++ powerpc/arch/powerpc/platforms/pseries/reconfig.c 2009-09-11
    > 12:51:52.000000000 -0500
    > @@ -95,7 +95,7 @@
    > return parent;
    > }
    >
    > -static BLOCKING_NOTIFIER_HEAD(pSeries_reconfig_chain);
    > +struct blocking_notifier_head pSeries_reconfig_chain =
    > BLOCKING_NOTIFIER_INIT(pSeries_reconfig_chain);

    Can't this just be?

    BLOCKING_NOTIFIER_HEAD(pSeries_reconfig_chain);

    --
    Brian King
    Linux on Power Virtualization
    IBM Linux Technology Center





    \
     
     \ /
      Last update: 2009-09-14 20:57    [W:0.027 / U:30.104 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site