Changed to emit NL. Cat to console is pretty ugly otherwise. The raw data exported in build_info.c is raw though (no NL char at end).
On Tue, Dec 15, 2015 at 5:54 AM, Davide Libenzi <[email protected]> wrote: > One question. Should we emit newline on those version strings? > Currently, it is just the raw data. > Linux does emit newline, at least in the most I tried. > > > On Tue, Dec 15, 2015 at 5:50 AM, Davide Libenzi <[email protected]> > wrote: > >> Branch updated for Ron's likings ☺ >> >> >> On Mon, Dec 14, 2015 at 9:10 PM, Davide Libenzi <[email protected]> >> wrote: >> >>> You got it Ron! :) >>> >>> >>> On Dec 14, 2015, at 20:38, ron minnich <[email protected]> wrote: >>> >>> This is a pretty sweet device but I have a suggestion. Would it be >>> possible to turn those variables (kernelpath, commitid, and so on) into >>> symbols, something *equivalent* to this (I'm not saying this is the only >>> way to do it): >>> char *KernelPath = "whatever" >>> and so on, i.e. just generate a C file full of such declarations, then >>> in your device, you can, given the QID you get from the walk, on open, use >>> QID.path to index into an array of pointers to those variables, then use the >>> readstr >>> func to copy the value out to user mode? >>> >>> This would avoid the need to parse the variables. Just an idea. >>> >>> If you're not liking the use of the QID.Path you could still maybe do >>> this in a way that avoids searching for the : and so on. >>> >>> ron >>> >>> On Mon, Dec 14, 2015 at 8:33 PM 'Davide Libenzi' via Akaros < >>> [email protected]> wrote: >>> >>>> As far as Akaros perf, I will append a new commit there. >>>> I needed the kernel size also, in theory, but then it's like the dog >>>> biting his tail 😀 >>>> I don't know it until I am creating it. >>>> But, I don't really need that. >>>> Linux perf wants to know which ELF to use to look for symbols at a >>>> given address, and I can assume from the kernel load address, up-a-while, >>>> only the kernel ELF is there. >>>> So I can just pass a relatively big number as size, and be done with it. >>>> >>>> >>>> >>>> On Mon, Dec 14, 2015 at 8:28 PM, Davide Libenzi <[email protected]> >>>> wrote: >>>> >>>>> The new machinery create an info file like: >>>>> >>>>> KernelPath: >>>>> /usr/local/google/home/src/akaros/akaros/obj/kern/akaros-kernel-64b >>>>> Date: Mon Dec 14 20:21:26 PST 2015 >>>>> Host: dlibenzi.mtv.corp.google.com >>>>> CommitID: 769cc0c093f9c9b9f41c6387d0272e317e0e62c3 >>>>> >>>>> And stick it into the kernel ELF file. >>>>> The new device reads the information out into separate files (path, >>>>> date, host, commit). >>>>> This branch is based upon the devarch_msr_perf one. >>>>> >>>>> >>>>> >>>>> https://github.com/dlibenzi/akaros/compare/devarch_msr_perf...dlibenzi:build_info >>>>> >>>>> >>>>> The following changes since commit >>>>> b1e8b1a61a4e0493ef3605910477459fe30eaa43: >>>>> >>>>> Move Linux perf format conversion into perf tool, drop kprof2perf >>>>> (2015-12-14 14:27:06 -0800) >>>>> >>>>> are available in the git repository at: >>>>> >>>>> [email protected]:dlibenzi/akaros build_info >>>>> >>>>> for you to fetch changes up to >>>>> 25c241765f4395cd9ff910688c5f4afc91b8c2d1: >>>>> >>>>> Added #version device (2015-12-14 20:23:39 -0800) >>>>> >>>>> ---------------------------------------------------------------- >>>>> Davide Libenzi (3): >>>>> Added makefile machinary to generate a build info ELF section >>>>> Added memstr() API to allow to search strings in memory >>>>> Added #version device >>>>> >>>>> Makefile | 39 +++++++---- >>>>> kern/drivers/dev/Kbuild | 1 + >>>>> kern/drivers/dev/version.c | 157 >>>>> +++++++++++++++++++++++++++++++++++++++++++++ >>>>> kern/include/string.h | 1 + >>>>> kern/src/strstr.c | 19 ++++++ >>>>> 5 files changed, 203 insertions(+), 14 deletions(-) >>>>> create mode 100644 kern/drivers/dev/version.c >>>>> >>>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Akaros" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> To post to this group, send email to [email protected]. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Akaros" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To post to this group, send email to [email protected]. >>> For more options, visit https://groups.google.com/d/optout. >>> >>> >> > -- You received this message because you are subscribed to the Google Groups "Akaros" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. For more options, visit https://groups.google.com/d/optout.
