IRC channel logs

2024-05-08.log

back to list of logs

<damo22>check in rump source how long the delay is
<damo22>maybe the timer resolution is too coarse
<damo22>ie machs timer is only updated at 100Hz
<Pellescours>no it's just because it's calling this method recv a lot that i was hitring it every time i stopped gdb
<Pellescours>when I put breakpoints and continue to the next breakpoint it seems that's a verification/validation step that take time
<Pellescours>it verify a checksum or something like that
<Pellescours>but it does not explains why my rump_sys_open("/dev/wm0") fails. And I have no idea
<Pellescours>i see in the logs that the driver find the card and it's data, it print his mac address
<damo22>it probably calls clock_gettime in s tight loop and subtracts 2 successive values to get a time difference, but if mach only updates at 100Hz, the two values could be the same and result in no advancement of the timer
<damo22>so could be an infinite loop
<damo22>or maybe not infinite, but calls way too many times
<Pellescours>it's not a problem of timer actually, I check in the code and there is a lot of calls to recv (somes are in loops)
<Pellescours>and recv do a wait call
<damo22>im not sure then
<damo22>Pellescours: maybe you need to call ioctl() instead first to set up the card before open?
<damo22>check usage of the wm0
<Pellescours>i though avout it but which ioctl to call?
<Pellescours>I saw one in ifconfig relating to media
<damo22>check the source of ifconfig
<damo22>or anything that actually opens the card
<Pellescours>i'll do it tomorrow, need to sleep. But ok, i'll check for that
<damo22>there could be an example in rumpkernel/examples
<damo22>or pci-userspace/exampes
<Pellescours> https://github.com/NetBSD/src/blob/trunk/sbin/ifconfig/media.c#L120
<Pellescours>I think that what I need to add