Bug 1125774 - Occur call trace when load kpath patch
Summary: Occur call trace when load kpath patch
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: kpatch
Version: 7.1
Hardware: Unspecified
OS: Unspecified
Target Milestone: rc
: ---
Assignee: Josh Poimboeuf
QA Contact: Linqing Lu
Depends On:
TreeView+ depends on / blocked
Reported: 2014-08-01 03:41 UTC by Qiao Zhao
Modified: 2014-08-04 17:16 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2014-08-04 17:16:27 UTC

Attachments (Terms of Use)
iov.patch (1.80 KB, patch)
2014-08-01 03:41 UTC, Qiao Zhao
no flags Details | Diff

Description Qiao Zhao 2014-08-01 03:41:05 UTC
Created attachment 923062 [details]

Description of problem:
Load kpatch patch failed and find some call trace in `dmesg` output.

# kpatch load kpatch-iov.ko 
loading patch module: kpatch-iov.ko
insmod: ERROR: could not insert module kpatch-iov.ko: Invalid parameters
kpatch: failed to load module kpatch-iov.ko

# dmesg
[3805075.754422] kpatch: can't set ftrace filter at address 0xffffffff814b7e00
[3805075.842828] kpatch: can't remove ftrace filter at address 0xffffffff814b7a40
[3805075.880227] ------------[ cut here ]------------
[3805075.904397] WARNING: at /root/kpatch/kmod/core/core.c:610 kpatch_unlink_object+0x80/0x100 [kpatch]()
[3805075.952172] can't unregister ftrace for address 0xffffffff814b7a40
[3805075.984168] Modules linked in: kpatch_iov(OF+) veth ip6t_REJECT ip6table_filter ip6_tables bridge stp llc authenc esp6 xfrm6_mode_transport des_generic kpatch(OF) sg coret
emp kvm_intel kvm crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel iTCO_wdt tg3 aesni_intel ptp iTCO_vendor_support sb_edac hpilo ipmi_si lrw pps_core hpwdt gf128
mul ioatdma ntb glue_helper ablk_helper lpc_ich cryptd serio_raw pcspkr edac_core mfd_core dca shpchp ipmi_msghandler acpi_power_meter pcc_cpufreq mperf nfsd auth_rpcgss nfs_ac
l lockd sunrpc xfs libcrc32c sr_mod cdrom mgag200 syscopyarea sysfillrect sysimgblt i2c_algo_bit sd_mod drm_kms_helper ttm crc_t10dif ata_generic crct10dif_common pata_acpi drm
 ata_piix libata i2c_core hpsa dm_mirror dm_region_hash dm_log dm_mod [last unloaded: kpatch_iov]
[3805076.347428] CPU: 15 PID: 40316 Comm: insmod Tainted: GF    U  W  O--------------   3.10.0-123.el7.x86_64 #1
[3805076.397569] Hardware name: HP ProLiant DL388p Gen8, BIOS P70 08/20/2012
[3805076.433305]  ffff880a03b21c50 000000004de549b5 ffff880a03b21c08 ffffffff815e19ba
[3805076.474098]  ffff880a03b21c40 ffffffff8105dee1 ffff880a1b51d960 00000000fffffffe
[3805076.512314]  ffff880a21753b40 ffff880a21753b58 00000000ffffffea ffff880a03b21ca8
[3805076.551364] Call Trace:
[3805076.564327]  [<ffffffff815e19ba>] dump_stack+0x19/0x1b
[3805076.590775]  [<ffffffff8105dee1>] warn_slowpath_common+0x61/0x80
[3805076.623164]  [<ffffffff8105df5c>] warn_slowpath_fmt+0x5c/0x80
[3805076.653148]  [<ffffffff814b7a40>] ? kernel_sendmsg+0x50/0x50
[3805076.683715]  [<ffffffffa03916c0>] kpatch_unlink_object+0x80/0x100 [kpatch]
[3805076.719328]  [<ffffffffa0392058>] kpatch_register+0x2c8/0x4a0 [kpatch]
[3805076.753578]  [<ffffffff81194b53>] ? __kmalloc+0x1f3/0x230
[3805076.781968]  [<ffffffffa0034294>] patch_init+0x294/0x1000 [kpatch_iov]
[3805076.815975]  [<ffffffffa0034000>] ? 0xffffffffa0033fff
[3805076.843620]  [<ffffffff810020e2>] do_one_initcall+0xe2/0x190
[3805076.873248]  [<ffffffff810ca7fb>] load_module+0x129b/0x1a90
[3805076.902615]  [<ffffffff812da590>] ? ddebug_proc_write+0xf0/0xf0
[3805076.933706]  [<ffffffff810c7133>] ? copy_module_from_fd.isra.43+0x53/0x150
[3805076.969919]  [<ffffffff810cb1a6>] SyS_finit_module+0xa6/0xd0
[3805076.999775]  [<ffffffff815f2119>] system_call_fastpath+0x16/0x1b
[3805077.031745] ---[ end trace 2beb0698add11d1f ]---

Latest log commit: 35f34238b40dafcf072c40cc35f3066d460980c1

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:

Actual results:

Expected results:

Additional info:
iov.patch in attachment.

Comment 2 Josh Poimboeuf 2014-08-04 17:16:27 UTC
Did you use an old version of kpatch-build?  I'm not able to recreate, as I get the following error during kpatch-build of this patch:

/home/jpoimboe/git/kpatch/kpatch-build/create-diff-object: kpatch_create_mcount_sections: 2179: bad first instruction in SYSC_sendto

The error I see is "normal" because the sendto syscall function doesn't have an ftrace __fentry__ call and is therefore not able to be patched.

Closing this as NOTABUG.  If you still see the original problem with the latest upstream version of kpatch-build, please open a github issue (because kpatch-build isn't delivered in RHEL).

Note You need to log in before you can comment on or make changes to this bug.