[kernel-xen] kernel-xen doesn't provide ABI version, variant and standard kernel symbols

Yuriy Kohut ykohut at onapp.com
Wed Oct 10 23:29:57 EST 2012

Hi Steven,

The data is required to make sure other packages which provide kernel related stuff (for example kernel modules) are compatible with the installed kernel.

Please process with the following steps, which show you what i'm taking about:
1. Download UFS kernel module rpm package:
# wget ftp://ftp.pbone.net/mirror/elrepo.org/elrepo/el6/x86_64/RPMS/kmod-ufs-0.0-1.el6.elrepo.x86_64.rpm

2. Get the Requires for download package:
# rpm -qp --queryformat "[%{REQUIRENAME} %{REQUIREVERSION}\n]" kmod-ufs-0.0-1.el6.elrepo.x86_64.rpm
warning: kmod-ufs-0.0-1.el6.elrepo.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID baadae52: NOKEY
rpmlib(VersionedDependencies) 3.0.3-1
rpmlib(FileDigests) 4.6.0-1
rpmlib(PayloadFilesHavePrefix) 4.0-1
rpmlib(CompressedFileNames) 3.0.4-1
kernel(__bforget) 0x334f658f
kernel(block_read_full_page) 0xac51a87a
kernel(block_sync_page) 0xfb08d778
kernel(block_truncate_page) 0xce40fc94
kernel(block_write_begin) 0x4ca0a30d
kernel(block_write_end) 0xb40e6fe6
kernel(block_write_full_page) 0x9ac18101
kernel(__bread) 0x5939a439
kernel(__brelse) 0xc4fd7707
kernel(capable) 0x7dceceac
kernel(clear_inode) 0x1af07d43
kernel(_cond_resched) 0xa1c76e0a
kernel(current_kernel_time) 0x67053080
kernel(d_alloc_root) 0x7cb29e4b
kernel(d_instantiate) 0x870235ff
kernel(do_sync_read) 0x970068ca
kernel(do_sync_write) 0xe5b526bc
kernel(d_rehash) 0x907c1964
kernel(find_lock_page) 0x12f4011c
kernel(find_next_zero_bit) 0x479c3c86
kernel(find_or_create_page) 0x1bc51814
kernel(generic_block_bmap) 0x070cf780
kernel(generic_file_aio_read) 0x574237ff
kernel(generic_file_aio_write) 0x7b286bd7
kernel(generic_file_llseek) 0x8b3eb7b8
kernel(generic_file_mmap) 0x5b018525
kernel(generic_file_open) 0xb2f15909
kernel(generic_file_splice_read) 0xac003bb6
kernel(generic_read_dir) 0x06856361
kernel(generic_readlink) 0x049b1a88
kernel(generic_write_end) 0xd66d8789
kernel(__getblk) 0xb8e921c8
kernel(get_sb_bdev) 0xddbd934c
kernel(get_seconds) 0x405c1144
kernel(iget_failed) 0xe524bdf6
kernel(iget_locked) 0x45303fbc
kernel(init_special_inode) 0xdb4104c6
kernel(inode_add_bytes) 0x1bd83517
kernel(inode_change_ok) 0xf0fc759e
kernel(inode_init_once) 0x09e1faad
kernel(inode_setattr) 0x860c3da9
kernel(inode_sub_bytes) 0x1a97b1a6
kernel(__insert_inode_hash) 0x5c35d4d4
kernel(iput) 0x6f7237e5
kernel(is_bad_inode) 0x6a97145a
kernel(kfree) 0x037a0cba
kernel(kill_block_super) 0x0f72d0ce
kernel(__kmalloc) 0x5a34a45c
kernel(kmem_cache_alloc) 0xee065ced
kernel(kmem_cache_alloc_notrace) 0xf85ccdae
kernel(kmem_cache_create) 0xe4a639f8
kernel(kmem_cache_destroy) 0x806e575f
kernel(kmem_cache_free) 0x7329e40d
kernel(ll_rw_block) 0xebebf59e
kernel(__lock_buffer) 0xeba79d27
kernel(lock_kernel) 0x3656bf5a
kernel(__lock_page) 0xda778235
kernel(lock_super) 0x34bc7f7f
kernel(make_bad_inode) 0x349d7c33
kernel(malloc_sizes) 0xd691cba2
kernel(mark_buffer_dirty) 0xb013147c
kernel(__mark_inode_dirty) 0x38ec969f
kernel(match_token) 0x44e9a829
kernel(mcount) 0xb4390f9a
kernel(memcpy) 0x236c8c64
kernel(memset) 0xde0bdcff
kernel(module_layout) 0x14522340
kernel(mutex_lock) 0xfee8a795
kernel(mutex_unlock) 0x03758301
kernel(new_inode) 0x1bbc7e28
kernel(page_symlink) 0x224261b9
kernel(page_symlink_inode_operations) 0xb150a568
kernel(panic) 0x0e52592a
kernel(per_cpu__current_task) 0x4f1939c7
kernel(printk) 0xea147363
kernel(put_page) 0x72b295a3
kernel(read_cache_page) 0xfcde4fa3
kernel(register_filesystem) 0x78b31f3f
kernel(sb_set_blocksize) 0x637bcc35
kernel(seq_printf) 0x77e93f6f
kernel(set_page_dirty) 0x434249fc
kernel(simple_fsync) 0x48ab86ed
kernel(slab_buffer_size) 0xfa2e111f
kernel(strlen) 0x25ec1b28
kernel(strsep) 0x85df9b6c
kernel(sync_dirty_buffer) 0x632d43f3
kernel(__tracepoint_kmalloc) 0x105e2727
kernel(truncate_inode_pages) 0x603f38cb
kernel(unlock_buffer) 0xf8e8edd3
kernel(unlock_kernel) 0xb1f975aa
kernel(unlock_new_inode) 0x6dc5dd8b
kernel(unlock_page) 0x6803f8dd
kernel(unlock_super) 0x03ca0f21
kernel(unmap_underlying_metadata) 0xa7c83531
kernel(unregister_filesystem) 0x95667111
kernel(vfs_dq_drop) 0x82abd885
kernel(vmtruncate) 0x2a3dbf0d
kernel(vsnprintf) 0x35b0650f
kernel(__wait_on_buffer) 0x3e931a66
kernel(write_one_page) 0x24c8cf3b
kernel(yield) 0x760a0f4f
rpmlib(PayloadIsXz) 5.2-1

The requirements above are provided by regular RHEL/CentOS 6.x kernel.
For example, please run:
# rpm -q --queryformat "[%{PROVIDENAME} %{PROVIDEVERSION}\n]" kernel

But such Provides are not included into kernel-xen-3.5.4-3.x86_64.

Thanks for quick response.


On Oct 10, 2012, at 3:15 PM, Steven Haigh wrote:

> Hi Yuriy,
> I had a quick look and I can't see what those extra provides are actually for. I'm a bit hesitant to add extra provides without:
> 	a) knowing what they are used for; and
> 	b) knowing if my build provides them.
> It may or may not be bad that these are not added, but it could be even worse if they are there and not provided in the package.
> Do you have any further information on the values and what they are used for - maybe an example of something that relies on them?
> Steven Haigh
> Email: netwiz at crc.id.au
> Web: http://www.crc.id.au
> Phone: (03) 9001 6090 - 0412 935 897
> Fax: (03) 8338 0299
> On 10/10/2012 10:53 PM, Yuriy Kohut wrote:
>> Hello,
>> I'm highly interested in using the kernel-xen provided.
>> I have noticed that the latest kernel-xen-3.5.4-3.x86_64 package from the repository doesn't provide standard data such as:  ABI version, variant and kernel symbols. For example, Provides for the package looks like:
>> rpm -q --queryformat "[%{PROVIDES}\n]" kernel-xen-3.5.4-3.x86_64
>> kernel-xen
>> kernel-xen
>> kernel-xen(x86-64)
>> While regular RHEL/CentOS 6.x kernel provides much more data:
>> ------
>> kernel(DSA_verify)
>> kernel(FsmChangeState)
>> kernel(FsmDelTimer)
>> kernel(FsmEvent)
>> kernel(FsmFree)
>> kernel(FsmInitTimer)
>> kernel(FsmNew)
>> kernel(FsmRestartTimer)
>> kernel(HiSax_closecard)
>> kernel(IO_APIC_get_PCI_irq_vector)
>> kernel(I_BDEV)
>> kernel(NS8390_init)
>> kernel(PageHuge)
>> kernel(____pagevec_lru_add)
>> kernel(___pskb_trim)
>> kernel(__add_pages)
>>>> kernel(zlib_inflate_workspacesize)
>> -----
>> The data need to keep compatibility while installing kernel related packages, for example extra kernel modules,
>> Thanks in advance for the answer and your job.
>> ---
>> Yura
>> _______________________________________________
>> kernel-xen mailing list
>> kernel-xen at lists.wireless.org.au
>> https://lists.wireless.org.au/mailman/listinfo/kernel-xen
> _______________________________________________
> kernel-xen mailing list
> kernel-xen at lists.wireless.org.au
> https://lists.wireless.org.au/mailman/listinfo/kernel-xen

More information about the kernel-xen mailing list