lkml.org 
[lkml]   [2009]   [Jun]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [Patch 04/12] GRU - collect per-context user statistics
    On Mon, 08 Jun 2009 12:16:52 -0500
    steiner@sgi.com wrote:

    > /*
    > + * Fetch GSEG statisticss
    > + */
    > +long gru_get_gseg_statistics(unsigned long arg)
    > +{
    > + struct gru_thread_state *gts;
    > + struct gru_get_gseg_statistics_req req;
    > +
    > + if (copy_from_user(&req, (void __user *)arg, sizeof(req)))
    > + return -EFAULT;
    > +
    > + gts = gru_find_lock_gts(req.gseg);
    > + if (gts) {
    > + memcpy(&req.stats, &gts->ustats, sizeof(gts->ustats));
    > + gru_unlock_gts(gts);
    > + } else {
    > + memset(&req.stats, 0, sizeof(gts->ustats));
    > + }
    > +
    > + if (copy_to_user((void __user *)arg, &req, sizeof(req)))
    > + return -EFAULT;
    > +
    > + return 0;
    > +}

    So.. what's happening in the super-secret undocumented gts==NULL path?

    It _looks_ like userspace passed into this ioctl a handle for something
    which the kernel doesn't know about. If so, shouldn't we return
    -EINVAL or something?



    \
     
     \ /
      Last update: 2009-06-09 01:11    [W:0.021 / U:1.016 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site