# HG changeset patch # User Pascal Bellard # Date 1344119229 -7200 # Node ID 593cb33c57e1837b83e688c164d01c51b5eb12be # Parent 91ed8fa372e33704d772dd4c489eafa2ffd32ea8 linux-source: add rdev diff -r 91ed8fa372e3 -r 593cb33c57e1 linux-source/receipt --- a/linux-source/receipt Sat Aug 04 22:10:01 2012 +0200 +++ b/linux-source/receipt Sun Aug 05 00:27:09 2012 +0200 @@ -17,11 +17,15 @@ local AUFSDIR="aufs-${_AUFSVER}" mkdir -p $fs/usr/src/kernel-patches \ $fs/lib/modules/$BASEVER-slitaz \ - $fs/usr/bin + $fs/usr/bin $fs/usr/sbin cp -a $WOK/$WANTED/source/slitaz $fs/usr/src/kernel-patches cp -a $stuff/buildtaz $fs/usr/src/kernel-patches/slitaz cp -a $stuff/make-tazpkg.u $fs/usr/src/kernel-patches/slitaz cp -a $stuff/get-linux-source $fs/usr/bin + cp -a $stuff/rdev $fs/usr/sbin + ln -s rdev $fs/usr/sbin/rootflags + ln -s rdev $fs/usr/sbin/ramsize + ln -s rdev $fs/usr/sbin/vidmode sed -i "s|=XXX|=$VERSION|g" $fs/usr/bin/get-linux-source # Copy Aufs2 source files if [ -d $WOK/$WANTED/$AUFSDIR ]; then diff -r 91ed8fa372e3 -r 593cb33c57e1 linux-source/stuff/rdev --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/linux-source/stuff/rdev Sun Aug 05 00:27:09 2012 +0200 @@ -0,0 +1,43 @@ +#!/bin/sh + +sw="" +case "$(basename $0)" in +rootflags) sw="-R" ;; +ramsize) sw="-r" ;; +vidmode) sw="-v" ;; +esac +[ -n "$sw" ] && set -- $sw "$@" + +offset=508 +image= +value= +format="Root device 0x%X" +while [ -n "$1" ]; do + case "$1" in + -R) offset=498; format="Root flags %d";; + -r) offset=504; format="Ramsize %d";; + -v) offset=506; format="Video mode%d";; + -o) offset=$(($2)); shift ;; + *) if [ -z "$image" ]; then + image="$1" + elif [ -z "$value" ]; then + value="$1" + else + offset=$(($1)) + fi + esac + shift +done + +if [ ! -s "$image" ]; then + printf "0x%04X /\n" $(cat /proc/sys/kernel/real-root-dev) +elif [ -n "$value" ]; then + for i in 1 2; do + printf '\\\\x%02X' $(($value & 255)) + value=$(($value >> 8)) + done | xargs echo -en | \ + dd bs=1 conv=notrunc of=$image seek=$offset 2> /dev/null +else + dd bs=1 conv=notrunc if=$image skip=$offset count=2 2> /dev/null | \ + hexdump -e '"" 1/2 "$format" "\n"' +fi