Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-24 Thread Simon Peeters
2016-02-18 19:16 GMT+01:00 Lennart Poettering :
> On Thu, 18.02.16 11:32, Daniel Mack (dan...@zonque.org) wrote:
>
>> On 02/17/2016 08:02 PM, Umut Tezduyar Lindskog wrote:
>> > Hi,
>> >
>> > src/shared & src/basic have very useful code that upstream have been
>> > static linking to most binaries. My understanding is that we haven’t
>> > been feeling comfortable about the API to make these paths a
>> > standalone library (or include them in libsystemd).
>>
>> That's correct.
>>
>> > Now that we started duplicating the code outside of systemd main
>> > repo, wouldn’t it be wise to make it a library even if it was
>> > something like libsystemd_onlyandonlyinternal.so.
>> >
>> > For people who can follow upstream’s speed and catch up with API
>> > changes we would gain:
>>
>> I see your point, and that's one reason why we are not splitting out
>> more packages. Downstream deviation would be cumbersome to handle, and
>> providing API/ABI stability for a library is considered outside of the
>> scope of the systemd project. And without this guarantee, things will
>> break all the time, so that's not a win.
>>
>> In the case of bootchart, however, I believe amount of code this small
>> tool shares with the rest of systemd (from src/shared and src/basic) is
>> small enough to justify an exception. And things like lists, hashmaps
>> and trivial file parses could eventually even be solved differently,
>> with other libraries or whatever, if the maintainer decides so.
>>
>> Auke, did you have a look at the current code base of the standalone
>> repo? Does it look feasible to you?
>
> I'd be willing to explore the idea where we make src/basic a somewhat
> self-contained dir that could be imported as git submodule like gnulib
> (as suggested by Armin) by other packages. Key would be that they
> pinpoint a specific revision though, as we'd not provide API compat
> for this.
>
> Of course, we should do so only if there are actually projects IRL
> that are interested in this.

definitely, even though most of the C code I write nowadays is are toy
projects,I almost always start of by copying the shared stuff from
systemd.

I also think having these tools easily available will in general make
it more easy to write quality C code. (and reduce NIH)

> I am fine with making the code in src/basic more reusable, I am not
> very keen on establishing a fixed API for it though.
>
> Lennart
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-24 Thread Oliver Henshaw
On 17 February 2016 at 17:17, Lennart Poettering  wrote:
> On Wed, 17.02.16 17:03, Jóhann B. Guðmundsson (johan...@gmail.com) wrote:
>
>>
>>
>> On 02/17/2016 04:51 PM, Daniel Mack wrote:
>> >Hey,
>> >
>> >[I've put all people in Cc who have had more than one commit related to
>> >systemd-bootchart in the past]
>> >
>> >As part of our spring cleaning, we've been thinking about giving
>> >systemd-bootchart a new home, in a new repository of its own. I've been
>> >working on this and put the result here:
>>
>> What's the reason for splitting it out into it's own repository as what's
>> the criteria you used to determine that which may or may not be applicable
>> to other bits of systemd?+
>
> Also, on of the major
> issues was that we trouble testing this, simply because distro kernels
> usually don't turn on the necessary kernel features to make it work
> (Fedora for example turns this off, because of the performance
> penalty).

If you're talking about CONFIG_SCHEDSTATS, I can see that it has been
enabled (with little fanfare) in kernel updates for Fedora 22 and
later. Or are you referring to other kernel features? There might
still be missing features in Fedora kernels, but nothing that prevents
the bootcharts from being created.
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-23 Thread Lennart Poettering
On Mon, 22.02.16 10:45, Kok, Auke-jan H (auke-jan.h@intel.com) wrote:

> On Wed, Feb 17, 2016 at 4:49 PM, Zbigniew Jędrzejewski-Szmek
>  wrote:
> > On Wed, Feb 17, 2016 at 09:17:51AM -0800, Kok, Auke-jan H wrote:
> >> Splitting it out increases that potential and will allow
> >> systemd-bootchart to evolve out of cycle again, and look a bit over
> >> the fence. I've reviewed most of the changes to it, and noticed a bit
> >> of a drop of risky commits, and those are the ones that are going to
> >> be needed for this project to make it a useful tool in the future.
> >>
> >> So, I think this is a great move, one that certainly will motivate me
> >> to engage more deeply again :)
> > Hi Auke,
> >
> > what kind of big changes would you have in mind?
> > Just the fact of being in one repo with systemd should not have
> > much effect on changes to bootchart which is mostly standalone...
> 
> I have been asked on several occasions to make bootchart more
> palatable for other OS's, including ChromeOS and even Android. This
> has previously been shelved entirely, and I don't know if it's
> currently even feasible, but at least logistically it should be a lot
> easier to attempt.
> 
> The rest of the things I was looking at were items that being in-tree
> did not affect, like new ways of grouping the process bars, better IO
> visualization, etc.

Auke, could you have a look at
https://github.com/systemd/systemd/pull/2664 and give your blessing? 

Lennart

-- 
Lennart Poettering, Red Hat
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-23 Thread Lennart Poettering
On Wed, 17.02.16 17:03, Jóhann B. Guðmundsson (johan...@gmail.com) wrote:

> 
> 
> On 02/17/2016 04:51 PM, Daniel Mack wrote:
> >Hey,
> >
> >[I've put all people in Cc who have had more than one commit related to
> >systemd-bootchart in the past]
> >
> >As part of our spring cleaning, we've been thinking about giving
> >systemd-bootchart a new home, in a new repository of its own. I've been
> >working on this and put the result here:
> 
> What's the reason for splitting it out into it's own repository as what's
> the criteria you used to determine that which may or may not be applicable
> to other bits of systemd?+

We have been discussing splitting this out for a while, and the lines
are a bit blurry. In the case of bootchart a couple of different
factors came into place: the fact that it's still relatively little
intertwined with the rest of the codebase and that it's more of a
"debugging" tool thatn core functionality. Also, on of the major
issues was that we trouble testing this, simply because distro kernels
usually don't turn on the necessary kernel features to make it work
(Fedora for example turns this off, because of the performance
penalty). It's primarily an excercise in lowering the maintance burden
of core systemd, as bootchart (in particular because it's more of a
debugging tool) doesn't really require the constant love and strict
release cycle as the rest of the project.

Lennart

-- 
Lennart Poettering, Red Hat
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-23 Thread Lennart Poettering
On Thu, 18.02.16 11:32, Daniel Mack (dan...@zonque.org) wrote:

> On 02/17/2016 08:02 PM, Umut Tezduyar Lindskog wrote:
> > Hi,
> > 
> > src/shared & src/basic have very useful code that upstream have been
> > static linking to most binaries. My understanding is that we haven’t
> > been feeling comfortable about the API to make these paths a
> > standalone library (or include them in libsystemd).
> 
> That's correct.
> 
> > Now that we started duplicating the code outside of systemd main
> > repo, wouldn’t it be wise to make it a library even if it was
> > something like libsystemd_onlyandonlyinternal.so.
> > 
> > For people who can follow upstream’s speed and catch up with API
> > changes we would gain:
> 
> I see your point, and that's one reason why we are not splitting out
> more packages. Downstream deviation would be cumbersome to handle, and
> providing API/ABI stability for a library is considered outside of the
> scope of the systemd project. And without this guarantee, things will
> break all the time, so that's not a win.
> 
> In the case of bootchart, however, I believe amount of code this small
> tool shares with the rest of systemd (from src/shared and src/basic) is
> small enough to justify an exception. And things like lists, hashmaps
> and trivial file parses could eventually even be solved differently,
> with other libraries or whatever, if the maintainer decides so.
> 
> Auke, did you have a look at the current code base of the standalone
> repo? Does it look feasible to you?

I'd be willing to explore the idea where we make src/basic a somewhat
self-contained dir that could be imported as git submodule like gnulib
(as suggested by Armin) by other packages. Key would be that they
pinpoint a specific revision though, as we'd not provide API compat
for this.

Of course, we should do so only if there are actually projects IRL
that are interested in this.

I am fine with making the code in src/basic more reusable, I am not
very keen on establishing a fixed API for it though.

Lennart

-- 
Lennart Poettering, Red Hat
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-22 Thread Kok, Auke-jan H
On Wed, Feb 17, 2016 at 4:49 PM, Zbigniew Jędrzejewski-Szmek
 wrote:
> On Wed, Feb 17, 2016 at 09:17:51AM -0800, Kok, Auke-jan H wrote:
>> Splitting it out increases that potential and will allow
>> systemd-bootchart to evolve out of cycle again, and look a bit over
>> the fence. I've reviewed most of the changes to it, and noticed a bit
>> of a drop of risky commits, and those are the ones that are going to
>> be needed for this project to make it a useful tool in the future.
>>
>> So, I think this is a great move, one that certainly will motivate me
>> to engage more deeply again :)
> Hi Auke,
>
> what kind of big changes would you have in mind?
> Just the fact of being in one repo with systemd should not have
> much effect on changes to bootchart which is mostly standalone...

I have been asked on several occasions to make bootchart more
palatable for other OS's, including ChromeOS and even Android. This
has previously been shelved entirely, and I don't know if it's
currently even feasible, but at least logistically it should be a lot
easier to attempt.

The rest of the things I was looking at were items that being in-tree
did not affect, like new ways of grouping the process bars, better IO
visualization, etc.

Auke
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-19 Thread Alexander Sverdlin
Hello Daniel,

On 17/02/16 17:51, Daniel Mack wrote:
> As part of our spring cleaning, we've been thinking about giving
> systemd-bootchart a new home, in a new repository of its own. I've been
> working on this and put the result here:
> 
>   https://github.com/systemd/systemd-bootchart
> 
> This repository contains a stripped down set of the utility functions we
> have in src/shared and src/basic in systemd, with most of those which
> bootchart doesn't use removed. The man page and service file etc. are
> all in the new repository. A new GitHub team was created for maintainers
> of that code, and I'm willing to add more people to it, just let me
> know. Auke, you are the official maintainer of the thing, so I'd put you
> in that group anyway.
> 
> I have a local patch that removes the current sources from systemd, but
> before I put that into a pull request, I'd appreciate some feedback, so
> please let me know if the standalone version of that tool works for you.

I've cross-built it for ARM v7 without problems and it seems to work not
worse than before.

Regards,
Alex.
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-17 Thread Zbigniew Jędrzejewski-Szmek
On Wed, Feb 17, 2016 at 09:17:51AM -0800, Kok, Auke-jan H wrote:
> On Wed, Feb 17, 2016 at 9:03 AM, Jóhann B. Guðmundsson
>  wrote:
> > On 02/17/2016 04:51 PM, Daniel Mack wrote:
> >> [I've put all people in Cc who have had more than one commit related to
> >> systemd-bootchart in the past]
> >>
> >> As part of our spring cleaning, we've been thinking about giving
> >> systemd-bootchart a new home, in a new repository of its own. I've been
> >> working on this and put the result here:
> >
> > What's the reason for splitting it out into it's own repository as what's
> > the criteria you used to determine that which may or may not be applicable
> > to other bits of systemd?+
> 
> When this code was merged into systemd originally it was by itself
> already a fairly useful tool, and the potential to benefit systemd as
> a project was enormous. That potential has subsided in the last two
> years significantly as the community pushing systemd has (I think)
> learned to be critical about additions to the code and the impact. As
> such the beneficial component of synergy has faded a bit, and it may
> actually hinder other projects from adopting systemd-bootchart.
> 
> Splitting it out increases that potential and will allow
> systemd-bootchart to evolve out of cycle again, and look a bit over
> the fence. I've reviewed most of the changes to it, and noticed a bit
> of a drop of risky commits, and those are the ones that are going to
> be needed for this project to make it a useful tool in the future.
> 
> So, I think this is a great move, one that certainly will motivate me
> to engage more deeply again :)
Hi Auke,

what kind of big changes would you have in mind?
Just the fact of being in one repo with systemd should not have
much effect on changes to bootchart which is mostly standalone...

Zbyszek
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-17 Thread Armin K.

On 17.2.2016 20:02, Umut Tezduyar Lindskog wrote:

Hi,

src/shared & src/basic have very useful code that upstream have been static 
linking to most binaries. My understanding is that we haven’t been feeling 
comfortable about the API to make these paths a standalone library (or include them 
in libsystemd).

Now that we started duplicating the code outside of systemd main repo, wouldn’t 
it be wise to make it a library even if it was something like 
libsystemd_onlyandonlyinternal.so.

For people who can follow upstream’s speed and catch up with API changes we 
would gain:

A) No duplication of useful code.
B) Reduce the binary sizes.

Umut



More like a separate project that can be imported as submodule where 
necessary (say, like gnulib). Probably nobody has any will to make that 
happen though.

___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-17 Thread Umut Tezduyar Lindskog
Hi,

src/shared & src/basic have very useful code that upstream have been static 
linking to most binaries. My understanding is that we haven’t been feeling 
comfortable about the API to make these paths a standalone library (or include 
them in libsystemd).

Now that we started duplicating the code outside of systemd main repo, wouldn’t 
it be wise to make it a library even if it was something like 
libsystemd_onlyandonlyinternal.so.

For people who can follow upstream’s speed and catch up with API changes we 
would gain:

A) No duplication of useful code.
B) Reduce the binary sizes.

Umut

> On Feb 17, 2016, at 5:51 PM, Daniel Mack  wrote:
> 
> Hey,
> 
> [I've put all people in Cc who have had more than one commit related to
> systemd-bootchart in the past]
> 
> As part of our spring cleaning, we've been thinking about giving
> systemd-bootchart a new home, in a new repository of its own. I've been
> working on this and put the result here:
> 
>  https://github.com/systemd/systemd-bootchart
> 
> This repository contains a stripped down set of the utility functions we
> have in src/shared and src/basic in systemd, with most of those which
> bootchart doesn't use removed. The man page and service file etc. are
> all in the new repository. A new GitHub team was created for maintainers
> of that code, and I'm willing to add more people to it, just let me
> know. Auke, you are the official maintainer of the thing, so I'd put you
> in that group anyway.
> 
> I have a local patch that removes the current sources from systemd, but
> before I put that into a pull request, I'd appreciate some feedback, so
> please let me know if the standalone version of that tool works for you.
> 
> 
> Thanks,
> Daniel
> ___
> systemd-devel mailing list
> systemd-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/systemd-devel

___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-17 Thread Martin Pitt
Daniel Mack [2016-02-17 18:09 +0100]:
> Barely anyone of the people working on systemd uses that tool, so it
> sees little testing.

For the record, I have automatic integration tests for that to ensure
that it stays working in principle, i. e. it boots and produces an
.svg file. Of course the test does not "look" at the SVG to figure if
the information in there is correct. But it's certainly far from
bitrotting, and occasionally I check the .svg result too.

This is of course rather orthogonal wrt. where the code lives, we want
to continue testing it in both cases. I'd say the "split or not"
question mostly depends on how much of shared/ needs to be duplicated
and whether that will make the future maintenance easier or harder.
"This repository contains a stripped down set of the utility functions
we have in src/shared and src/basic in systemd" certainly doesn't
sound promising in that regard -- if an external
systemd-bootchart would just link against the official libsystemd.so
and not use any internal API, then splitting it out would be perfectly
justifiable, but as long as it depends on a code copy that smells a
bit questionable?

Martin

-- 
Martin Pitt| http://www.piware.de
Ubuntu Developer (www.ubuntu.com)  | Debian Developer  (www.debian.org)
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-17 Thread Kok, Auke-jan H
On Wed, Feb 17, 2016 at 9:03 AM, Jóhann B. Guðmundsson
 wrote:
> On 02/17/2016 04:51 PM, Daniel Mack wrote:
>> [I've put all people in Cc who have had more than one commit related to
>> systemd-bootchart in the past]
>>
>> As part of our spring cleaning, we've been thinking about giving
>> systemd-bootchart a new home, in a new repository of its own. I've been
>> working on this and put the result here:
>
> What's the reason for splitting it out into it's own repository as what's
> the criteria you used to determine that which may or may not be applicable
> to other bits of systemd?+

When this code was merged into systemd originally it was by itself
already a fairly useful tool, and the potential to benefit systemd as
a project was enormous. That potential has subsided in the last two
years significantly as the community pushing systemd has (I think)
learned to be critical about additions to the code and the impact. As
such the beneficial component of synergy has faded a bit, and it may
actually hinder other projects from adopting systemd-bootchart.

Splitting it out increases that potential and will allow
systemd-bootchart to evolve out of cycle again, and look a bit over
the fence. I've reviewed most of the changes to it, and noticed a bit
of a drop of risky commits, and those are the ones that are going to
be needed for this project to make it a useful tool in the future.

So, I think this is a great move, one that certainly will motivate me
to engage more deeply again :)

Auke
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-17 Thread Daniel Mack
On 02/17/2016 06:03 PM, Jóhann B. Guðmundsson wrote:
> 
> 
> On 02/17/2016 04:51 PM, Daniel Mack wrote:
>> Hey,
>>
>> [I've put all people in Cc who have had more than one commit related to
>> systemd-bootchart in the past]
>>
>> As part of our spring cleaning, we've been thinking about giving
>> systemd-bootchart a new home, in a new repository of its own. I've been
>> working on this and put the result here:
> 
> What's the reason for splitting it out into it's own repository as 
> what's the criteria you used to determine that which may or may not be 
> applicable to other bits of systemd?+

Barely anyone of the people working on systemd uses that tool, so it
sees little testing. Also, the code works well in a non-systemd
environment, so an external repository seems like a better fit.

We don't have any other bits in mind so far to which this applies.


Thanks,
Daniel

___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] Moving systemd-bootchart to a standalone repository

2016-02-17 Thread Jóhann B . Guðmundsson



On 02/17/2016 04:51 PM, Daniel Mack wrote:

Hey,

[I've put all people in Cc who have had more than one commit related to
systemd-bootchart in the past]

As part of our spring cleaning, we've been thinking about giving
systemd-bootchart a new home, in a new repository of its own. I've been
working on this and put the result here:


What's the reason for splitting it out into it's own repository as 
what's the criteria you used to determine that which may or may not be 
applicable to other bits of systemd?+


JBG
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel