Latest Linux 3.17 kernel with OpenEmbedded/Yocto
I'm currently building my Linux system using the OpenEmbedded linux-xlnx_3.14 recipe in the meta-xilinx layer.
I've noticed that SDK 2014.4 produces a somewhat different device tree to previous versions, which I assume has to do with the newer 2014.4 now using kernel version 3.17 instead of 3.14.
1. What is the closest recipe that PetaLinux 2014.4 is based off?
The figure 1 here seems to show meta-xilinx and PetaLinux draw from the same sources, but PetaLinux isn't exactly derived directly from meta-xilinx recipes: http://www.wiki.xilinx.com/Linux
These are the current list of kernel recipes:
http://git.yoctoproject.org/cgit/cgit.cgi/meta-xilinx/tree/recipes-kernel/linux
2. When might there be a linux-xlnx_3.17 recipe?
3. Is the linux-yocto_3.17 recipe good enough to try instead if I want the 3.17 kernel? What are the differences between linux-xlnx and linux-yocto practically speaking?
For question 3, I've found this mailing list message to be useful:
https://lists.yoctoproject.org/pipermail/meta-xilinx/2015-January/000896.html
Basically, linux-xlnx includes some useful/necessary Zynq drivers, depending on your needs. The list of ones that are and aren't included are here:
http://www.wiki.xilinx.com/Linux+Drivers
Also, this message and subsequent messages are about the future intention of the kernel recipes:
https://lists.yoctoproject.org/pipermail/meta-xilinx/2015-March/000927.html
They are intending to have just about everything that is used by the majority in the mainline linux-yocto kernel, so that linux-xlnx is only for testing development things. Kernel 3.19 and onwards has more Zynq drivers included towards this goal. So to partially answer question 2, it seems there may not be a linux-xlnx-3.17, but either a mainline linux-yocto_3.19+ or linux-xlnx-dev kind of thing that follows the latest.
Similar Messages
-
UEFI boot problems with Linux 3.7 kernels
According to this thread in the Arch Linux forums, some people are having problems booting some versions of the Linux 3.7 kernel. Here are the numbers:
3.7.3 works for some, but not others
3.7.4 works for some, but not others
3.7.5 works
3.7.6 does not
3.7.7 works
3.7.8 does not
The problem occurs with both the Gummiboot and rEFInd boot managers, and has so far only been reported on Lenovo hardware. I have a ThinkPad W530, and can confirm that on Gummiboot, 3.7.6 does not work, whereas 3.7.5 and 3.7.7 does work. It looks like a Lenovo-related issue to me. It has only been reported on Arch Linux as far as I know. Has anyone else encountered this problem?Thanks for your reply. Yes, the cursor did blink in the top left corner.
I gather from your comments that, if I install a new HD, I will be able to re-install the Windows 7 32-bit O/S from the Product Recovery DVD GMR410014EN0, which was supplied by Toshiba with the laptop and it would also follow, if that is true, that I would be able to Format (Boot n' Nuke) the existing HD and re-install the O/S onto it before I get my friend to lay out cash for a new HD.
I would appreciate your confirmation that the above conclusions are correct as I was under the, hopefully incorrect, impression that the Recovery Disk could only be used to repair an existing system. I have the Microsoft licence number as it is printed on the bottom of my friends machine.
Thanks for your time and I look forward to hearing from you. -
Latest SO Patch for Linux (120184-14) fails with postgresql plugin
Hi,
the latest staroffice patch for Linux no longer works with the postgresql extension postgresql-sdbc-0.7.5. It can read tables but will not write back any modifications. The failure message is something about some routine not being implemented. I'm afraid I needed it in a hurry, so I reverted to the previous patch (120184-12).
My system is opensuse 10.3 running on an x86/64-it machine. uname -a gives
Linux hostname 2.6.22.17-0.1-default #1 SMP 2008/02/10 20:01:04 UTC x86_64 x86_64 x86_64 GNU/Linux
Does any body know of another convenient way of hooking SO up to postgresql?
Regards,
CharlesHi dcminter,
your right, sorry, this isn't a Java question. I followed a link from Suns StarOffice page and assumed this was a purely SO forum. I've just noticed the tabs on the forum window. There is a separate section for 'desktop'. I'll repost there.
Regards,
Charles -
How jvm threads works on new Linux 2.6 scheduler with SMP kernell
Hi,
i'm using Sun JDK Java HotSpot(TM) Server VM (build 1.5.0_14-b03, mixed mode) to run tomcat,
anyone knows How JVM threads works on new Linux 2.6 scheduler with SMP kernel?
i ask this, because in a single processor machine the tomcat replies more fast than a dual processor machine, maybe the reason is, that SMP load balancing made for new scheduler, slow down the JVM performance for threads? there is a way to avoid this?
reference about Linux Scheduler: http://www-128.ibm.com/developerworks/linux/library/l-scheduler/?ca=dgr-lnxw09LinuxScheduler
bug that have "same" problem: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5038858
thanks for any insightThis is bug:
6328462 Linux getCurrentThreadCpuTime() does not match with getThreadCpuTime(currentThread)
It will be fixed in:
- JDK 6.0 (Mustang) build b63
- JDK 1.5.0_07 build b01
The problem is that the HotSpot VM takes the stat info from the file'/proc/$tid/stat'
which is incorrect on Linux kernels 2.6+ with NPTL because this file aggregates
per-process (.vs. per-thread) usage on these kernels.
The file '/proc/self/task/$tid/stat' still has the per-thread usage and must be used instead.
There is also a performance bug:
6200022: JVMTI GetCurrentThreadCpuTime slow on Linux
This bug is about using new Linux posix compliant process clocks (2.6.10) :
http://sources.redhat.com/ml/libc-alpha/2004-10/msg00117.html
It is too late to fix this in Mustang but can be possible in one of the update releases.
Thank you for posting the question!
Serguei -
[Solved] Compiling a new kernel with ABS
I've made it through the whole process outlined in the wiki, up to installing with pacman. Pacman is telling me that the stock arch kernel is a conflicting package and wants to remove it. I want to hang on to it in case I've messed something up. What am I doing wrong? I know you can have two kernels installed. Using the traditional way I can get this, but I'd rather keep to doing things The Arch Way.
Last edited by Morrvick (2011-11-17 00:40:30)I double checked what I was doing, and I have done that. Here is my modified PKGBUILD:
# $Id: PKGBUILD 130991 2011-07-09 12:23:51Z thomas $
# Maintainer: Tobias Powalowski <[email protected]>
# Maintainer: Thomas Baechler <[email protected]>
pkgbase=linux
#pkgname=('linux' 'linux-headers' 'linux-docs') # Build stock -ARCH kernel
pkgname=('linux-morrvick' 'linux-headers-morrvick') # Build kernel with a different name
_kernelname=${pkgname#linux}
_basekernel=3.1
pkgver=${_basekernel}.1
pkgrel=1
arch=('i686' 'x86_64')
url="http://www.kernel.org/"
license=('GPL2')
makedepends=('xmlto' 'docbook-xsl')
options=('!strip')
source=("http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.1.tar.xz"
"http://www.kernel.org/pub/linux/kernel/v3.x/patch-${pkgver}.xz"
# the main kernel config files
'config' 'config.x86_64'
# standard config files for mkinitcpio ramdisk
"${pkgname}.preset"
'change-default-console-loglevel.patch'
'i915-fix-ghost-tv-output.patch'
'i915-fix-incorrect-error-message.patch'
'usb-add-reset-resume-quirk-for-several-webcams.patch')
md5sums=('edbdc798f23ae0f8045c82f6fa22c536'
'2bf7eb28a58238e1a062fa7393bf7824'
'cbaaa923f00c1935055273ccc1630144'
'93687a4b7e1e6bcd4e7417d6e5079bc4'
'eb14dcfd80c00852ef81ded6e826826a'
'9d3c56a4b999c8bfbd4018089a62f662'
'263725f20c0b9eb9c353040792d644e5'
'a50c9076012cb2dda49952dc6ec3e9c1'
'52d41fa61e80277ace2b994412a0c856')
build() {
cd "${srcdir}/linux-${_basekernel}"
# add upstream patch
patch -p1 -i "${srcdir}/patch-${pkgver}"
# add latest fixes from stable queue, if needed
# http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git
# Some chips detect a ghost TV output
# mailing list discussion: http://lists.freedesktop.org/archives/intel-gfx/2011-April/010371.html
# Arch Linux bug report: FS#19234
# It is unclear why this patch wasn't merged upstream, it was accepted,
# then dropped because the reasoning was unclear. However, it is clearly
# needed.
patch -Np1 -i "${srcdir}/i915-fix-ghost-tv-output.patch"
# In 3.1.1, a DRM_DEBUG message is falsely declared as DRM_ERROR. This
# worries users, as this message is displayed even at loglevel 4. Fix
# this.
patch -Np1 -i "${srcdir}/i915-fix-incorrect-error-message.patch"
# Add the USB_QUIRK_RESET_RESUME for several webcams
# FS#26528
patch -Np1 -i "${srcdir}/usb-add-reset-resume-quirk-for-several-webcams.patch"
# set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param)
# remove this when a Kconfig knob is made available by upstream
# (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
if [ "${CARCH}" = "x86_64" ]; then
cat "${srcdir}/config.x86_64" > ./.config
else
cat "${srcdir}/config" > ./.config
fi
if [ "${_kernelname}" != "" ]; then
sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config
fi
# set extraversion to pkgrel
sed -ri "s|^(EXTRAVERSION =).*|\1 -${pkgrel}|" Makefile
# get kernel version
make prepare
# load configuration
# Configure the kernel. Replace the line below with one of your choice.
#make menuconfig # CLI menu for configuration
#make nconfig # new CLI menu for configuration
make xconfig # X-based configuration
#make oldconfig # using old config from previous kernel version
# ... or manually edit .config
# stop here
# this is useful to configure the kernel
#msg "Stopping build"
#return 1
yes "" | make config
# build!
make ${MAKEFLAGS} bzImage modules
package_linux-morrvick() {
pkgdesc="The Linux Kernel and modules"
groups=('base')
depends=('coreutils' 'linux-firmware' 'module-init-tools>=3.16' 'mkinitcpio>=0.7')
optdepends=('crda: to set the correct wireless channels of your country')
provides=('kernel26')
conflicts=('kernel26')
replaces=('kernel26')
backup=("etc/mkinitcpio.d/${pkgname}.preset")
install=${pkgname}.install
cd "${srcdir}/linux-${_basekernel}"
KARCH=x86
# get kernel version
_kernver="$(make kernelrelease)"
mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot}
make INSTALL_MOD_PATH="${pkgdir}" modules_install
cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgname}"
# add vmlinux
install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux"
# install fallback mkinitcpio.conf file and preset file for kernel
install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset"
# set correct depmod command for install
sed \
-e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/g" \
-e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" \
-i "${startdir}/${pkgname}.install"
sed \
-e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \
-e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \
-e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \
-i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset"
# remove build and source links
rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build}
# remove the firmware
rm -rf "${pkgdir}/lib/firmware"
# gzip -9 all modules to save 100MB of space
find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
# make room for external modules
ln -s "../extramodules-${_basekernel}${_kernelname:--ARCH}" "${pkgdir}/lib/modules/${_kernver}/extramodules"
# add real version for building modules and running depmod from post_install/upgrade
mkdir -p "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--ARCH}"
echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--ARCH}/version"
package_linux-headers-morrvick() {
pkgdesc="Header files and scripts for building modules for linux kernel"
provides=('kernel26-headers')
conflicts=('kernel26-headers')
replaces=('kernel26-headers')
mkdir -p "${pkgdir}/lib/modules/${_kernver}"
cd "${pkgdir}/lib/modules/${_kernver}"
ln -sf ../../../usr/src/linux-${_kernver} build
cd "${srcdir}/linux-${_basekernel}"
install -D -m644 Makefile \
"${pkgdir}/usr/src/linux-${_kernver}/Makefile"
install -D -m644 kernel/Makefile \
"${pkgdir}/usr/src/linux-${_kernver}/kernel/Makefile"
install -D -m644 .config \
"${pkgdir}/usr/src/linux-${_kernver}/.config"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include"
for i in acpi asm-generic config crypto drm generated linux math-emu \
media net pcmcia scsi sound trace video xen; do
cp -a include/${i} "${pkgdir}/usr/src/linux-${_kernver}/include/"
done
# copy arch includes for external modules
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/x86"
cp -a arch/x86/include "${pkgdir}/usr/src/linux-${_kernver}/arch/x86/"
# copy files necessary for later builds, like nvidia and vmware
cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}"
cp -a scripts "${pkgdir}/usr/src/linux-${_kernver}"
# fix permissions on scripts dir
chmod og-w -R "${pkgdir}/usr/src/linux-${_kernver}/scripts"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/.tmp_versions"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel"
cp arch/${KARCH}/Makefile "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
if [ "${CARCH}" = "i686" ]; then
cp arch/${KARCH}/Makefile_32.cpu "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
fi
cp arch/${KARCH}/kernel/asm-offsets.s "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel/"
# add headers for lirc package
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video"
cp drivers/media/video/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/"
for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
cp -a drivers/media/video/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
done
# add docbook makefile
install -D -m644 Documentation/DocBook/Makefile \
"${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile"
# add dm headers
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/md"
cp drivers/md/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/md"
# add inotify.h
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/linux"
cp include/linux/inotify.h "${pkgdir}/usr/src/linux-${_kernver}/include/linux/"
# add wireless headers
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/"
cp net/mac80211/*.h "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/"
# add dvb headers for external modules
# in reference to:
# http://bugs.archlinux.org/task/9912
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core"
cp drivers/media/dvb/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core/"
# and...
# http://bugs.archlinux.org/task/11194
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
cp include/config/dvb/*.h "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
# add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
# in reference to:
# http://bugs.archlinux.org/task/13146
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
cp drivers/media/dvb/frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
cp drivers/media/video/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
# add dvb headers
# in reference to:
# http://bugs.archlinux.org/task/20402
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb"
cp drivers/media/dvb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends"
cp drivers/media/dvb/frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners"
cp drivers/media/common/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners/"
# add xfs and shmem for aufs building
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/mm"
cp fs/xfs/xfs_sb.h "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h"
# copy in Kconfig files
for i in `find . -name "Kconfig*"`; do
mkdir -p "${pkgdir}"/usr/src/linux-${_kernver}/`echo ${i} | sed 's|/Kconfig.*||'`
cp ${i} "${pkgdir}/usr/src/linux-${_kernver}/${i}"
done
chown -R root.root "${pkgdir}/usr/src/linux-${_kernver}"
find "${pkgdir}/usr/src/linux-${_kernver}" -type d -exec chmod 755 {} \;
# strip scripts directory
find "${pkgdir}/usr/src/linux-${_kernver}/scripts" -type f -perm -u+w 2>/dev/null | while read binary ; do
case "$(file -bi "${binary}")" in
*application/x-sharedlib*) # Libraries (.so)
/usr/bin/strip ${STRIP_SHARED} "${binary}";;
*application/x-archive*) # Libraries (.a)
/usr/bin/strip ${STRIP_STATIC} "${binary}";;
*application/x-executable*) # Binaries
/usr/bin/strip ${STRIP_BINARIES} "${binary}";;
esac
done
# remove unneeded architectures
rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa}
package_linux-docs() {
pkgdesc="Kernel hackers manual - HTML documentation that comes with the Linux kernel."
provides=('kernel26-docs')
conflicts=('kernel26-docs')
replaces=('kernel26-docs')
cd "${srcdir}/linux-${_basekernel}"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}"
cp -al Documentation "${pkgdir}/usr/src/linux-${_kernver}"
find "${pkgdir}" -type f -exec chmod 444 {} \;
find "${pkgdir}" -type d -exec chmod 755 {} \;
# remove a file already in linux package
rm -f "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile"
After the compiling is finished:
sudo pacman -U linux-morrvick-3.1.1-1-x86_64.pkg.tar.xz
Password:
resolving dependencies...
looking for inter-conflicts...
:: linux-morrvick and linux are in conflict (kernel26). Remove linux? [y/N] n
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: linux-morrvick and linux are in conflict (kernel26)
Any thoughts? -
Pactching kernel with fbsplash.patch (SOLVED)
Never patched a kernel before and i'm having problems!!
This what i've done so far (as root):
1. Installed kernel26-ck (2.6.22-ck) with pacman and rebooted into arch using that kernel
2. downloaded the fbsplash via (genpatches-2.6.22-1.extras.tar.bz2)
3. put the splash.patch file into /usr/src
4. made a symlink for current kernel in /usr/src; giving /usr/src/linux --> /usr/src/linux/linux-2.6.22-ck
5. cd /usr/src/linux
6. patch -p1 < ../splash.patch
# NOTE: looking into using the abs method of PKGBUILD'ing a custom kernel with patches - hopefully i'll do better!!
The best way to do this is by emulating the abs versions of the standard kernel as described in these forums
1. copy the abs version of the stock kernel26
2. adjust the PKGBUILD to include spock's patch (not gentoo's)
3. makepkg
4. pacman -U the new kernel
Then get on with fbsplash!
Last edited by Hongkongblue (2007-08-17 02:58:45)mazu wrote:
I used to use kernel26-beyond kernel with fbsplash. Recently I found out that with this kernel any attempt to mount ntfs disk end with system hung. I switched back to standard kernel, but I want to still use fbsplash. I read the wiki several times but I can't figure out how to patch and compile kernel with fbsplash. Can anyone write step by step what shuld I do?
Thanks for any help in advice.
mazu
Not that it answers your question but I have been using the latest beyond kernel since it came out and have had no problem with mounting and using ntfs disks resulting in system hangs. Also I have recently been using ntfs-3g which allows safely writing to NTFS partitions. I am using it for backups on an external USB drive with an NTFS file system. Give ntf-3g a shot before patching the kernel.
Last edited by raymano (2007-04-14 14:01:35) -
I am trying to understand the results I see on an OVM Oracle Linux Guest built from the
Template == OVM_OL5U6_X86_64_PVM_10GB.tgz
When I execute an rpm -qa | grep "^kernel" I obtain
rpm -qa | grep "^kernel"
kernel-uek-headers-2.6.32-100.26.2.el5
kernel-uek-firmware-2.6.32-100.26.2.el5
kernel-xen-devel-2.6.18-238.0.0.0.1.el5
kernel-uek-2.6.32-100.26.2.el5
kernel-xen-2.6.18-238.0.0.0.1.el5
kernel-uek-devel-2.6.32-100.26.2.el5
I expected to see an rpm of kernel-2.6.32-100.26.2.el5 based on the results of a "uname -a"
Linux foobar.local 2.6.32-100.26.2.el5 #1 SMP Tue Jan 18 20:11:49 EST 2011 x86_64 x86_64 x86_64 GNU/Linux
To further confuse matters a listing of the /usr/src/kernels dir lists
ls -l
total 20
drwxr-xr-x 19 root root 4096 Apr 28 2011 2.6.18-238.0.0.0.1.el5-xen-x86_64
lrwxrwxrwx 1 root root 33 Apr 28 2011 2.6.18-238.0.0.0.1.el5xen-x86_64 -> 2.6.18-238.0.0.0.1.el5-xen-x86_64
drwxr-xr-x 22 root root 4096 Apr 28 2011 2.6.32-100.26.2.el5
whereas
rpm -q --whatprovides /boot/vmlinuz-`uname -r`
kernel-uek-2.6.32-100.26.2.el5
I am 99.99 % certain I am not running the UEK kernel but trying to understand the seemingly contradicting information as detailed above.
Thanks987942 wrote:
I welcome any test I can perform to prove empirically whether it is the uek kernel or not.It's definitely the UEK, for the reasons stated above. Oracle Linux 5 Update 6 was the first version of Oracle Linux to ship with the UEK as the default kernel, and we hadn't quite gotten all the naming aspects 100% correct yet. So, the 2.6.32-100 kernel is absolutely a UEK.
So, on a freshly installed Oracle Linux 5 Update 6 box:
# uname -a
Linux localhost.localdomain 2.6.32-100.26.2.el5 #1 SMP Tue Jan 18 20:11:49 EST 2011 x86_64 x86_64 x86_64 GNU/LinuxIf I then upgrade yum (required to get the yum changes to support kernel-uek installs) and then upgrade the box to the latest and reboot:
# yum update yum
# yum update
# rebootWe're now running the latest UEK Release 1 kernel (2.6.32-400.26.2.el5uek) and it identifies itself as such:
# uname -a
Linux localhost.localdomain 2.6.32-400.26.2.el5uek #1 SMP Tue Apr 23 19:04:54 PDT 2013 x86_64 x86_64 x86_64 GNU/LinuxNotice that it now says el5uek in the uname string.
We changed the RPM and kernel identifiers from kernel-uek-2.6.32-100.35.1.el5uek. So, it wasn't in the release of Oracle Linux 5 Update 6, but happened in that update errata cycle. All subsequence releases of the UEK Release 1 (2.6.32) and UEK Release 2 (2.6.39) identify themselves with an el5uek or el6uek marker.
BTW, is there any particular reason you're using a template that has a particularly old version of Oracle Linux 5 instead of using the latest Update 9? You can find Oracle Linux 5 Update 9 templates under the heading "Oracle VM 3 Templates (OVF) for Oracle Linux 5 Media Pack for x86_64 (64 bit)" on the Oracle Software Delivery Cloud. -
[SOLVED] Managing Kernels with rEFInd
Hey fellows hope you're all doing great.
I just have some questions regarding refind boot manager which I use to dual boot arch and windows on my laptop.
Before I installed arch,I installed refind boot manager from windows 8 using the guide on the rodsmith website.
Then I went on and installed arch,and everything worked right away.
On the arch system I mounted the efi partition to the
boot folder using fstab.
UUID="502D-3405" /boot/efi vfat defaults 0 1¬
/dev/sda2: UUID="502D-3405" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="85674c9f-2484-4b3b-bb97-2205e8d9da1c"
so what resides now in my boot folder next to the efi folder,are the files (initramfs-linux.img, initramfs-linux-fallback.img
and vmlinuz-linux)
to make a long story short,I'm trying to create a custom entry in refind to boot into the kernel with modified parameters.
I just added this stanza to the defualt refind.conf file in (/boot/efi/EFI/refind/)
#Custom.Kernel Test
menuentry "Arch Linux" {
icon /EFI/refind/icons/os_arch.icns
loader /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
options "root=PARTUUID=5b772462-68e1-463c-b22f-8ff22625ec21 rw rootfstype=ext4 pcie_aspm=force i915.i915_enable_rc6=1"
blkid
/dev/sdb1: LABEL="root" UUID="310f4bbc-0a2c-4667-a397-d020a7c94177" TYPE="ext4" PARTUUID="5b772462-68e1-463c-b22f-8ff22625ec21"
The entry is there,but the the system won't boot.I also tried compiling a custom kernel the traditional way using the guide on the wiki,the kernel and the img are created another entry for the custom kernel which showed up on the refind menu,when I select it,error that the loader is not found while loading vmlinuz comes up although all the files are in the boot directory.
Is there any thing I'm missing to make the new kernel bootable ?
Last edited by Herbalist (2014-08-01 12:24:30)It seems as if you have two drives: one containing the efi-partition (sda2) and one containing your system (sdb)
On which partition is your boot folder you put the kernel images in?
If your kernel files are NOT on the efi partition you need to specify that using the 'volume' token as described here because the paths for 'loader' and such are relative to the efi partition or the specified volume.
Last edited by dice (2014-07-31 15:59:24) -
How to verify RTSJ use linux real time kernel?
Hi,
I'm complete newbie into this area and I'm trying out the RTSJ 2.1 beta Linux. I'm using this on Ubuntu with the linux real time kernel. Is there anyway to find out whether the real time kernel is being actually used or in other words is there a way to find out whether RTSJ works fine with the real time kernel on Ubuntu? I see that the programs get compiled and run irrespective of whether I use the real time kernel or the generic kernel.
Thanks,
ViduraHi,
I would assume, like other distributions, that you either boot the real-time kernel or you don't. uname should show you what you are running, but you'd have to ask the Ubuntu folk what you should see for the RT kernel.
To see if you are benefiting from real-time, you need to run a RTSJ app that tracks deadline misses or measures latency/jitter. Try it on the non-real-time kernel and the real-time one and see what you get. Some of the examples in the "Getting Started" guide should be usable for these purposes.
David Holmes -
About compiling a kernel with ABS
So I was following the guide on the wiki about compiling a new kernel with ABS. I wanted to try and make a kernel that didn't need to use initramfs. I thought I could do it by not enabling the kernel to have the ability to use initramfs, and I think I also added the right modules to be built into it not have them be modules ( any idea if I can make sure I chose the correct drivers). After I was done I needed to install in using pacman -U. It told me it conflicted with kernel26 or something, and it asked if I wanted to replace it. Do I want to replace the current with the new? Or can I have them side by side? I know I can have multiple kernels, so it confused me a little.
Still new with all this, but I'm pretty sure you don't want to replace your current kernel, or you could mess your system up should your newly compiled kernel not work.
When you created your PKGBUILD did you by any chance forget to change its name? You should have something like "pkgname=linux-custom" (there's more to change, check the wiki for the full list) instead, so that your new kernel will be called "linux-custom" (or whatever you call it), and it can be installed alongside the (Arch) official "linux"
After that, you can put both in your bootloader, and boot the one you want. But yeah I think you definitely want to keep the official kernel alongside yours, just in case. -
[SOLVED]linux-headers upgrade fails with PGP signature error
Whe trying to upgrade the linux kernel using:
pacman -S linux linux-headers
it fails with the following error:
(2/2) checking package integrity [#################################] 100%
error: linux: signature from "Tobias Powalowski <[email protected]>" is unknown trust
error: linux-headers: signature from "Tobias Powalowski <[email protected]>" is invalid
error: failed to commit transaction (invalid or corrupted package (PGP signature))
Errors occurred, no packages were upgraded.
I have tried deleting /etc/pacman.d/gnupg and the recreating it with
pacman-key --init
, I have also run
pacman -Syy
to make sure the repository is up to date. I read the wiki post about time, but my ntp daemon is running, and I have confirmed that my time is exactly right.
Last edited by MikeDacre (2013-04-01 23:32:27)Hi,
Sorry, but that doesn't help me. I can't find any reference in that post to this problem. I get a similar issue when I try to upgrade mysql:
>> sudo pacman -S mariadb libmariadbclient mariadb-clients 16:06 Mon 04-01-2013
resolving dependencies...
looking for inter-conflicts...
:: libmariadbclient and libmysqlclient are in conflict. Remove libmysqlclient? [y/N] y
:: mariadb-clients and mysql-clients are in conflict. Remove mysql-clients? [y/N] y
:: mariadb and mysql are in conflict. Remove mysql? [y/N] y
Targets (6): libmysqlclient-5.5.30-6 [removal] mysql-5.5.30-6 [removal]
mysql-clients-5.5.30-6 [removal] libmariadbclient-5.5.30-2 mariadb-5.5.30-2
mariadb-clients-5.5.30-2
Total Download Size: 16.85 MiB
Total Installed Size: 152.41 MiB
Net Upgrade Size: 28.51 MiB
Proceed with installation? [Y/n] y
:: Retrieving packages from extra...
libmariadbclient-5.5.30-2-x86_64 6.6 MiB 1479K/s 00:05 [#################################] 100%
mariadb-clients-5.5.30-2-x86_64 871.8 KiB 421K/s 00:02 [#################################] 100%
mariadb-5.5.30-2-x86_64 9.4 MiB 440K/s 00:22 [#################################] 100%
(3/3) checking package integrity [#################################] 100%
error: libmariadbclient: key "BBE43771487328A9" is unknown
:: Import PGP key , "Bartlomiej Piotrowski <[email protected]>", created 2011-10-10? [Y/n] y
error: key "Bartlomiej Piotrowski <[email protected]>" could not be imported
error: mariadb-clients: key "BBE43771487328A9" is unknown
:: Import PGP key 487328A9, "Bartlomiej Piotrowski <[email protected]>", created 2011-10-10? [Y/n] y
(3/3) checking package integrity [#################################] 100%
error: libmariadbclient: signature from "Bartlomiej Piotrowski <[email protected]>" is unknown trust
error: mariadb-clients: signature from "Bartlomiej Piotrowski <[email protected]>" is unknown trust
error: mariadb: signature from "Bartlomiej Piotrowski <[email protected]>" is unknown trust
error: failed to commit transaction (invalid or corrupted package (PGP signature))
Errors occurred, no packages were upgraded. -
[Solved] Compiling kernel with 'localmodcfg' - 'brcmsmac' missing
Hi all,
I want to compile my own optimized ck-kernel with localmodcfg="y" which works mostly.
However there is a small problem.
The module 'brcmsmac' for the WLAN card is never included although it is listed in my modprobed.db.
Does someone have any clue what could be the cause?
Thanks
Radioactiveman
Last edited by Radioactiveman (2012-01-13 16:36:15)A minor fix for the patch by Steven Rostedt solved my issue.
I have compiled linux-ck 3.2.1-2 with localmodconfig today and brcmsmac is now included.
Marking the thread as solved, thanks to Steve.
Patch file:
diff --git a/scripts/kconfig/streamline_config.pl b/scripts/kconfig/streamline_config.pl
index ec7afce..bccf07d 100644
--- a/scripts/kconfig/streamline_config.pl
+++ b/scripts/kconfig/streamline_config.pl
@@ -250,33 +250,61 @@ if ($kconfig) {
read_kconfig($kconfig);
+sub convert_vars {
+ my ($line, %vars) = @_;
+
+ my $process = "";
+
+ while ($line =~ s/^(.*?)(\$\((.*?)\))//) {
+ my $start = $1;
+ my $variable = $2;
+ my $var = $3;
+
+ if (defined($vars{$var})) {
+ $process .= $start . $vars{$var};
+ } else {
+ $process .= $start . $variable;
+ }
+ }
+
+ $process .= $line;
+
+ return $process;
+}
+
# Read all Makefiles to map the configs to the objects
foreach my $makefile (@makefiles) {
- my $cont = 0;
+ my $line = "";
+ my %make_vars;
open(MIN,$makefile) || die "Can't open $makefile";
while (<MIN>) {
+ # if this line ends with a backslash, continue
+ chomp;
+ if (/^(.*)\\$/) {
+ $line .= $1;
+ next;
+ }
+
+ $line .= $_;
+ $_ = $line;
+ $line = "";
+
my $objs;
- # is this a line after a line with a backslash?
- if ($cont && /(\S.*)$/) {
- $objs = $1;
- $cont = 0;
+ $_ = convert_vars($_, %make_vars);
# collect objects after obj-$(CONFIG_FOO_BAR)
if (/obj-\$\((CONFIG_[^\)]*)\)\s*[+:]?=\s*(.*)/) {
$var = $1;
$objs = $2;
+
+ # check if variables are set
+ } elsif (/^\s*(\S+)\s*[:]?=\s*(.*\S)/) {
+ $make_vars{$1} = $2;
if (defined($objs)) {
- # test if the line ends with a backslash
- if ($objs =~ m,(.*)\\$,) {
- $objs = $1;
- $cont = 1;
foreach my $obj (split /\s+/,$objs) {
$obj =~ s/-/_/g;
if ($obj =~ /(.*)\.o$/) {
Last edited by Radioactiveman (2012-01-13 16:37:06) -
Safely installing 64bit kernel with 32bit userland
I'm happily running a 64bit kernel with 32bit userland, but I was wondering whether there is any way to let pacman allow me to install the 64bit kernel (manually downloaded) without me needing to edit pacman.conf. I sometimes forget to set the arch to i686 again causing me to install 64bit packages.
If there is no such option, I'll script something for myself, but I wanted to be sure I didn't miss something (maybe an undocumented option?).I have the Architecture line commented out of my pacman.conf, but that is because I am too lazy to upgrade the kernel using --arch. That and I use "i686" in my mirror url and am fairly sure I will never change it to x86_64 by accident...
Anyway, these are the changes I made to /etc/inittab. Just added linux32 in lots of places.
# -8 options fixes umlauts problem on login
c1:2345:respawn:linux32 /sbin/agetty -8 38400 tty1 linux
c2:2345:respawn:linux32 /sbin/agetty -8 38400 tty2 linux
c3:2345:respawn:linux32 /sbin/agetty -8 38400 tty3 linux
c4:2345:respawn:linux32 /sbin/agetty -8 38400 tty4 linux
c5:2345:respawn:linux32 /sbin/agetty -8 38400 tty5 linux
c6:2345:respawn:linux32 /sbin/agetty -8 38400 tty6 linux
# Hypervisor Virtual Console for Xen and KVM
#h0:2345:respawn:/sbin/agetty -8 38400 hvc0 linux
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
# Example lines for starting a login manager
#x:5:respawn:/usr/bin/xdm -nodaemon
#x:5:respawn:/usr/sbin/gdm -nodaemon
#x:5:respawn:/usr/bin/kdm -nodaemon
#x:5:respawn:linux32 /usr/bin/slim >& /dev/null
x:5:respawn:linux32 /usr/sbin/lxdm >& /dev/null
Do that, and you will never know that you are running an x86_64 kernel and can keep Architecture=auto if you wish. -
Problem building kernel with makepkg
I tried several times building a custom 2.6.8.1 kernel with makepkg and the PKGBUILD file obtained from http://wiki.archlinux.org/index.php/Ker … with%20ABS. Unfortionately, the process allways ends with the following error:
ln: when making multiple links, last argument must be a directory
make: *** [_modinst_] Error 1
==> ERROR: Build Failed. Aborting...
Is there something wrong with the build file posted on the wiki or am I doing something stupid?Err... I might have done a small mistake in my previous post.
I didn't try to build the kernel using the Wiki page above.
I've used http://wiki.archlinux.org/index.php/Bui … with%20ABS
You can find below the revised PKGBUILD for that page. It might look weird, but it's very functional. It should also work with the stock kernels.
This PKGBUILD includes kernel version/revision autodetection. This helps when you apply patches which change those variables (such as ck, mm etc.). The changes I've made automatically change the package details (pkgname, pkgver, pkgdesc) to reflect the kernel changes.
Please test because I've made some cosmetic changes lately which might have scrambled something around there. If you find it working, please post here and I'll put it in the Wiki page above. Maybe it could also be used as a base for building kernels with the ABS.
Any feedback is welcomed. Enjoy.
# ChangeLog
# v0.3 2004/08/19 - Mircea Ionut Bardac (IceRAM)
# Updated the PKGBUILD for autodetection of the kernel version and kernel revision
# v0.2 2004/07/23 - Wojciech Szlachta
# Modified from official PKGBUILD for kernel26-scsi by judd <[email protected]>
# and from custom PKGBUILD to support multiple installed kernels by jea.
# you can leave kerrev empty if you don't want to name the kernel in any way
kerrev=
pkgname=kernel26
pkgver=2.6.7
pkgrel=1
pkgdesc="Custom Linux Kernel and modules"
url="http://www.kernel.org"
depends=('module-init-tools')
source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$pkgver.tar.bz2
config
md5sums=('a74671ea68b0e3c609e8785ed8497c14'
'4da09ca74deafb3c6769b8de895e089b'
getvar() {
old=$(cat Makefile | grep "^$1")
echo $(echo ${old/"$1 ="/} | sed -e "s/[ ]*(.*)[ ]*/1/g")
return 0
build() {
cd $startdir/src/linux-$pkgver
# apply patches here
# patch -p1 < ../patch1
# get rid of the 'i' in i686
carch=`echo $CARCH | sed 's|i||'`
cat ../config | sed "s|#CARCH#|$carch|g" >./.config
# make changes in kernel configuration
make oldconfig || return 1
cp ./.config ../../config.new
#use the following line instead of the 2 lines above for default config
#yes "" | make config || return 1
# set EXTRAVERSION to create unique /lib/modules/ subdirectories
_ker_extraversion=$(getvar "EXTRAVERSION")
# update EXTRAVERSION in the Makefile
_oldline=$(cat Makefile | grep "^EXTRAVERSION")
if [ $kerrev != "" ]; then
_ker_extraversion="$_ker_extraversion-$kerrev"
cat Makefile | sed "s|$_oldline|EXTRAVERSION = $_ker_extraversion|" > tmpMake
mv tmpMake Makefile
fi
kerrev=$_ker_extraversion
kerver=$(getvar "VERSION").$(getvar "PATCHLEVEL").$(getvar "SUBLEVEL")
# update the package information from the kernel Makefile
pkgver=$kerver$(echo $_ker_extraversion | sed -e 's/-/./g')
# removing patches versions from the revision string
_n1=$(expr match $kerrev '([.][0-9]*)')
_n21=$(expr match $q '[.][0-9]*(.*)')
_n2=$(echo $_n21 | sed -e "s/[0-9]*-/-/g")
pkgname=kernel26$_n1$_n2
pkgdesc="Custom Linux Kernel ($kerver) and modules - revision $kerrev / package version: $pkgver build: $pkgrel"
echo "- Package information ----------------"
echo " Package name: $pkgname"
echo " Package version: $pkgver"
echo " Package release: $pkgrel"
echo " Kernel version: $kerver"
echo " Kernel revision: $kerrev"
echo "--------------------------------------"
make clean bzImage modules || return 1
mkdir -p $startdir/pkg/{lib/modules,boot}
make INSTALL_MOD_PATH=$startdir/pkg modules_install || return 1
# create unique names in /boot/
cp System.map $startdir/pkg/boot/System.map26$kerrev
cp arch/i386/boot/bzImage $startdir/pkg/boot/vmlinuz26$kerrev
install -D -m644 Makefile $startdir/pkg/usr/src/linux-$kerver/Makefile
install -D -m644 .config $startdir/pkg/usr/src/linux-$kerver/.config
install -D -m644 .config $startdir/pkg/boot/kconfig26$kerrev
mkdir -p $startdir/pkg/usr/src/linux-$kerver/include
mkdir -p $startdir/pkg/usr/src/linux-$kerver/arch/i386/kernel
for i in acpi asm-generic asm-i386 config linux math-emu net pcmcia scsi video; do
cp -a include/$i $startdir/pkg/usr/src/linux-$kerver/include/
done
# copy files necessary for later builds, like nvidia and vmware
cp -a scripts $startdir/pkg/usr/src/linux-$kerver/
mkdir -p $startdir/pkg/usr/src/linux-$kerver/.tmp_versions
cp arch/i386/Makefile $startdir/pkg/usr/src/linux-$kerver/arch/i386/
cp arch/i386/kernel/asm-offsets.s $startdir/pkg/usr/src/linux-$kerver/arch/i386/kernel/
# copy in Kconfig files
for i in `find . -name "Kconfig*"`; do
mkdir -p $startdir/pkg/usr/src/linux-$kerver/`echo $i | sed 's|/Kconfig.*||'`
cp $i $startdir/pkg/usr/src/linux-$kerver/$i
done
cd $startdir/pkg/usr/src/linux-$kerver/include && ln -s asm-i386 asm
chown -R root.root $startdir/pkg/usr/src/linux-$kerver
# create a unique subdirectory under /usr/src/
cd $startdir/pkg/usr/src
mv linux-$kerver linux-$kerver$kerrev
cd $startdir/pkg/lib/modules/$kerver$kerrev &&
(rm -f build; ln -sf /usr/src/linux-$kerver$kerrev build) -
Older 2.6 kernels with ck (or beyond) patchsets don't compile
Hello! I'm trying to compile 2.6.17 kernel with ck or beyond patchset (i need this one because one of my drivers can be compiled only with 2.6.17 and i really like ck). I can't play with abs because kernel's PKGCONFIG is too complicated for me (and actual probably has small problem when it's necessary to deal with 4 parts kernel names like 2.6.17.7 etc.), if somebody has one working PKGCONFIG (any 2.6.17 with properly beyond or ck) i can try it, thank you.
I was trying to deal with my problem by downloading sources from kernel.org (of course they build properly and work) and patching by appropriate patch from beyond or ck's page. But during compilation i always get errors like
fs/splice.c:1381: error: redefinition of 'link_ipipe_prep'
fs/splice.c:1302: error: previous definition of 'link_ipipe_prep' was here
fs/splice.c:1419: error: redefinition of 'link_opipe_prep'
fs/splice.c:1340: error: previous definition of 'link_opipe_prep' was here
it isn't of course alway splice.c but it alway errors like that. My friend suggested that it could be problem with gcc4 is it possible? Or does anyone know solution for my problem?
Big ThanksAs you haven't been entirely clear about what you're doing, let me outline what I would do in your situation:
- get the 2.6.17 tarball from kernel.org - that's 2.6.17 ONLY, not 2.6.17.y
- get the 2.6.17-ck1 patch tarball from http://www.kernel.org/pub/linux/kernel/ … .6.17-ck1/
- get the corresponding kernel config from cvs.archlinux.org
- get the corresponding PKGBUILD and associated build files from cvs.archlinux.org (optional - only required if you want to use the Arch Build System)
- build
Actually, there may be a shortcut (just occurred to me while typing) - there are a couple of mirrors that archive old versions of Arch packages. They don't do all of them, but you might be lucky. They're listed on the "Downgrading Packages" wiki page.
Just for curiosity, what driver do you need 2.6.17 for?
Maybe you are looking for
-
What is wrong with the ipod touch 4th gen battery?
I have an 8gb 4th gen ipod touch that I purchased in December 2011. I charged it completely last night after doing a full reset, and by morning the battery was only at half charge. I've turned off all unnecessary services, no apps were running, no mu
-
Hello I am updating some items with the DTW. i am updating 9000 items. I have made 9 files of 1000 records, i am just updating the picturname field. When i start to upload the files the SQL Memory usage starts to grow more and more. When i try to upl
-
Guest Access Redirect accepting AD credentials
I have a 2106 controller with a guest access SSID on a isolated vlan 192. The guest SSID is setup for webauth and redirects all traffic to the isolated vlan 192. There is a RADIUS server handling AD authentications on the native management vlan. The
-
Per-device/per-user AAA authorization with Freeradius
Hi Folks I'm using a Freeradius with local username database (no LDAP) for authentication.(working well) I have various network devices in my network, and I would like to have custom authorization per user per device : I would like to have 2 types of
-
Number Range for '01' type inspection lot
Dear QM gurus, Inspection lot numebr getting increment by two instead one when doing GR against purchase order, please guide. Thanks in advance Kailash Thakkar