**** BEGIN LOGGING AT Fri Jan 28 02:59:57 2022 Jan 28 03:04:45 Has anyone cross-compiled the Native_SDK any time recently? Jan 28 03:45:20 Anyway...no issue. I will keep on trying here. Jan 28 03:50:29 Dang it. Jan 28 03:50:40 10 minutes! Jan 28 03:51:01 Does someone know how to handle changing the user in bash on a line? Jan 28 03:51:37 for instance, my old user on the host is /home/MonTay/ and I need it to be, of course, /home/debian/. Jan 28 03:57:00 What do you mean change the user? change the home directory for a given user? Jan 28 04:01:26 Oh. Jan 28 04:02:12 ...I have 1*(n) lines of source all w/ /home/MonTay/Dir/Dir/Dir/etc/ and I need to change them to /home/debian/Dir/Dir/Dir/etc/. Jan 28 04:02:35 The file contains umpteen lines of the incorrect username. Jan 28 04:03:14 You have a single file that contains a ton of lines like this? Jan 28 04:03:20 Yes. Jan 28 04:03:56 Silly? Yes. Jan 28 04:03:58 use vi and do a search & replace right in the editor? Jan 28 04:04:14 or is this an operation you have to do repeatedly so want to automate? Jan 28 04:04:32 I can and I have tried. There are so many lines. I would rather automate them. Jan 28 04:04:52 I found another way but it is "cheating." Jan 28 04:05:03 So many lines - I don't get it. Editors support whole-file search and replace in a single operation. Jan 28 04:05:11 "another way"? Is this a one time thing? Jan 28 04:05:11 I added a user, switch the files to the ...? Jan 28 04:05:20 Oh. Jan 28 04:05:28 You can do that in nano? Jan 28 04:05:42 I use nano right now! Jan 28 04:05:51 I will go and search. Jan 28 04:05:57 I have no idea, I don't use nano. I use vi. But you can do this on the command line. Jan 28 04:06:22 Okay. Off to read up. Thank you for saying it is possible. Jan 28 04:07:14 sed 's|^/home/MonTay/|/home/debian/|' < oldfile > newfile Jan 28 04:07:20 at the command line Jan 28 04:08:24 Hmm. Jan 28 04:08:26 Nice. Jan 28 04:08:26 the sed command takes a search/replace pattern: s/OLD/NEW/ Jan 28 04:08:32 Nice! Jan 28 04:08:35 I shall try it. Jan 28 04:08:37 though I'm using | instead of / because there's a / in the actual text. Jan 28 04:08:41 the ^ means match start of line Jan 28 04:09:31 caret! Jan 28 04:10:06 You are smarter than words. I must have passed this up in sed class. Ha. Thank you. Jan 28 04:10:21 standard regular expressions Jan 28 04:10:30 Aw. Jan 28 04:11:03 So, when there is a "/" in the command, use "|" instead? Jan 28 04:11:38 You can use either one; but if you use s/OLD/NEW/ but the pattern contains a /, there's a lot of escaping. Jan 28 04:11:52 I changed my username, copied everything I needed to copy, and then I am going to try in the new username. Oops. Jan 28 04:11:52 Oh. Jan 28 04:11:56 That makes sense. Jan 28 04:12:10 sed 's/^\/home\/MonTay\//\/home\/debian\//' Jan 28 04:12:15 I am going to try your way soon. Ha. Jan 28 04:12:16 that feels clearer Jan 28 04:12:19 :-) Jan 28 04:12:21 I understood. Jan 28 04:12:48 SJFriedl: Do you remember the atari game Wavy Navy? Jan 28 04:13:00 never been a gamer. Jan 28 04:13:04 Me neither. Jan 28 04:13:10 I just remember it. Jan 28 04:13:31 have never paid attention to them one way or the other, so wouldn't remember a name. Jan 28 04:13:40 Okay. No issue. Jan 28 04:14:03 My cp -r * ../NewUsername/ is taking forever. Jan 28 04:14:06 Oops. Jan 28 04:14:42 Not a bad idea to add -v to that cmdline so you can keep an eye on what it's doing. Jan 28 04:15:07 some Linux distributions add -v automatically (via shell aliases) Jan 28 04:15:17 Hmm. Jan 28 04:15:38 What does the -v do? Jan 28 04:15:42 Oh! Jan 28 04:15:44 verbose Jan 28 04:15:49 Right. Jan 28 04:16:16 Like when tar'ing a file w/ -xvf Jan 28 04:16:25 v for verbose is common Jan 28 04:16:45 Right. I have noticed that idea to be completely true. Jan 28 04:16:53 -v = verbose Jan 28 04:17:09 && -v == verbose Jan 28 04:17:14 but it's not universal - sometimes it means "tell me your version number" Jan 28 04:17:30 Aw. Right. Jan 28 04:17:33 That it true. Jan 28 04:21:39 Okay. I tried it and I think it worked. Jan 28 04:23:45 the error is telling me my files are different...blah. Anyway, it is past 10:00. I should get some rest. Jan 28 06:06:08 HI Jan 28 06:07:23 i have a question regarding beagle board x15 pcie Jan 28 06:08:50 i am using beagle board x15 pcie as an endpoint Jan 28 06:09:16 i configured pci-epf-test driver Jan 28 06:10:21 and followed the procedure mentioned in the below link for testing my endpoint Jan 28 06:10:22 https://mjmwired.net/kernel/Documentation/PCI/endpoint/pci-test-howto.txt Jan 28 06:10:45 everything is working fine Jan 28 06:11:10 all the tests are passed Jan 28 06:13:25 Now i restarted my Root complex board (LS1043ARDB), then the LTSSM_EN bit of register PCIECTRL_TI_CONF_DEVICE_CMD is being cleared. When i re-enabled it again, BARs are not being assigned properly. Jan 28 06:14:33 Some of the registers (which are cleared by fundamental reset) are also being cleared on root complex restart Jan 28 06:17:17 How may i reconfigure again Jan 28 06:17:42 when link fails Jan 28 06:23:01 Note : LTSSM_EN bit of register PCIECTRL_TI_CONF_DEVICE_CMD in beagle board x15 Jan 28 10:14:58 Rise and shine! Jan 28 10:18:45 Does Native_SDK have a reasonable cross-compile idea or does native compiling suit it better? Jan 28 10:24:07 The reason I am asking is b/c of the sftp to the BBB or BBBW in this instance has naming concerns that are not solved easily. Jan 28 10:27:06 Anyway...I will keep trying. I even started a thread of a post on their forums regarding my ideas/errors and more. Jan 28 10:28:25 Oh! Jan 28 10:28:36 Look what I found: https://powervr-graphics.github.io/ . Jan 28 10:28:43 Okay. Let me try this idea. Jan 28 10:42:46 it seems wget does not work w/ that download. Hmm...off to try another resource. Jan 28 13:07:53 hi anyone here? Jan 28 13:09:45 just got beagle bone black, total noob on this, having issues with it connecting on hdmi got a philips curved monitor, tux logo appears in cornere then hdmi drops out any suggestions please Jan 28 14:43:55 do you have a serial log? Jan 28 14:44:06 or maybe output of dmesg? Jan 28 15:22:50 set_: "wget does not work with that download" ? Jan 28 15:25:50 set_: if you're getting some sort of certificate error, it's a known issue caused by TLS libraries mishandling the expiration of a certain root certificate. two workarounds are given here: https://pastebin.com/uXrzuPTq Jan 28 15:34:46 it's going to be funner... https://www.bleepingcomputer.com/news/security/lets-encrypt-is-revoking-lots-of-ssl-certificates-in-two-days/ Jan 28 15:37:24 wow, there are actually people using TLS-ALPN-01 challenge based validation? :D Jan 28 15:38:43 this sounds like it'll probably be a non-issue, and will at worst be a transient interruption for a small number of sites whose administrators don't read their email Jan 28 15:50:04 and at least some tools will automatically renew the certificate anyway Jan 28 17:51:49 Hi, do you have any hint about this issue (kernel panic) ? Jan 28 17:51:51 Unhandled fault: external abort on non-linefetch (0x1028) at 0xfa3021b2 Jan 28 17:52:15 With a lot of info coming afterwards Jan 28 17:52:18 pgd = a36d7267 Jan 28 17:52:22 don't paste into chat Jan 28 17:52:28 use a paste service like pastebin.com Jan 28 17:53:08 that line itself is unfortunately not informative, it just means it got a fault on accessing something Jan 28 17:53:31 https://pastebin.com/849j3PbK Jan 28 17:53:47 ok Jan 28 17:54:21 I have a program running with PMW output, analog input read, etc... Jan 28 17:57:16 looks like the eqep kernel driver crashed Jan 28 17:57:58 which iirc is a non-mainline driver maintained out-of-tree, so my guess would be it's simply a driver bug Jan 28 17:58:52 presumably something to do with power management, i.e. it tried to access PWMSS while access to PWMSS was not enabled Jan 28 17:58:57 that makes sense Jan 28 17:59:30 it actually looks like it interrupted some runtime power management code, so it's probably a race condition of sorts Jan 28 17:59:45 I messed with analog read on this build and read a block device at iio:device0 Jan 28 17:59:54 that's probably not related Jan 28 18:00:35 ah Jan 28 18:01:25 are you using eqep ? Jan 28 18:01:43 I would assume so, given that it's evidently producing interrupts Jan 28 18:02:16 not sure what this is Jan 28 18:02:26 although it's a bit weird that it would not be enabled.. generally it should be enabled continuously Jan 28 18:02:32 hmm Jan 28 18:03:02 i'm not aware using it, the program makes use of ADC input an0 and pwm modules Jan 28 18:03:13 curious Jan 28 18:05:31 ohh, eqep seems to be constantly producing interrupts Jan 28 18:06:14 based on: grep eqep /proc/interrupts Jan 28 18:07:18 ok Jan 28 18:07:24 hold on, but I have pwmss force-enabled right now... let's see if pwmss otherwise gets power-managed Jan 28 18:07:25 i don't see it Jan 28 18:07:52 you're not seeing the counters increase? what if you enable a pwm output? Jan 28 18:08:12 ah Jan 28 18:08:29 i change the pwm duty cycle all the time on this program Jan 28 18:08:59 only I thing I changed is i disable the pwm (0 > enable) when not in use Jan 28 18:09:00 you're seeing eqep's interrupt counters increase when you have a pwm output enabled? Jan 28 18:09:14 how can i check this ? Jan 28 18:09:38 by enabling a pwm output and using the command I just gave, grep eqep /proc/interrupts Jan 28 18:10:00 and see if one or more of the counters in the second column are slowly increasing Jan 28 18:11:20 what exactly did you mean by "i don't see it" earlier? Jan 28 18:11:24 maybe I misinterpreted you Jan 28 18:12:50 if eqep's interrupt counters only increase if you have pwm outputs enabled then I understand what's going on Jan 28 18:12:58 I know I've been able to disable the BeagleBone bluetooth radio in the past but cannot for the life of me find it. Something about uEnv.txt maybe? Google has failed me. Jan 28 18:13:03 BBBW Jan 28 18:13:35 SJFriedl: you can disable individual functions using rfkill Jan 28 18:13:50 will that disable the actual radio emissions? Jan 28 18:14:01 yes, that's why rfkill is called rfkill Jan 28 18:14:07 excellent, thank you. This is new to me. Jan 28 18:14:50 ok, well it does not seem to change Jan 28 18:14:53 138: 0 INTC 79 Level eqep_interrupt Jan 28 18:14:53 140: 6 INTC 88 Level eqep_interrupt Jan 28 18:14:53 142: 0 INTC 89 Level eqep_interrupt Jan 28 18:15:26 jfsimon1981: regardless of whether any pwm outputs are enabled? Jan 28 18:15:58 (with non-zero duty cycle, just in case) Jan 28 18:17:31 trying Jan 28 18:18:12 jfsimon1981: I just tested it here, if I enable a pwm output I see the interrupt counter of the eqep unit in the same pwmss slowly increase Jan 28 18:18:23 that's absolutely a bug in the eqep driver Jan 28 18:18:44 ok i don't quite understand this at the moment Jan 28 18:19:52 so, the eqep driver is evidently not keeping the eqep device enabled, yet it does have an interrupt handler enabled which moreover gets periodic interrupts whenever the eqep module happens to be enabled anyway Jan 28 18:20:34 the three submodules (ecap, eqep, ehrpwm) of a pwmss module are however not individually power-managed, only the subsystem as a whole is Jan 28 18:21:14 so what's happening is that if the driver for any of the three submodules requests the module to be enabled, the whole pwmss is enabled and subsequently all three submodules Jan 28 18:22:48 e.g. enabling a pwm output causes the corresponding driver (ecap or ehrpwm, depending on what pwm output you're using) to enable the pwmss to be able to operate the pwm output Jan 28 18:23:22 and as a side-effect, the eqep module in the pwmss is also enabled, causing its periodic interrupts to resume Jan 28 18:24:00 i see a number increasing indeed Jan 28 18:24:23 not sure this is what you meant Jan 28 18:24:27 140: 101 INTC 88 Level eqep_interrupt Jan 28 18:24:36 the 101 gets increased Jan 28 18:24:39 that's showing that the eqep driver is receiving interrupts yes Jan 28 18:25:08 this is bogus since it's not keeping the eqep module enabled Jan 28 18:25:20 the eqep module is merely being enabled by accident as side-effect of the pwm output Jan 28 18:25:41 consequently, if the pwm output is disabled again, the eqep module also gets disabled again Jan 28 18:25:44 it increases only when pwm is enabled. Jan 28 18:26:33 if the eqep interrupt by pure accident happens to trigger right at the moment eqep gets disabled by the kernel, the interrupt handler will try to access eqep while it's disabled, resulting in a bus error and kernel panic Jan 28 18:26:43 this is straight up a bug in the eqep kernel driver Jan 28 18:27:29 it looks like the eqep driver is compiled into the kernel rather than being built as module, so unfortunately you can't simply blacklist the driver Jan 28 18:27:50 how the heck have I missed rfkill all my life? Thanks zmatt Jan 28 18:28:05 SJFriedl: it *should* be persistent across reboot Jan 28 18:28:16 To my delight, it was. Thank you. Jan 28 18:28:35 jfsimon1981: however, the eqep modules can be easily disabled using an overlay Jan 28 18:28:47 thanks Matt, either i'll be able to deal with this or i'll design the hardware externally to make use of PWM, which i definitely require for this purpoe. Jan 28 18:28:55 Ah ah Jan 28 18:29:59 or you can force-enable pwmss manually Jan 28 18:30:12 or just never disable a pwm output when enabled Jan 28 18:32:14 jfsimon1981: https://pastebin.com/H7FiWVV1 this force-enables all three pwmss instances (you'll see all three eqep interrupt counters increase regardless of whether or not a pwm output is enabled) Jan 28 18:32:43 thank you Jan 28 18:33:10 or you can disable the buggy eqep kernel driver by using the uio/eqep[0-2].dtbo overlays from my overlay-utils project Jan 28 18:33:37 (you could also combine them into one overlay to reduce the number of overlays enabled) Jan 28 18:35:33 jfsimon1981: pretty unlucky to get that kernel panic though! it looks like the interrupt only happens once per second, and to get the kernel panic requires that interrupt to happen within a time window that's probably a small fraction of a microsecond Jan 28 18:36:16 this program works at about 150 Hz, not sure that's related, but it has a short loop Jan 28 18:36:38 Ok running this pastbin instructions of yours, at the moment the kernel did'nt panic ... Jan 28 18:36:49 what would matter is how often you're disabling a pwm output Jan 28 18:38:24 oddly the last code never disabled it but set the duty very low. Jan 28 18:38:49 Seems to work Jan 28 18:38:56 Thanks for this Jan 28 18:39:16 it's possible the pwm driver disables the output if the duty cycle is zero (when rounded to the resolution of the output) Jan 28 18:39:27 not sure, I'd need to check the driver Jan 28 18:39:52 too complicated this beagle, has a lot features. Jan 28 18:40:29 Works stable at the moment. Jan 28 18:41:56 oh as for what eqep does: it can do quadrature decoding and pulse frequency measurement, typically used for things like measuring motor speed Jan 28 18:42:13 ok Jan 28 18:42:58 back the full working code, see if it get running smooth now Jan 28 18:45:58 i'd call that luck it triggered this bug, better sort it now than when the device is running in the field which it would be in a few weeks Jan 28 18:46:10 fair! Jan 28 18:47:11 if you're not using eqep, disabling it is probably better than the force-enable workaround... better if the buggy kernel driver doesn't get used at all Jan 28 18:49:21 "oddly the last code never disabled it but set the duty very low" => as far as I can tell this should not implicitly disable the pwm module hence should not be able to trigger the kernel panic Jan 28 18:50:38 just loading one of those ? Jan 28 18:50:40 bone_eqep0-00A0.dtbo [... eqep1 ... eqep2 ... eqep2b] Jan 28 18:50:52 ?? Jan 28 18:51:14 did you mean i should load in uEnv.txt Jan 28 18:51:23 to enable Jan 28 18:51:29 those overlays would actually *enable* the eqep modules, which is pointless since you already have them enabled Jan 28 18:52:01 ok Jan 28 18:52:41 I was specifically referring to overlays in my overlay-utils project that reconfigure the eqep modules for use via uio (which, if you don't use these, is effectively equivalent to disabling the eqep modules) Jan 28 18:54:29 ok Jan 28 18:54:33 https://github.com/mvduin/overlay-utils ... if you clone this and run make, it'll build these (eqep0.dtbo, eqep1.dtbo, eqep2.dtbo) in the uio/ subdirectory Jan 28 18:55:18 ok Jan 28 18:57:21 jfsimon1981: or you could save this as "disable-eqeps.dtsi": https://pastebin.com/1tKb9heD and then run "make disable-eqeps.dtbo" Jan 28 18:57:52 to create an overlay that truly disables the eqep modules (and does nothing else) Jan 28 18:59:56 Cloned and built dtbo and dtsi Jan 28 19:00:19 i'll be back in a moment Jan 28 19:37:26 Running on disable_eqeps.dtbo and commented out the workaround (48300000.epwmss ...). Jan 28 19:53:49 cat /proc/interrupts | grep eqep Jan 28 19:54:05 No results returned. Looks worked well. Jan 28 22:01:06 Supply down 360 -> 240 mA throttling the frequency Jan 28 22:01:10 sudo cpufreq-set -d 300 -u 1000 Jan 28 22:01:29 However cannot get it back up (will only work at 300 MHz from this point on) Jan 28 22:24:15 Apparently the watchdog got turned on automatically by a cat on the device Jan 28 22:24:23 Rebooted on me Jan 28 22:29:42 Once you cat on :dev/watchdog0 it stars running and needs update. awesome Jan 28 22:31:02 jfsimon1981: fortunately only root can open the watchdog device Jan 28 22:31:29 normally I'd expect systemd to have opened it though Jan 28 22:32:35 hmm, maybe that's not enabled by default Jan 28 22:34:27 ah that requires e.g. RuntimeWatchdogSec or RebootWatchdogSec to be configured in /etc/systemd/system.conf Jan 28 22:34:37 I was about to ask if it's enabled by default (and reset by systemd)... (Also I was initially thinking of cats and dogs) Jan 28 22:35:30 (* not a Dog, a Cat triggering something...) Jan 28 22:36:30 jfsimon1981: what cpufreq governor are you using? Jan 28 22:38:35 no idea Jan 28 22:39:51 then why are you setting the min/max frequency for that unknown governor to use? :D Jan 28 22:40:05 300-1000 is the default anyway Jan 28 22:40:53 if I select the ondemand or conservative governor I can see it's dynamically switching between frequencies Jan 28 22:41:00 i set 300-1000 but it seems stuck at 300 Jan 28 22:41:16 again, which governor? check with cpufreq-info Jan 28 22:41:21 ok Jan 28 22:42:12 i see Jan 28 22:42:31 powersave = always min frequency, performance = always max frequency Jan 28 22:42:56 yep current policy 300-300 MHz Jan 28 22:43:17 not sure how I set this but that's fixed 300 MHz now. Jan 28 22:43:34 ondemand seems to be min freq when idle, max freq when not idle... so cpufreq-info will always see it at 1 GHz (since running cpufreq-info means the cpu isn't idle) but you'll see the 300 MHz statistic increasing in between calls to cpufreq-info Jan 28 22:43:50 indeed i'll set powersave something like this. That's a low consumption application i'm working on Jan 28 22:44:42 if you select the powersave governor then it'll be stuck at 300 MHz regardless of the max frequency configured Jan 28 22:46:22 ok Jan 28 22:46:44 "conservative" may be the governor you're looking for Jan 28 22:49:03 and you're correct, "cpufreq-set -d 300 -u 1000" forces the system to lowest frequency, this is because you didn't include any units and the default unit is kHz Jan 28 22:49:29 set in range 300-720 Mhz Jan 28 22:49:38 "cpufreq-set -d 300MHz -u 1GHz" would work ... though like I said Jan 28 22:49:47 the full range is already the default Jan 28 22:51:13 so the only reason to set the change is to set a lower max than 1GHz or higher min than 300MHz Jan 28 22:51:25 *to set the range Jan 28 22:51:40 i set -u 720MHz Jan 28 22:51:57 conservative Jan 28 22:52:01 for the moment Jan 28 22:53:21 good shape Jan 28 22:53:48 watchdog enabled and solved the random crash, and added a kernel panic auto reboot. Jan 28 22:54:00 also keep in mind that setting a lower max frequency may not always work out to lower overall power consumption for a given workload, since lower frequency means that workload takes more time to execute, hence there's less cpu idle time. it'll depend on how much the power consumption varies between 720 MHz and 1 GHz, and how effective powersaving during cpuidle is Jan 28 22:54:02 This device should do good Jan 28 22:54:26 right, i did'nt measure it all Jan 28 22:54:33 like I said, for watchdog: set the RuntimeWatchdogSec parameter in /etc/systemd/system.conf Jan 28 22:54:51 to make systemd enable the hardware watchdog and periodically ping it Jan 28 22:55:02 the application runs 1/3 which seems fine though i'll need test all of this Jan 28 22:56:46 if you just cat the /dev/watchdog it starts Jan 28 22:56:57 the default period is 60 sec Jan 28 22:57:29 I wouldn't suggest messing with the watchdog device directly Jan 28 22:57:58 leave it to systemd, or something like watchdogd on non-systemd systems Jan 28 22:59:15 if you want your application to be restarted when it crashes or freezes, you can arrange that in a systemd service for Jan 28 22:59:18 *service file Jan 28 23:00:46 (you can even configure it so that if your application keeps crashing at startup, systemd will give up restarting your application after a few attempts and reboot the system instead) Jan 28 23:01:47 ok Jan 28 23:01:58 quite powerful Jan 28 23:02:07 yup, lots of options Jan 28 23:03:28 to detect services that are frozen (but not properly crashed) systemd supports "service watchdogs" .. which means your servics needs to periodically notify systemd that it's alive or systemd will restart the service after a timeout Jan 28 23:04:40 ah ah Jan 28 23:06:55 well the program seems to be working, so I can get back to work on the electronics quite soon Jan 28 23:07:01 tomorrow Jan 29 01:06:57 @zmatt: Thank you. i will review that idea in a bit. Jan 29 01:09:00 bbl! Jan 29 01:14:12 phew. Back. What a ride! Jan 29 01:22:03 @zmatt: I am pretty sure my error(s), many-many-many error(s), are not specifically direceted at me via output b/c of the TLS libraries. Jan 29 01:22:14 But...if they are due to TLS libs, blah. Jan 29 01:22:27 I would not know how to handle putting a driver. ha. Jan 29 01:22:48 Golf humor. Jan 29 01:22:50 Sorry. Jan 29 01:23:19 Anyway, back to the old BBB and trying to replicate something I cannot do so far. Jan 29 01:25:39 Native_SDK is a vast lib. w/ many different confurations that need to take place at different intervals. So, it is a bit too in depth for me to handle, esp. when an error shows me this: https://pastebin.com/YaZnqxuU ! Jan 29 01:26:15 If you are bored or happy to pick and choose, jump on in! Jan 29 01:34:12 Would I need to reorganize the source or just use ld ? **** ENDING LOGGING AT Sat Jan 29 02:59:57 2022