Skip to content

mcgrof/backports-cocci-stats

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Statistics of backporting with Coccinelle
=========================================

This package contains a set of tools to help generate statistics on use of
coccinelle to backport. We define two metrics of efficiency, development
efficiency and maintenance efficiency. For development efficiency, we start
with the number of insertions and deletions that a semantic patch generates,
ignoring context information, as reported by  git diff --stat, and take the
ratio of this number with the size of the semantic patch, exclusive of comments and
whitespace. The number of insertions and deletions represents the number of
manual changes required when modifying the code. Development efficiency thus
represents the initial coding savings induced by using semantic patches. For
maintenance efficiency, we compute the same ratio, but this time consider the
complete size of the patch, not only the insertions and deletions, but also all
the metadata information contained within the patch generated by the semantic
patch, including file names, file offsets, and (unmodified) context lines; all
of this metadata must also be kept up to date so that the patch command can
apply the patch to the relevant files. A development (resp., maintenance)
efficiency value of 1 means the semantic patch has the same number of lines as
the changes (resp., lines) in the patch series it replaces. A development
(resp., maintenance) efficiency value of 2 means the semantic patch is
producing twice as many changes (resp., patch lines) as the number of lines in
the semantic patch.

We also provide totals in comparison to regular patches used.

Maintenance efficiency
======================

   Size of patch (insertions + deletions + context)
------------------------------------------------------
                   Size of SmPL patch

Developer efficiency
====================

   Size of relevant changes of patch(insertions + deletions)
-------------------------------------------------------------
                   Size of SmPL patch

Build
=====

Run:

	make

Install
=======

Generate a backports release using --gitdebug option of gentree.py.
Then place the generated 'clean' file and gen-cocci-stats.sh into your
backports release, then just run ./gen-cocci-stats.sh

TODO
====

Implement in  Python and integrate into backports project.

About

Used to generate stats for evaluation of coccinelle on Linux backports

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published