Bug 470424 - Review Request: libtopology - Libtopology is a library for discovering the hardware topology on Linux systems
Review Request: libtopology - Libtopology is a library for discovering the ha...
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Michael Schwendt
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2008-11-06 23:33 EST by Tony Breeds
Modified: 2008-11-19 09:46 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-11-19 09:46:15 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
bugs.michael: fedora‑review+
kevin: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Tony Breeds 2008-11-06 23:33:13 EST
Spec URL: http://bakeyournoodle.com/~tony/fedora/libtopology/libtopology.spec
SRPM URL: http://bakeyournoodle.com/~tony/fedora/libtopology/libtopology-0.3-0.1.fc9.src.rpm
Description: Libtopology is a library for discovering the hardware topology on Linux systems

This is my first packages and I seek sponsorship.  I have tested this .src.rpm with koji I expect you can see the build results at: https://koji.fedoraproject.org/koji/taskinfo?taskID=920506
Comment 1 Michael Schwendt 2008-11-09 19:29:59 EST
$ rpmlint -i libtopology-0.3-0.1.fc9.src.rpm
libtopology.src: E: description-line-too-long Libtopology is a library for discovering the hardware topology on Linux systems.
Your description lines must not exceed 79 characters. If a line is exceeding
this number, cut it to fit in two lines.


* Licence is: LGPLv2   (not GPLv2)


* Use %{_libdir} not %prefix/_lib as %_libdir is /usr/lib64 for
64-bit multi-arch platforms.


* Prefer "cp -p" or "install -p" when installing files.


* /usr/share/doc/libtopology-0.3/  is not included.
(Hint: Run "rpm -qlvp" on the built packages and notice missing
directory entries.)


* Is it really desired to put the documentation into a separate package?
The pkg is not even 100K in size. I would add the docs to the -devel pkg.
Comment 2 Tony Breeds 2008-11-09 20:09:30 EST
Firstly thank you for takign the time to review my package.

(In reply to comment #1)
> $ rpmlint -i libtopology-0.3-0.1.fc9.src.rpm
> libtopology.src: E: description-line-too-long Libtopology is a library for
> discovering the hardware topology on Linux systems.
> Your description lines must not exceed 79 characters. If a line is exceeding
> this number, cut it to fit in two lines.

Ah thanks.  the rpmlint version in fc9 doesn't issue this warning. I've grabbed the version from rawhide.
Fixed.
---
rpmlint -i SRPMS/libtopology-0.3-0.2.fc9.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
---

> * Licence is: LGPLv2   (not GPLv2)

So is is Fixed.

> * Use %{_libdir} not %prefix/_lib as %_libdir is /usr/lib64 for
> 64-bit multi-arch platforms.

I swear I tried that and the .so files were landing in /usr/lib (on 64-bit). Fixed.

> * Prefer "cp -p" or "install -p" when installing files.

Fixed.  .... Is that documented somewhere I missed?

> * /usr/share/doc/libtopology-0.3/  is not included.
> (Hint: Run "rpm -qlvp" on the built packages and notice missing
> directory entries.)

Ahh thank you for the hint!

Fixed.

> * Is it really desired to put the documentation into a separate package?
> The pkg is not even 100K in size. I would add the docs to the -devel pkg.

Fixed. Moved to the -devel package.

New .specfile and .src.rpm at the same locations.
Comment 3 Michael Schwendt 2008-11-11 03:25:22 EST
> the rpmlint version in fc9 doesn't issue this warning

Sure it does.

> New .specfile and .src.rpm at the same locations.

It's now missing "BuildRequires: doxygen", though. ;)

Anyway: APPROVED

If you like to continue with the Fedora Account setup, I can
sponsor you.
Comment 4 Tony Breeds 2008-11-11 17:13:35 EST
(In reply to comment #3)

> Anyway: APPROVED
> 
> If you like to continue with the Fedora Account setup, I can
> sponsor you.

Thank you I have created a FAS account completed the CLA and applied for membership to the packager group.

Thank you.
Comment 5 Bill Nottingham 2008-11-11 17:22:57 EST
How does this compare to libbitmask and libcpuset from http://oss.sgi.com/projects/cpusets/?
Comment 6 Tony Breeds 2008-11-11 18:55:35 EST
(In reply to comment #5)
> How does this compare to libbitmask and libcpuset from
> http://oss.sgi.com/projects/cpusets/?

I could be wrong but my reading of the code for libcpuset indicates it's primarily about creating (nestable) groups of CPUS for dealing with process affinity.  It considers threads lightly, and mostly to work around a in kernel bug to do with
set allocation.

Libtopology's focus is discovery of CPU topology.  It will export information about socket/package, core and thread configuration, along with (numa) memory placement.  libtopology is "destined" to be used by tools such as taskset and numactl for "optimum" placement of CPU resources.  for example "run 4 copies of $this on the "best" only on primary threads".  To the best of my knowledge this isn't available in any other similar library.

Certainly there is overlap with PLPA and cpuset but it is not complete and the libraries can be used to complement each other.
Comment 7 Tony Breeds 2008-11-12 19:15:06 EST
New Package CVS Request
=======================
Package Name: libtopology
Short Description: CPU Topology library
Owners: tbreeds
Branches: F-9 F-10 EPEL-5
InitialCC:
Comment 8 Kevin Fenzi 2008-11-14 00:16:51 EST
cvs done.
Comment 9 Fedora Update System 2008-11-17 17:00:53 EST
libtopology-0.3-0.3.fc9 has been submitted as an update for Fedora 9.
http://admin.fedoraproject.org/updates/libtopology-0.3-0.3.fc9
Comment 10 Fedora Update System 2008-11-19 09:46:12 EST
libtopology-0.3-0.3.fc9 has been pushed to the Fedora 9 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.