On 7/26/2019 2:11 PM, Greg Kroah-Hartman wrote:
On Fri, Jul 26, 2019 at 01:50:27PM +0530, Sai Prakash Ranjan wrote:
On 7/26/2019 12:34 PM, Greg Kroah-Hartman wrote:
On Fri, Jul 26, 2019 at 11:49:19AM +0530, Sai Prakash Ranjan wrote:
Hi,

When trying to test my coresight patches, I found that etr,etf and stm
device nodes are missing from /dev.

I have no idea what those device nodes are.

Bisection gives this as the bad commit.

1be01d4a57142ded23bdb9e0c8d9369e693b26cc is the first bad commit
commit 1be01d4a57142ded23bdb9e0c8d9369e693b26cc
Author: Geert Uytterhoeven <geert+rene...@glider.be>
Date:   Thu Mar 14 12:13:50 2019 +0100

      driver: base: Disable CONFIG_UEVENT_HELPER by default

      Since commit 7934779a69f1184f ("Driver-Core: disable /sbin/hotplug by
      default"), the help text for the /sbin/hotplug fork-bomb says
      "This should not be used today [...] creates a high system load, or
      [...] out-of-memory situations during bootup".  The rationale for this
      was that no recent mainstream system used this anymore (in 2010!).

      A few years later, the complete uevent helper support was made optional
      in commit 86d56134f1b67d0c ("kobject: Make support for uevent_helper
      optional.").  However, if was still left enabled by default, to support
      ancient userland.

      Time passed by, and nothing should use this anymore, so it can be
      disabled by default.

      Signed-off-by: Geert Uytterhoeven <geert+rene...@glider.be>
      Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>

   drivers/base/Kconfig | 1 -
   1 file changed, 1 deletion(-)


Any idea on this?

That means that who ever created those device nodes is relying on udev
to do this, and is not doing the correct thing within the kernel and
using devtmpfs.

Any pointers to where in the kernel those devices are trying to be
created?


Somewhere in drivers/hwtracing/coresight/* probably. I am not sure,
Mathieu/Suzuki would be able to point you to the exact code.

Also just to add on some more details, I am using *initramfs*

Are you using devtmpfs for your /dev/ mount?


I am not mounting devtmpfs. However

 CONFIG_DEVTMPFS=y
 CONFIG_DEVTMPFS_MOUNT=y

If you enable this option, what does:
        ls -l /dev/etr
        ls -l /dev/etf
        ls -l /dev/stm
result in?


/ # ls -l /dev/tmc_etr0
crw-rw----    1 root     0          10,  57 Jan  1 00:00 /dev/tmc_etr0
/ #
/ # ls -l /dev/tmc_etf0
crw-rw----    1 root     0          10,  58 Jan  1 00:00 /dev/tmc_etf0
/ #
/ # ls -l /dev/stm0
crw-rw----    1 root     0         236,   0 Jan  1 00:00 /dev/stm0

What are these device nodes for?  Are they symlinks?  Real devices that
show up in /sys/dev/char/ as a real value?  Or something else?


They are not symlinks.

These device node names represent coresight sinks(collect traces) like ETR, ETF, ETB and coresight sources(generates traces) like STM.

ETR and ETF are misc device registered in drivers/hwtracing/coresight
/coresight-tmc.c. However STM is not a misc device.

Do you have udev rules that create these nodes somehow?


No I do not have any udev rules.

Thanks,
Sai

--
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation

Reply via email to