In kernel log i can see 8 times the message "unknown partition table", one for every md device created with mdadm that was initialized directly with mkfs (some of them have lvm2). This is with gentoo-sources 2.6.28-r5 and later, i don't know if it exists with previous versions, i've a log from gentoo-sources 2.6.25 and it was ok. Of course everything is working ok, and Device mapper, lvm and mount can use them without errors. I think this is caused because now md devices can be partitioned, but this is not a good reason for writing out useless warnings. Warn comes from fs/partitions/check.c line 191. Reproducible: Always Steps to Reproduce: Actual Results: Kernel complains about a "unknown partition table" with md devices. Expected Results: Kernel should know that md devices can be initialized directly (or used with lvm) without a partition table. Emerge --info: Portage 2.1.6.11 (default/linux/amd64/2008.0, gcc-4.3.2, glibc-2.8_p20080602-r1, 2.6.28-gentoo-r5-zizo x86_64) ================================================================= System uname: Linux-2.6.28-gentoo-r5-zizo-x86_64-Intel-R-_Pentium-R-_4_CPU_3.00GHz-with-glibc2.2.5 Timestamp of tree: Thu, 28 May 2009 07:00:01 +0000 ccache version 2.4 [disabled] app-shells/bash: 3.2_p39 dev-lang/python: 2.5.4-r2 dev-util/ccache: 2.4-r7 dev-util/cmake: 2.6.2-r1 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.3.0-r1 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.63 sys-devel/automake: 1.7.9-r1, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -mtune=native -O2 -pipe -fomit-frame-pointer" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-march=native -mtune=native -O2 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://mirror.switch.ch/mirror/gentoo/ http://gentoo.inode.at/" LANG="it_IT.UTF-8" LC_ALL="it_IT.UTF-8" LDFLAGS="-Wl,-O1" LINGUAS="it" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X acl acpi alsa amd64 bash-completion berkdb bluetooth branding bzip2 cairo cli cracklib crypt cups dbus dri fortran gdbm gif gpm gtk hal iconv isdnlog jpeg kde midi mmx mudflap multilib ncurses nls nptl nptlonly opengl openmp pam pcre perl png pppd python qt3 qt4 readline reflection session spl sse sse2 ssl sysfs tcpd tiff truetype unicode usb v4l v4l2 xcomposite xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="it" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS Partions scheme: /dev/hde /dev/hdg 1 + 1 -> raid0 md1 (ext3) 2 + 2 -> raid0 md2 (ext3) 3 + 3 -> raid0 md3 (ext3) 4 4 -> extended 5 5 -> swap 6 + 6 -> raid1 md6 (ext3) 7 + 7 -> raid1 md7 (ext3) 8 + 8 -> raid1 md8 (ext3) 9 + 9 -> raid1 md9 (ext3) 10 + 10 -> raid1 md10 (ext3) 11 + 11 -> md11 (ext3) Cat /proc/mdstats: Personalities : [raid0] [raid1] md1 : active raid1 hdg1[1] hde1[0] 3911680 blocks [2/2] [UU] md2 : active raid1 hdg2[1] hde2[0] 97667072 blocks [2/2] [UU] md3 : active raid1 hdg3[1] hde3[0] 97667072 blocks [2/2] [UU] md6 : active raid0 hdg6[1] hde6[0] 39085952 blocks 64k chunks md7 : active raid0 hdg7[1] hde7[0] 15647104 blocks 64k chunks md8 : active raid0 hdg8[1] hde8[0] 7823360 blocks 64k chunks md9 : active raid0 hdg9[1] hde9[0] 9783296 blocks 64k chunks md10 : active raid0 hdg10[1] hde10[0] 75200000 blocks 64k chunks md11 : active raid0 hdg11[1] hde11[0] 75184000 blocks 64k chunks unused devices: <none>
Created attachment 192699 [details] Additional Infos In dmesg from 6.057267s to 6.448306s there is the raid detection. An error is at 6.449351s, others at 9.260368 seconds. Config is from a 64bit kernel, but errors are also from a 32bit one.
The error usually means that something in userspace is trying to access partitions on the devices. Correlate the boot times you gave with what was running and see if you can figure out what userspace app was doing the probing (and potentially re-run it to see if it causes the error again).
When errors occur (at ~ 9 seconds) udev is filling /dev ...
This is where udev manges md devices (64-md-raid.rules): # md links hook into "change" events, when the array becomes available SUBSYSTEM!="block", GOTO="md_end" KERNEL!="md[0-9]*", GOTO="md_end" ACTION!="add|change", GOTO="md_end" ATTR{md/array_state}=="|clear|inactive", GOTO="md_end" IMPORT{program}="/sbin/mdadm --detail --export $tempnode" ENV{MD_NAME}=="?*", SYMLINK+="disk/by-id/md-name-$env{MD_NAME}" ENV{MD_UUID}=="?*", SYMLINK+="disk/by-id/md-uuid-$env{MD_UUID}" IMPORT{program}="vol_id --export $tempnode" OPTIONS="link_priority=100" ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}" ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}" LABEL="md_end"
Similar problems here: http://kerneltrap.org/mailarchive/linux-raid/2008/12/30/4543044 Not really the same but can help: https://bugzilla.redhat.com/show_bug.cgi?id=491155
Do either of the {program} blocks in the udev config cause the error? Can you check other program blocks to see if they are the ones that trigger it?
It is not udev, or at least not rule 64-md-raid.rules. U tried to delete it (and also rule 40-gentoo), and messages about "unknown partition table" are still here. The only think that is changed: log with rules: md11:<6> md10:<6> md1:<6> md3:<6> md2:<6> md7:<6> md9:<6> md8: unknown partition table unknown partition table unknown partition table unknown partition table unknown partition table unknown partition table unknown partition table unknown partition table log without rules: md1: unknown partition table md2: unknown partition table md3: unknown partition table md7: unknown partition table md8: unknown partition table md9: unknown partition table md10: unknown partition table md11: unknown partition table Anyway they come out when rc calls sysinit. I've to check if also md6 (root, this is the first "unknown partition table" message, 3 seconds before others) comes out when rc starts, but i think it will be hard to know.
Created attachment 193164 [details] Boot Chart I emerged bootchart, and this is the resulting png. With red line there is the big group of errors (it is at 13.2 because i changed kernel config). As you can see with the red line starts vgscan, but it is not involved with errors because i excluded md devices from scan. Another thing i noticed is that the first error (md6: unknown partition table, md6 is my root) is at 5.1 seconds, when md1_raid, md2_raid and md3_raid start (they are three raid0).
Created attachment 195348 [details, diff] patch to find out the calling process This is almost certainly not a kernel bug, something in userspace is causing the probe. If you are really bothered by this, something like this patch will help you identify which process is generating the request.
Same here: ... md0: unknown partition table XFS mounting filesystem md0 Ending clean XFS mount for filesystem: md0 md1: unknown partition table ... every md device gets tagged with a "unknown partition table" in dmesg output. uname -a: Linux docserv 2.6.30-gentoo-r8 #14 SMP Wed Nov 11 13:16:04 CST 2009 i686 Intel(R) Xeon(R) CPU X3220 @ 2.40GHz GenuineIntel GNU/Linux Why does this happen?