Messages in this thread | | | Date | Tue, 11 Mar 2014 14:37:51 +0100 | From | Jiri Olsa <> | Subject | Re: [PATCH 1/8] perf, tools: Add jsmn `jasmine' JSON parser |
| |
On Wed, Mar 05, 2014 at 11:49:31AM -0800, Andi Kleen wrote: > From: Andi Kleen <ak@linux.intel.com> >
SNIP
> +#endif /* __JSMN_H_ */ > diff --git a/tools/perf/util/json.c b/tools/perf/util/json.c > new file mode 100644 > index 0000000..48201114 > --- /dev/null > +++ b/tools/perf/util/json.c > @@ -0,0 +1,156 @@ > +/* Parse JSON files using the JSMN parser. */ > + > +/* > + * Copyright (c) 2014, Intel Corporation > + * All rights reserved. > + * > + * Redistribution and use in source and binary forms, with or without > + * modification, are permitted provided that the following conditions are met: > + * > + * 1. Redistributions of source code must retain the above copyright notice, > + * this list of conditions and the following disclaimer. > + * > + * 2. Redistributions in binary form must reproduce the above copyright > + * notice, this list of conditions and the following disclaimer in the > + * documentation and/or other materials provided with the distribution. > + * > + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS > + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT > + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS > + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE > + * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, > + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES > + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR > + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) > + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, > + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) > + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED > + * OF THE POSSIBILITY OF SUCH DAMAGE. > +*/ > + > +#include <stdlib.h> > +#include <string.h> > +#include <sys/mman.h> > +#include <sys/stat.h> > +#include <sys/fcntl.h> > +#include <stdio.h> > +#include <unistd.h> > +#include "jsmn.h" > +#include "json.h" > + > +#define roundup(x, y) (((x) + (y) - 1) & ~((y) - 1))
this one is defined in util/include/linux/kernel.h
jirka
| |