From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [00/13] replace print_symbol() with printk()-s From: Sergey Senozhatsky Message-Id: <20171221055427.GA385@jagdpanzerIV> Date: Thu, 21 Dec 2017 14:54:27 +0900 To: Joe Perches Cc: Sergey Senozhatsky , Andrew Morton , Russell King , Catalin Marinas , Mark Salter , Tony Luck , David Howells , Yoshinori Sato , Guan Xuetao , Borislav Petkov , Greg Kroah-Hartman , Thomas Gleixner , Peter Zijlstra , Vineet Gupta , Fengguang Wu , Steven Rostedt , Petr Mladek , LKML , linux-arm-kernel@lists.infradead.org, linux-c6x-dev@linux-c6x.org, linux-ia64@vger.kernel.org, linux-am33-list@redhat.com, linux-sh@vger.kernel.org, linux-edac@vger.kernel.org, x86@kernel.org, linux-snps-arc@lists.infradead.org, Sergey Senozhatsky List-ID: T24gKDEyLzExLzE3IDE5OjEwKSwgSm9lIFBlcmNoZXMgd3JvdGU6ClsuLl0KPiBBcyBmYXIgYXMg SSdtIGNvbmNlcm5lZCwgYXMgc29vbiBhcyB0aGVyZSBpcwo+IG5vIGxvbmdlciBhIHNpbmdsZSB1 c2VyIGluIHRoZSBrZXJuZWwgdHJlZSwKPiBiZXR0ZXIgdG8gZGVsZXRlIGl0IGluc3RlYWQuCgpz b3VuZHMgZ29vZCB0byBtZS4gY2FuIGRyb3AgaXQsIG9uY2UgdGhlIHNlcmllcyB1cHN0cmVhbWVk LgoKODwgLS0tCgpGcm9tOiBTZXJnZXkgU2Vub3poYXRza3kgPHNlcmdleS5zZW5vemhhdHNreUBn bWFpbC5jb20+ClN1YmplY3Q6IFtQQVRDSF0ga2FsbHN5bXM6IHJlbW92ZSBwcmludF9zeW1ib2wo KSBmdW5jdGlvbgoKTm8gbW9yZSBwcmludF9zeW1ib2woKS9fX3ByaW50X3N5bWJvbCgpIHVzZXJz IGxlZnQsIHJlbW92ZSB0aGVzZQpzeW1ib2xzLgoKU2lnbmVkLW9mZi1ieTogU2VyZ2V5IFNlbm96 aGF0c2t5IDxzZXJnZXkuc2Vub3poYXRza3lAZ21haWwuY29tPgpTdWdnZXN0ZWQtYnk6IEpvZSBQ ZXJjaGVzIDxqb2VAcGVyY2hlcy5jb20+Ci0tLQogRG9jdW1lbnRhdGlvbi9maWxlc3lzdGVtcy9z eXNmcy50eHQgICAgICAgICAgICAgICAgICAgIHwgIDQgKystLQogRG9jdW1lbnRhdGlvbi90cmFu c2xhdGlvbnMvemhfQ04vZmlsZXN5c3RlbXMvc3lzZnMudHh0IHwgIDQgKystLQogaW5jbHVkZS9s aW51eC9rYWxsc3ltcy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTggLS0tLS0t LS0tLS0tLS0tLS0tCiBrZXJuZWwva2FsbHN5bXMuYyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAxMSAtLS0tLS0tLS0tLQogNCBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlv bnMoKyksIDMzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZmlsZXN5 c3RlbXMvc3lzZnMudHh0IGIvRG9jdW1lbnRhdGlvbi9maWxlc3lzdGVtcy9zeXNmcy50eHQKaW5k ZXggOWEzNjU4Y2MzOTllLi5hMTQyNmNhYmNlZjEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24v ZmlsZXN5c3RlbXMvc3lzZnMudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZmlsZXN5c3RlbXMvc3lz ZnMudHh0CkBAIC0xNTQsOCArMTU0LDggQEAgc3RhdGljIHNzaXplX3QgZGV2X2F0dHJfc2hvdyhz dHJ1Y3Qga29iamVjdCAqa29iaiwgc3RydWN0IGF0dHJpYnV0ZSAqYXR0ciwKICAgICAgICAgaWYg KGRldl9hdHRyLT5zaG93KQogICAgICAgICAgICAgICAgIHJldCA9IGRldl9hdHRyLT5zaG93KGRl diwgZGV2X2F0dHIsIGJ1Zik7CiAgICAgICAgIGlmIChyZXQgPj0gKHNzaXplX3QpUEFHRV9TSVpF KSB7Ci0gICAgICAgICAgICAgICAgcHJpbnRfc3ltYm9sKCJkZXZfYXR0cl9zaG93OiAlcyByZXR1 cm5lZCBiYWQgY291bnRcbiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1bnNp Z25lZCBsb25nKWRldl9hdHRyLT5zaG93KTsKKyAgICAgICAgICAgICAgICBwcmludGsoImRldl9h dHRyX3Nob3c6ICVwUyByZXR1cm5lZCBiYWQgY291bnRcbiIsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGRldl9hdHRyLT5zaG93KTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4g cmV0OwogfQpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90cmFuc2xhdGlvbnMvemhfQ04vZmls ZXN5c3RlbXMvc3lzZnMudHh0IGIvRG9jdW1lbnRhdGlvbi90cmFuc2xhdGlvbnMvemhfQ04vZmls ZXN5c3RlbXMvc3lzZnMudHh0CmluZGV4IDdkM2IwNWVkYjhjZS4uNDUyMjcxZGRhMTQxIDEwMDY0 NAotLS0gYS9Eb2N1bWVudGF0aW9uL3RyYW5zbGF0aW9ucy96aF9DTi9maWxlc3lzdGVtcy9zeXNm cy50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi90cmFuc2xhdGlvbnMvemhfQ04vZmlsZXN5c3RlbXMv c3lzZnMudHh0CkBAIC0xNjcsOCArMTY3LDggQEAgc3RhdGljIHNzaXplX3QgZGV2X2F0dHJfc2hv dyhzdHJ1Y3Qga29iamVjdCAqa29iaiwgc3RydWN0IGF0dHJpYnV0ZSAqYXR0ciwKICAgICAgICAg aWYgKGRldl9hdHRyLT5zaG93KQogICAgICAgICAgICAgICAgIHJldCA9IGRldl9hdHRyLT5zaG93 KGRldiwgZGV2X2F0dHIsIGJ1Zik7CiAgICAgICAgIGlmIChyZXQgPj0gKHNzaXplX3QpUEFHRV9T SVpFKSB7Ci0gICAgICAgICAgICAgICAgcHJpbnRfc3ltYm9sKCJkZXZfYXR0cl9zaG93OiAlcyBy ZXR1cm5lZCBiYWQgY291bnRcbiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1 bnNpZ25lZCBsb25nKWRldl9hdHRyLT5zaG93KTsKKyAgICAgICAgICAgICAgICBwcmludGsoImRl dl9hdHRyX3Nob3c6ICVwUyByZXR1cm5lZCBiYWQgY291bnRcbiIsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGRldl9hdHRyLT5zaG93KTsKICAgICAgICAgfQogICAgICAgICByZXR1 cm4gcmV0OwogfQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9rYWxsc3ltcy5oIGIvaW5jbHVk ZS9saW51eC9rYWxsc3ltcy5oCmluZGV4IDcyODhmOWMzOTViNi4uZDc5ZDFlNzQ4NmJkIDEwMDY0 NAotLS0gYS9pbmNsdWRlL2xpbnV4L2thbGxzeW1zLmgKKysrIGIvaW5jbHVkZS9saW51eC9rYWxs c3ltcy5oCkBAIC05NCw5ICs5NCw2IEBAIGV4dGVybiBpbnQgc3ByaW50X3N5bWJvbChjaGFyICpi dWZmZXIsIHVuc2lnbmVkIGxvbmcgYWRkcmVzcyk7CiBleHRlcm4gaW50IHNwcmludF9zeW1ib2xf bm9fb2Zmc2V0KGNoYXIgKmJ1ZmZlciwgdW5zaWduZWQgbG9uZyBhZGRyZXNzKTsKIGV4dGVybiBp bnQgc3ByaW50X2JhY2t0cmFjZShjaGFyICpidWZmZXIsIHVuc2lnbmVkIGxvbmcgYWRkcmVzcyk7 CiAKLS8qIExvb2sgdXAgYSBrZXJuZWwgc3ltYm9sIGFuZCBwcmludCBpdCB0byB0aGUga2VybmVs IG1lc3NhZ2VzLiAqLwotZXh0ZXJuIHZvaWQgX19wcmludF9zeW1ib2woY29uc3QgY2hhciAqZm10 LCB1bnNpZ25lZCBsb25nIGFkZHJlc3MpOwotCiBpbnQgbG9va3VwX3N5bWJvbF9uYW1lKHVuc2ln bmVkIGxvbmcgYWRkciwgY2hhciAqc3ltbmFtZSk7CiBpbnQgbG9va3VwX3N5bWJvbF9hdHRycyh1 bnNpZ25lZCBsb25nIGFkZHIsIHVuc2lnbmVkIGxvbmcgKnNpemUsIHVuc2lnbmVkIGxvbmcgKm9m ZnNldCwgY2hhciAqbW9kbmFtZSwgY2hhciAqbmFtZSk7CiAKQEAgLTE2NiwyMyArMTYzLDggQEAg c3RhdGljIGlubGluZSBpbnQga2FsbHN5bXNfc2hvd192YWx1ZSh2b2lkKQogCXJldHVybiBmYWxz ZTsKIH0KIAotLyogU3R1cGlkIHRoYXQgdGhpcyBkb2VzIG5vdGhpbmcsIGJ1dCBJIGRpZG4ndCBj cmVhdGUgdGhpcyBtZXNzLiAqLwotI2RlZmluZSBfX3ByaW50X3N5bWJvbChmbXQsIGFkZHIpCiAj ZW5kaWYgLypDT05GSUdfS0FMTFNZTVMqLwogCi0vKiBUaGlzIG1hY3JvIGFsbG93cyB1cyB0byBr ZWVwIHByaW50ayB0eXBlY2hlY2tpbmcgKi8KLXN0YXRpYyBfX3ByaW50ZigxLCAyKQotdm9pZCBf X2NoZWNrX3ByaW50c3ltX2Zvcm1hdChjb25zdCBjaGFyICpmbXQsIC4uLikKLXsKLX0KLQotc3Rh dGljIGlubGluZSB2b2lkIHByaW50X3N5bWJvbChjb25zdCBjaGFyICpmbXQsIHVuc2lnbmVkIGxv bmcgYWRkcikKLXsKLQlfX2NoZWNrX3ByaW50c3ltX2Zvcm1hdChmbXQsICIiKTsKLQlfX3ByaW50 X3N5bWJvbChmbXQsICh1bnNpZ25lZCBsb25nKQotCQkgICAgICAgX19idWlsdGluX2V4dHJhY3Rf cmV0dXJuX2FkZHIoKHZvaWQgKilhZGRyKSk7Ci19Ci0KIHN0YXRpYyBpbmxpbmUgdm9pZCBwcmlu dF9pcF9zeW0odW5zaWduZWQgbG9uZyBpcCkKIHsKIAlwcmludGsoIls8JXA+XSAlcFNcbiIsICh2 b2lkICopIGlwLCAodm9pZCAqKSBpcCk7CmRpZmYgLS1naXQgYS9rZXJuZWwva2FsbHN5bXMuYyBi L2tlcm5lbC9rYWxsc3ltcy5jCmluZGV4IDI0ZjQ1NjY4OWY5Yy4uYTIzZTIxYWRhODFiIDEwMDY0 NAotLS0gYS9rZXJuZWwva2FsbHN5bXMuYworKysgYi9rZXJuZWwva2FsbHN5bXMuYwpAQCAtNDI5 LDE3ICs0MjksNiBAQCBpbnQgc3ByaW50X2JhY2t0cmFjZShjaGFyICpidWZmZXIsIHVuc2lnbmVk IGxvbmcgYWRkcmVzcykKIAlyZXR1cm4gX19zcHJpbnRfc3ltYm9sKGJ1ZmZlciwgYWRkcmVzcywg LTEsIDEpOwogfQogCi0vKiBMb29rIHVwIGEga2VybmVsIHN5bWJvbCBhbmQgcHJpbnQgaXQgdG8g dGhlIGtlcm5lbCBtZXNzYWdlcy4gKi8KLXZvaWQgX19wcmludF9zeW1ib2woY29uc3QgY2hhciAq Zm10LCB1bnNpZ25lZCBsb25nIGFkZHJlc3MpCi17Ci0JY2hhciBidWZmZXJbS1NZTV9TWU1CT0xf TEVOXTsKLQotCXNwcmludF9zeW1ib2woYnVmZmVyLCBhZGRyZXNzKTsKLQotCXByaW50ayhmbXQs IGJ1ZmZlcik7Ci19Ci1FWFBPUlRfU1lNQk9MKF9fcHJpbnRfc3ltYm9sKTsKLQogLyogVG8gYXZv aWQgdXNpbmcgZ2V0X3N5bWJvbF9vZmZzZXQgZm9yIGV2ZXJ5IHN5bWJvbCwgd2UgY2FycnkgcHJl Zml4IGFsb25nLiAqLwogc3RydWN0IGthbGxzeW1faXRlciB7CiAJbG9mZl90IHBvczsK From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergey Senozhatsky Date: Thu, 21 Dec 2017 05:54:27 +0000 Subject: Re: [PATCH 00/13] replace print_symbol() with printk()-s Message-Id: <20171221055427.GA385@jagdpanzerIV> List-Id: References: <20171211125025.2270-1-sergey.senozhatsky@gmail.com> <1513009569.26342.43.camel@perches.com> <20171212024757.GC7798@jagdpanzerIV> <1513048252.3036.23.camel@perches.com> In-Reply-To: <1513048252.3036.23.camel@perches.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-arm-kernel@lists.infradead.org On (12/11/17 19:10), Joe Perches wrote: [..] > As far as I'm concerned, as soon as there is > no longer a single user in the kernel tree, > better to delete it instead. sounds good to me. can drop it, once the series upstreamed. 8< --- From: Sergey Senozhatsky Subject: [PATCH] kallsyms: remove print_symbol() function No more print_symbol()/__print_symbol() users left, remove these symbols. Signed-off-by: Sergey Senozhatsky Suggested-by: Joe Perches --- Documentation/filesystems/sysfs.txt | 4 ++-- Documentation/translations/zh_CN/filesystems/sysfs.txt | 4 ++-- include/linux/kallsyms.h | 18 ------------------ kernel/kallsyms.c | 11 ----------- 4 files changed, 4 insertions(+), 33 deletions(-) diff --git a/Documentation/filesystems/sysfs.txt b/Documentation/filesystems/sysfs.txt index 9a3658cc399e..a1426cabcef1 100644 --- a/Documentation/filesystems/sysfs.txt +++ b/Documentation/filesystems/sysfs.txt @@ -154,8 +154,8 @@ static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, if (dev_attr->show) ret = dev_attr->show(dev, dev_attr, buf); if (ret >= (ssize_t)PAGE_SIZE) { - print_symbol("dev_attr_show: %s returned bad count\n", - (unsigned long)dev_attr->show); + printk("dev_attr_show: %pS returned bad count\n", + dev_attr->show); } return ret; } diff --git a/Documentation/translations/zh_CN/filesystems/sysfs.txt b/Documentation/translations/zh_CN/filesystems/sysfs.txt index 7d3b05edb8ce..452271dda141 100644 --- a/Documentation/translations/zh_CN/filesystems/sysfs.txt +++ b/Documentation/translations/zh_CN/filesystems/sysfs.txt @@ -167,8 +167,8 @@ static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, if (dev_attr->show) ret = dev_attr->show(dev, dev_attr, buf); if (ret >= (ssize_t)PAGE_SIZE) { - print_symbol("dev_attr_show: %s returned bad count\n", - (unsigned long)dev_attr->show); + printk("dev_attr_show: %pS returned bad count\n", + dev_attr->show); } return ret; } diff --git a/include/linux/kallsyms.h b/include/linux/kallsyms.h index 7288f9c395b6..d79d1e7486bd 100644 --- a/include/linux/kallsyms.h +++ b/include/linux/kallsyms.h @@ -94,9 +94,6 @@ extern int sprint_symbol(char *buffer, unsigned long address); extern int sprint_symbol_no_offset(char *buffer, unsigned long address); extern int sprint_backtrace(char *buffer, unsigned long address); -/* Look up a kernel symbol and print it to the kernel messages. */ -extern void __print_symbol(const char *fmt, unsigned long address); - int lookup_symbol_name(unsigned long addr, char *symname); int lookup_symbol_attrs(unsigned long addr, unsigned long *size, unsigned long *offset, char *modname, char *name); @@ -166,23 +163,8 @@ static inline int kallsyms_show_value(void) return false; } -/* Stupid that this does nothing, but I didn't create this mess. */ -#define __print_symbol(fmt, addr) #endif /*CONFIG_KALLSYMS*/ -/* This macro allows us to keep printk typechecking */ -static __printf(1, 2) -void __check_printsym_format(const char *fmt, ...) -{ -} - -static inline void print_symbol(const char *fmt, unsigned long addr) -{ - __check_printsym_format(fmt, ""); - __print_symbol(fmt, (unsigned long) - __builtin_extract_return_addr((void *)addr)); -} - static inline void print_ip_sym(unsigned long ip) { printk("[<%p>] %pS\n", (void *) ip, (void *) ip); diff --git a/kernel/kallsyms.c b/kernel/kallsyms.c index 24f456689f9c..a23e21ada81b 100644 --- a/kernel/kallsyms.c +++ b/kernel/kallsyms.c @@ -429,17 +429,6 @@ int sprint_backtrace(char *buffer, unsigned long address) return __sprint_symbol(buffer, address, -1, 1); } -/* Look up a kernel symbol and print it to the kernel messages. */ -void __print_symbol(const char *fmt, unsigned long address) -{ - char buffer[KSYM_SYMBOL_LEN]; - - sprint_symbol(buffer, address); - - printk(fmt, buffer); -} -EXPORT_SYMBOL(__print_symbol); - /* To avoid using get_symbol_offset for every symbol, we carry prefix along. */ struct kallsym_iter { loff_t pos; -- 2.15.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: sergey.senozhatsky.work@gmail.com (Sergey Senozhatsky) Date: Thu, 21 Dec 2017 14:54:27 +0900 Subject: [PATCH 00/13] replace print_symbol() with printk()-s In-Reply-To: <1513048252.3036.23.camel@perches.com> References: <20171211125025.2270-1-sergey.senozhatsky@gmail.com> <1513009569.26342.43.camel@perches.com> <20171212024757.GC7798@jagdpanzerIV> <1513048252.3036.23.camel@perches.com> List-ID: Message-ID: <20171221055427.GA385@jagdpanzerIV> To: linux-snps-arc@lists.infradead.org On (12/11/17 19:10), Joe Perches wrote: [..] > As far as I'm concerned, as soon as there is > no longer a single user in the kernel tree, > better to delete it instead. sounds good to me. can drop it, once the series upstreamed. 8< --- From: Sergey Senozhatsky Subject: [PATCH] kallsyms: remove print_symbol() function No more print_symbol()/__print_symbol() users left, remove these symbols. Signed-off-by: Sergey Senozhatsky Suggested-by: Joe Perches --- Documentation/filesystems/sysfs.txt | 4 ++-- Documentation/translations/zh_CN/filesystems/sysfs.txt | 4 ++-- include/linux/kallsyms.h | 18 ------------------ kernel/kallsyms.c | 11 ----------- 4 files changed, 4 insertions(+), 33 deletions(-) diff --git a/Documentation/filesystems/sysfs.txt b/Documentation/filesystems/sysfs.txt index 9a3658cc399e..a1426cabcef1 100644 --- a/Documentation/filesystems/sysfs.txt +++ b/Documentation/filesystems/sysfs.txt @@ -154,8 +154,8 @@ static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, if (dev_attr->show) ret = dev_attr->show(dev, dev_attr, buf); if (ret >= (ssize_t)PAGE_SIZE) { - print_symbol("dev_attr_show: %s returned bad count\n", - (unsigned long)dev_attr->show); + printk("dev_attr_show: %pS returned bad count\n", + dev_attr->show); } return ret; } diff --git a/Documentation/translations/zh_CN/filesystems/sysfs.txt b/Documentation/translations/zh_CN/filesystems/sysfs.txt index 7d3b05edb8ce..452271dda141 100644 --- a/Documentation/translations/zh_CN/filesystems/sysfs.txt +++ b/Documentation/translations/zh_CN/filesystems/sysfs.txt @@ -167,8 +167,8 @@ static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, if (dev_attr->show) ret = dev_attr->show(dev, dev_attr, buf); if (ret >= (ssize_t)PAGE_SIZE) { - print_symbol("dev_attr_show: %s returned bad count\n", - (unsigned long)dev_attr->show); + printk("dev_attr_show: %pS returned bad count\n", + dev_attr->show); } return ret; } diff --git a/include/linux/kallsyms.h b/include/linux/kallsyms.h index 7288f9c395b6..d79d1e7486bd 100644 --- a/include/linux/kallsyms.h +++ b/include/linux/kallsyms.h @@ -94,9 +94,6 @@ extern int sprint_symbol(char *buffer, unsigned long address); extern int sprint_symbol_no_offset(char *buffer, unsigned long address); extern int sprint_backtrace(char *buffer, unsigned long address); -/* Look up a kernel symbol and print it to the kernel messages. */ -extern void __print_symbol(const char *fmt, unsigned long address); - int lookup_symbol_name(unsigned long addr, char *symname); int lookup_symbol_attrs(unsigned long addr, unsigned long *size, unsigned long *offset, char *modname, char *name); @@ -166,23 +163,8 @@ static inline int kallsyms_show_value(void) return false; } -/* Stupid that this does nothing, but I didn't create this mess. */ -#define __print_symbol(fmt, addr) #endif /*CONFIG_KALLSYMS*/ -/* This macro allows us to keep printk typechecking */ -static __printf(1, 2) -void __check_printsym_format(const char *fmt, ...) -{ -} - -static inline void print_symbol(const char *fmt, unsigned long addr) -{ - __check_printsym_format(fmt, ""); - __print_symbol(fmt, (unsigned long) - __builtin_extract_return_addr((void *)addr)); -} - static inline void print_ip_sym(unsigned long ip) { printk("[<%p>] %pS\n", (void *) ip, (void *) ip); diff --git a/kernel/kallsyms.c b/kernel/kallsyms.c index 24f456689f9c..a23e21ada81b 100644 --- a/kernel/kallsyms.c +++ b/kernel/kallsyms.c @@ -429,17 +429,6 @@ int sprint_backtrace(char *buffer, unsigned long address) return __sprint_symbol(buffer, address, -1, 1); } -/* Look up a kernel symbol and print it to the kernel messages. */ -void __print_symbol(const char *fmt, unsigned long address) -{ - char buffer[KSYM_SYMBOL_LEN]; - - sprint_symbol(buffer, address); - - printk(fmt, buffer); -} -EXPORT_SYMBOL(__print_symbol); - /* To avoid using get_symbol_offset for every symbol, we carry prefix along. */ struct kallsym_iter { loff_t pos; -- 2.15.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: sergey.senozhatsky.work@gmail.com (Sergey Senozhatsky) Date: Thu, 21 Dec 2017 14:54:27 +0900 Subject: [PATCH 00/13] replace print_symbol() with printk()-s In-Reply-To: <1513048252.3036.23.camel@perches.com> References: <20171211125025.2270-1-sergey.senozhatsky@gmail.com> <1513009569.26342.43.camel@perches.com> <20171212024757.GC7798@jagdpanzerIV> <1513048252.3036.23.camel@perches.com> Message-ID: <20171221055427.GA385@jagdpanzerIV> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On (12/11/17 19:10), Joe Perches wrote: [..] > As far as I'm concerned, as soon as there is > no longer a single user in the kernel tree, > better to delete it instead. sounds good to me. can drop it, once the series upstreamed. 8< --- From: Sergey Senozhatsky Subject: [PATCH] kallsyms: remove print_symbol() function No more print_symbol()/__print_symbol() users left, remove these symbols. Signed-off-by: Sergey Senozhatsky Suggested-by: Joe Perches --- Documentation/filesystems/sysfs.txt | 4 ++-- Documentation/translations/zh_CN/filesystems/sysfs.txt | 4 ++-- include/linux/kallsyms.h | 18 ------------------ kernel/kallsyms.c | 11 ----------- 4 files changed, 4 insertions(+), 33 deletions(-) diff --git a/Documentation/filesystems/sysfs.txt b/Documentation/filesystems/sysfs.txt index 9a3658cc399e..a1426cabcef1 100644 --- a/Documentation/filesystems/sysfs.txt +++ b/Documentation/filesystems/sysfs.txt @@ -154,8 +154,8 @@ static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, if (dev_attr->show) ret = dev_attr->show(dev, dev_attr, buf); if (ret >= (ssize_t)PAGE_SIZE) { - print_symbol("dev_attr_show: %s returned bad count\n", - (unsigned long)dev_attr->show); + printk("dev_attr_show: %pS returned bad count\n", + dev_attr->show); } return ret; } diff --git a/Documentation/translations/zh_CN/filesystems/sysfs.txt b/Documentation/translations/zh_CN/filesystems/sysfs.txt index 7d3b05edb8ce..452271dda141 100644 --- a/Documentation/translations/zh_CN/filesystems/sysfs.txt +++ b/Documentation/translations/zh_CN/filesystems/sysfs.txt @@ -167,8 +167,8 @@ static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, if (dev_attr->show) ret = dev_attr->show(dev, dev_attr, buf); if (ret >= (ssize_t)PAGE_SIZE) { - print_symbol("dev_attr_show: %s returned bad count\n", - (unsigned long)dev_attr->show); + printk("dev_attr_show: %pS returned bad count\n", + dev_attr->show); } return ret; } diff --git a/include/linux/kallsyms.h b/include/linux/kallsyms.h index 7288f9c395b6..d79d1e7486bd 100644 --- a/include/linux/kallsyms.h +++ b/include/linux/kallsyms.h @@ -94,9 +94,6 @@ extern int sprint_symbol(char *buffer, unsigned long address); extern int sprint_symbol_no_offset(char *buffer, unsigned long address); extern int sprint_backtrace(char *buffer, unsigned long address); -/* Look up a kernel symbol and print it to the kernel messages. */ -extern void __print_symbol(const char *fmt, unsigned long address); - int lookup_symbol_name(unsigned long addr, char *symname); int lookup_symbol_attrs(unsigned long addr, unsigned long *size, unsigned long *offset, char *modname, char *name); @@ -166,23 +163,8 @@ static inline int kallsyms_show_value(void) return false; } -/* Stupid that this does nothing, but I didn't create this mess. */ -#define __print_symbol(fmt, addr) #endif /*CONFIG_KALLSYMS*/ -/* This macro allows us to keep printk typechecking */ -static __printf(1, 2) -void __check_printsym_format(const char *fmt, ...) -{ -} - -static inline void print_symbol(const char *fmt, unsigned long addr) -{ - __check_printsym_format(fmt, ""); - __print_symbol(fmt, (unsigned long) - __builtin_extract_return_addr((void *)addr)); -} - static inline void print_ip_sym(unsigned long ip) { printk("[<%p>] %pS\n", (void *) ip, (void *) ip); diff --git a/kernel/kallsyms.c b/kernel/kallsyms.c index 24f456689f9c..a23e21ada81b 100644 --- a/kernel/kallsyms.c +++ b/kernel/kallsyms.c @@ -429,17 +429,6 @@ int sprint_backtrace(char *buffer, unsigned long address) return __sprint_symbol(buffer, address, -1, 1); } -/* Look up a kernel symbol and print it to the kernel messages. */ -void __print_symbol(const char *fmt, unsigned long address) -{ - char buffer[KSYM_SYMBOL_LEN]; - - sprint_symbol(buffer, address); - - printk(fmt, buffer); -} -EXPORT_SYMBOL(__print_symbol); - /* To avoid using get_symbol_offset for every symbol, we carry prefix along. */ struct kallsym_iter { loff_t pos; -- 2.15.1 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751385AbdLUFye (ORCPT ); Thu, 21 Dec 2017 00:54:34 -0500 Received: from mail-pg0-f65.google.com ([74.125.83.65]:33185 "EHLO mail-pg0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750757AbdLUFyc (ORCPT ); Thu, 21 Dec 2017 00:54:32 -0500 X-Google-Smtp-Source: ACJfBovblU0WZdbNZPx6tj5M/w0tZbzb8HyMggufXZ7q+2GiG594a06PvAVLE8kjy4DDTwio1wcxag== Date: Thu, 21 Dec 2017 14:54:27 +0900 From: Sergey Senozhatsky To: Joe Perches Cc: Sergey Senozhatsky , Andrew Morton , Russell King , Catalin Marinas , Mark Salter , Tony Luck , David Howells , Yoshinori Sato , Guan Xuetao , Borislav Petkov , Greg Kroah-Hartman , Thomas Gleixner , Peter Zijlstra , Vineet Gupta , Fengguang Wu , Steven Rostedt , Petr Mladek , LKML , linux-arm-kernel@lists.infradead.org, linux-c6x-dev@linux-c6x.org, linux-ia64@vger.kernel.org, linux-am33-list@redhat.com, linux-sh@vger.kernel.org, linux-edac@vger.kernel.org, x86@kernel.org, linux-snps-arc@lists.infradead.org, Sergey Senozhatsky Subject: Re: [PATCH 00/13] replace print_symbol() with printk()-s Message-ID: <20171221055427.GA385@jagdpanzerIV> References: <20171211125025.2270-1-sergey.senozhatsky@gmail.com> <1513009569.26342.43.camel@perches.com> <20171212024757.GC7798@jagdpanzerIV> <1513048252.3036.23.camel@perches.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1513048252.3036.23.camel@perches.com> User-Agent: Mutt/1.9.2 (2017-12-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On (12/11/17 19:10), Joe Perches wrote: [..] > As far as I'm concerned, as soon as there is > no longer a single user in the kernel tree, > better to delete it instead. sounds good to me. can drop it, once the series upstreamed. 8< --- From: Sergey Senozhatsky Subject: [PATCH] kallsyms: remove print_symbol() function No more print_symbol()/__print_symbol() users left, remove these symbols. Signed-off-by: Sergey Senozhatsky Suggested-by: Joe Perches --- Documentation/filesystems/sysfs.txt | 4 ++-- Documentation/translations/zh_CN/filesystems/sysfs.txt | 4 ++-- include/linux/kallsyms.h | 18 ------------------ kernel/kallsyms.c | 11 ----------- 4 files changed, 4 insertions(+), 33 deletions(-) diff --git a/Documentation/filesystems/sysfs.txt b/Documentation/filesystems/sysfs.txt index 9a3658cc399e..a1426cabcef1 100644 --- a/Documentation/filesystems/sysfs.txt +++ b/Documentation/filesystems/sysfs.txt @@ -154,8 +154,8 @@ static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, if (dev_attr->show) ret = dev_attr->show(dev, dev_attr, buf); if (ret >= (ssize_t)PAGE_SIZE) { - print_symbol("dev_attr_show: %s returned bad count\n", - (unsigned long)dev_attr->show); + printk("dev_attr_show: %pS returned bad count\n", + dev_attr->show); } return ret; } diff --git a/Documentation/translations/zh_CN/filesystems/sysfs.txt b/Documentation/translations/zh_CN/filesystems/sysfs.txt index 7d3b05edb8ce..452271dda141 100644 --- a/Documentation/translations/zh_CN/filesystems/sysfs.txt +++ b/Documentation/translations/zh_CN/filesystems/sysfs.txt @@ -167,8 +167,8 @@ static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, if (dev_attr->show) ret = dev_attr->show(dev, dev_attr, buf); if (ret >= (ssize_t)PAGE_SIZE) { - print_symbol("dev_attr_show: %s returned bad count\n", - (unsigned long)dev_attr->show); + printk("dev_attr_show: %pS returned bad count\n", + dev_attr->show); } return ret; } diff --git a/include/linux/kallsyms.h b/include/linux/kallsyms.h index 7288f9c395b6..d79d1e7486bd 100644 --- a/include/linux/kallsyms.h +++ b/include/linux/kallsyms.h @@ -94,9 +94,6 @@ extern int sprint_symbol(char *buffer, unsigned long address); extern int sprint_symbol_no_offset(char *buffer, unsigned long address); extern int sprint_backtrace(char *buffer, unsigned long address); -/* Look up a kernel symbol and print it to the kernel messages. */ -extern void __print_symbol(const char *fmt, unsigned long address); - int lookup_symbol_name(unsigned long addr, char *symname); int lookup_symbol_attrs(unsigned long addr, unsigned long *size, unsigned long *offset, char *modname, char *name); @@ -166,23 +163,8 @@ static inline int kallsyms_show_value(void) return false; } -/* Stupid that this does nothing, but I didn't create this mess. */ -#define __print_symbol(fmt, addr) #endif /*CONFIG_KALLSYMS*/ -/* This macro allows us to keep printk typechecking */ -static __printf(1, 2) -void __check_printsym_format(const char *fmt, ...) -{ -} - -static inline void print_symbol(const char *fmt, unsigned long addr) -{ - __check_printsym_format(fmt, ""); - __print_symbol(fmt, (unsigned long) - __builtin_extract_return_addr((void *)addr)); -} - static inline void print_ip_sym(unsigned long ip) { printk("[<%p>] %pS\n", (void *) ip, (void *) ip); diff --git a/kernel/kallsyms.c b/kernel/kallsyms.c index 24f456689f9c..a23e21ada81b 100644 --- a/kernel/kallsyms.c +++ b/kernel/kallsyms.c @@ -429,17 +429,6 @@ int sprint_backtrace(char *buffer, unsigned long address) return __sprint_symbol(buffer, address, -1, 1); } -/* Look up a kernel symbol and print it to the kernel messages. */ -void __print_symbol(const char *fmt, unsigned long address) -{ - char buffer[KSYM_SYMBOL_LEN]; - - sprint_symbol(buffer, address); - - printk(fmt, buffer); -} -EXPORT_SYMBOL(__print_symbol); - /* To avoid using get_symbol_offset for every symbol, we carry prefix along. */ struct kallsym_iter { loff_t pos; -- 2.15.1