Li Zhang [zhlci...@linux.vnet.ibm.com] wrote: | >For consistency with rest of the file, use pr_warning() or pr_err(). | | ui_warning can report the message to users directly when this | program is running. | But if we considered the consistency, pr_warning or pr_err should be better. | And users can get this message by trying another time.
That seems to be the way perf currently operates - silent by default for non-fatal errors. -v or -vvv increases verbosity and reports non-fatal warnings/errors also. | | > | >Also, we could drop the access() call and report the error when open() | >fails below? | | I think we can drop this access. But /proc/kcore also require the | process with CAP_SYS_RAWIO | capability. Even if chown this file, access report right result, but | open still fails. Maybe the error message could hint that CAP_SYS_RAWIO would be needed. | | > | >| fd = open(kcore_filename, O_RDONLY); | >| if (fd < 0) | >| return -EINVAL; | > | >Further, if user specifies the file with --kallsyms and we are not | >able to read it, we should treat it as a fatal error and exit - this | >would be easer when parsing command line args. | I have another patch which checks this files. I will merge it to this patch. | | > | >If user did not specify the option and we are proactively trying to | >use /proc/kcore, we should not treat errors as fatal? i.e report | >a warning message and continue without symbols? | | In the current program, even if open fails, the program still | continue to run. | Is it helpful for users to get the address without symbols? Well, if profiling applications, user may not care about kernel symbols, so being unable to open /proc/kcore would be ok? If OTOH, user specifies --kallsyms, then they care about the kenrel symbols so we should treat the open() error () as fatal. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/