1)hotplugEventsocket = socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT);
socket 返回Protocol not supported,跟踪libc库中的文件socketcalls.c,socket的系统调用:
int socket(int family, int type, int protocol)
{
unsigned long args[3];
args[0] = family;
args[1] = type;
args[2] = (unsigned long) protocol;
return __socketcall(SYS_SOCKET, args);
}
将参数赋值后直接调用了__socketcall,这个是Linux kernel的系统调用函数。
在kernel配置中打开CONFIG_HOTPLUG配置后,问题解决。
2)移出/加入SD卡UDEV信息
移出:
main 113 msg = remove@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk0/mmcblk0p1
event { 'remove', '/devices/platform/mtk-sd.0/mmc_host/mmc0/mmcmsdc0 -> set mclk to 0!!! <- msdc_set_mclk() : L<609> PID<kworker/u:1><0x16>
0:msdc0 -> ops_get_cd return<0> <- msdc_ops_get_cd() : L<2273> PID<kworker/u:1><0x16>
0007/block/mmcblk0/mmcblk0p1', 'block', '', 179, 1 }
main 113 msg = remove@/devices/virtual/bdi/179:0
event { 'remove', '/devices/virtual/bdi/179:0', 'bdi', '', -1, -1 }
main 113 msg = remove@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk0
event { 'remove', '/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk0', 'block', '', 179, 0 }
main 113 msg = remove@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007
event { 'remove', '/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007', 'mmc', '', -1, -1 }
加入:
main 113 msg = ad mmcblk1: p1
d@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007
SQUASHFS error: Can't find a SQUASHFS superblock on mmcblk1c0:0007', 'mmc', '', -1, -1 }
FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
main 113 msg = aFAT: bogus number of reserved sectors
ddVFS: Can't find a valid FAT filesystem on dev mmcblk1.
@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk1
event { 'add', '/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk1', 'block', '', 179, 8 }
mount: Mounting /tmp/dev/mmcblk1 on /tmp/usbdisk/volume1 failed: Invalid argument
main 113 msg = add@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk1/mmcblk1p1
event { 'add', '/devices/platform/mtSQUASHFS e
socket 返回Protocol not supported,跟踪libc库中的文件socketcalls.c,socket的系统调用:
int socket(int family, int type, int protocol)
{
unsigned long args[3];
args[0] = family;
args[1] = type;
args[2] = (unsigned long) protocol;
return __socketcall(SYS_SOCKET, args);
}
将参数赋值后直接调用了__socketcall,这个是Linux kernel的系统调用函数。
在kernel配置中打开CONFIG_HOTPLUG配置后,问题解决。
2)移出/加入SD卡UDEV信息
移出:
main 113 msg = remove@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk0/mmcblk0p1
event { 'remove', '/devices/platform/mtk-sd.0/mmc_host/mmc0/mmcmsdc0 -> set mclk to 0!!! <- msdc_set_mclk() : L<609> PID<kworker/u:1><0x16>
0:msdc0 -> ops_get_cd return<0> <- msdc_ops_get_cd() : L<2273> PID<kworker/u:1><0x16>
0007/block/mmcblk0/mmcblk0p1', 'block', '', 179, 1 }
main 113 msg = remove@/devices/virtual/bdi/179:0
event { 'remove', '/devices/virtual/bdi/179:0', 'bdi', '', -1, -1 }
main 113 msg = remove@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk0
event { 'remove', '/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk0', 'block', '', 179, 0 }
main 113 msg = remove@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007
event { 'remove', '/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007', 'mmc', '', -1, -1 }
加入:
main 113 msg = ad mmcblk1: p1
d@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007
SQUASHFS error: Can't find a SQUASHFS superblock on mmcblk1c0:0007', 'mmc', '', -1, -1 }
FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!
main 113 msg = aFAT: bogus number of reserved sectors
ddVFS: Can't find a valid FAT filesystem on dev mmcblk1.
@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk1
event { 'add', '/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk1', 'block', '', 179, 8 }
mount: Mounting /tmp/dev/mmcblk1 on /tmp/usbdisk/volume1 failed: Invalid argument
main 113 msg = add@/devices/platform/mtk-sd.0/mmc_host/mmc0/mmc0:0007/block/mmcblk1/mmcblk1p1
event { 'add', '/devices/platform/mtSQUASHFS e