Jan Blunck – openSUSE Lizards https://lizards.opensuse.org Blogs and Ramblings of the openSUSE Members Fri, 06 Mar 2020 11:29:40 +0000 en-US hourly 1 https://wordpress.org/?v=4.7.5 Extended Deadline: openSUSE Conference 2009 https://lizards.opensuse.org/2009/05/25/extended-deadline-opensuse-conference-2009/ Mon, 25 May 2009 10:55:28 +0000 http://lizards.opensuse.org/?p=1109 The program committee has extended the deadline for participation in the openSUSE Conference 2009. Find the updated Call for Papers document at http://en.opensuse.org/OpenSUSE_Conf_2009/Call_for_Papers. This gives you nearly two more weeks to come up with a proposal for a talk, a panel discussion or a birds of a feather (BOF) session.

The current plan is to have a preliminary detailed schedule of most talks around June 26, 2009.

]]>
LiveCD Performance (clicfs vs. SquashFS) https://lizards.opensuse.org/2009/05/15/livecd-performance-clicfs-vs-squashfs/ https://lizards.opensuse.org/2009/05/15/livecd-performance-clicfs-vs-squashfs/#comments Fri, 15 May 2009 10:45:00 +0000 http://lizards.opensuse.org/?p=1015 When Coolo looked into how to get rid of (Another) UnionFS for Live CDs and came up with the DoenerFS (now clicfs) idea, I remembered that my friend Arnd has workded on fake write support for cramfs. So I took his code and ported it to SquashFS to see how that goes. My expectation was that it might be faster than Coolo’s clicfs using FUSE. Here are some results using openSUSE-KDE4-LiveCD-i586-i686-Build0098 booting into runlevel 3:

  • clicfs: 637MB ISO Image booting in 1:28 min (0:24 min from RAM)
  • squashfs-rw: 751M ISO Image booting in 1:50 min (0:28 min from RAM)

The difference in the sizes of the ISO images are due to the fact that clicfs is using LZMA compression while SquashFS is still using the in-kernel GZIP implementation. Surprisingly the clicfs image isn’t only smaller but is also faster booting on real media and from RAM (using KVM). So even if we ignore the fact that clicfs is optimized for limiting the number of seeks on disk the SquashFS implementation is still slower. It would be interesting to see if it is just the LZMA compression that is making the difference or something completely different.

The patches for the SquashFS fake write support are here: http://git.infradead.org/users/jblunck/linux-2.6.git?a=shortlog;h=refs/heads/squashfs-rw-v1.

]]>
https://lizards.opensuse.org/2009/05/15/livecd-performance-clicfs-vs-squashfs/feed/ 5
What’s New in 11.2: Install Debuginfo Package by build-id https://lizards.opensuse.org/2009/04/27/whats-new-in-112-install-debuginfo-package-by-build-id/ Mon, 27 Apr 2009 09:37:50 +0000 http://lizards.opensuse.org/?p=816 With the help of a unique identifier that is stored in every binary executable matching the executable, a coredump and the corresponding debuginfo together becomes really easy. You don’t need to know the package name and the version-release string to download and install the correct debuginfo package. This is achieved by extending the linker, some additional tools and the package management itself.

The build id is a unique identifier stored in the .note.gnu.build-id note section of the executable file and loaded into the process image during run-time. Different means to compute the unique identifier are supported although the default setting is to use a 20 byte SHA1 hash of the unstripped executable (see ld linker documentation for further information about the –build-id option).

To be able to read the build id from a core dump the kernel must include the ELF header pages in file-backed private memory areas (see documentation on /proc/<pid>/coredump_filter). This is the default setting on recent openSUSE kernel versions.

Different tools can be used to print out the build-id. eu-readelf (from the elfutils package) prints the contents of the note sections given the -n option in a human readable fashion. pbuildid (from the ptools package) is prints the build-id from executables and from core files including the build-id of all loaded shared objects during the crash.

Now, zypper can be asked to install the debuginfo package that provides the debuginfo for the given build-id.

# zypper install -C "debuginfo(build-id)=b75bab63c9a25eb13264bb95f1fef190e157f865"
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following NEW package is going to be installed:
  bash-debuginfo


Overall download size: 605.0 K. After the operation, additional 2.1 M will be used.
Continue? [YES/no]: yes
Retrieving package bash-debuginfo-3.2-148.2.x86_64 (1/1), 605.0 K (2.1 M unpacked)
Retrieving: bash-debuginfo-3.2-148.2.x86_64.rpm [done]
Installing: bash-debuginfo-3.2-148.2 [done]
# 

If you are really lazy you can call the following script to do the job for you:

#!/bin/bash                                                                     
#                                                                               
# Sample script how to install debuginfo packages by build-id                   
#                                                                               

IDS=''
for f in "$*"; do
    case "$(file -L $f)" in
        *ELF*)
            IDS+="$(pbuildid $f 2>/dev/null | awk '{print $NF}') "
            ;;
        *)  
            ;;
    esac
done

echo "Install Debuginfo for following build-ids: $IDS"

CMDLINE=""
for i in $IDS; do
    CMDLINE+="debuginfo(build-id)=$i "
done

echo $CMDLINE | xargs zypper install -C
]]>
Kernel Of The Day Build Service Projects https://lizards.opensuse.org/2009/01/08/kernel-of-the-day-build-service-projects/ https://lizards.opensuse.org/2009/01/08/kernel-of-the-day-build-service-projects/#comments Thu, 08 Jan 2009 13:30:19 +0000 http://lizards.opensuse.org/?p=347 People interested in openSUSE and kernel development probably know about the existence of the Kernel Of The Day (KOTD). This is the latest and greatest code from the internal kernel source repository that is build once a day and synced out to ftp.suse.com. The intention of the KOTD is to ease the testing and running of development snapshots that likely become the next maintenance update.

Some people might have noticed the Kernel: projects that produce a quite heavy load on the build farm. These are KOTD projects that are mirrored to the openSUSE Build Service every night around 4pm CET if there are changes in the internal source repositories.

Currently the following KOTD projects exist:

Additionally there are two projects that are related to upstream kernel development:

  • Kernel:Vanilla includes the latest sources from Linus Torvalds’ linux-2.6 GIT tree
  • Kernel:linux-next includes the latest sources from Stephen Rothwell’s linux-next GIT tree

With the help of the openSUSE Build Service running the KOTD became even more convenient since the project repository can be added to zypper. Besides that it is now very easy to build external kernel modules (KMP) matching the KOTD.

]]>
https://lizards.opensuse.org/2009/01/08/kernel-of-the-day-build-service-projects/feed/ 3