- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Thu, Dec 4
Thu, Nov 13
Nov 5 2025
Nov 4 2025
In D37981#1213421, @markj wrote:In D37981#1210335, @avg wrote:Totally belated, but would it make (have made) sense to split default behavior of reboot and reset commands?
I think that it would be more natural if reboot tried to do a reboot and reset just went for a reset (where implemented)?I think that would make sense. In retrospect it's a bit silly that reboot and reset are aliases of each other, and both have the /s modifier.
Nov 3 2025
Most likely, this same treatment should be applied to the similar cd_detect() function in sys/dev/sdhci/sdhci_fdt_gpio.c.
Oct 31 2025
Oct 23 2025
@imp any objection?
I have not succeeded in using this myself, but I have never tried too hard.
Oct 22 2025
Oct 21 2025
Oct 20 2025
Committed. Forgot the DR tag.
Oct 15 2025
Yes, please go ahead!
In D53119#1213368, @jrtc27 wrote:The logic for removing this in the FDT is that, on Linux, the clock framework comes up early enough (or at least some early part of it) in order to be able to query the UART clock's frequency from the clock driver, whereas we don't do anything like that with clocks prior to newbus passes, so way too late for cninit.
Sep 29 2025
Sep 16 2025
Fix aw_spi.4
This prompted a secondary question of whether the x86 FDT experiment bits can be removed outright (sys/x86/x86/fdt_machdep.c).
Sep 15 2025
Aug 20 2025
You can use Fixes: 7393b267c6ce ("libc: Provide sub fp(s|g)etmask() implementations for RISC-V") in the commit message.
Aug 19 2025
No objection from me on this one; @fuz your comments don't seem to be blockers, just possible refinements?
Aug 9 2025
In D47807#1182659, @jhb wrote:I'm trying to think of a case when the roundup would ever be correct. That is, there are two cases after the previous expression:
sgsize = MIN(buflen, PAGE_SIZE - (curaddr & PAGE_MASK));Either 1) sgsize == buflen, or 2) sgsize == PAGE_SIZE - (curaddr & PAGE_MASK)
Your patch turns case 1) into a no-op as it effectively undoes the roundup. Case 2) seems worse though. This means that we can now expand the S/G entry *off the end of the page* and randomly read/write data on the next physical page of RAM. There is no way that is correct. I wonder if this was meant to be a rounddown to keep segments a multiple of the alignment instead of a roundup? However, in that case you'd never finish a buffer whose size wasn't a multiple of the alignment.
Aha! See this part of the commit log from daf6545e6158f:
Now all contiguous regions returned from bus-dma will be aligned to the alignment constraint and all but the last region are guaranteed to be a multiple of the alignment in length.I think if that is the desired behavior, then the correct fix instead is to replace the roundup2 line with this:
if (sgsize != buflen) sgsize = rounddown2(sgsize, dmat->common.alignment);That will give the desired property. It should never have been a roundup2().
Aug 7 2025
Aug 6 2025
I've built and booted the driver.
In D47807#1098307, @markj wrote:I'm sorry for the delayed follow-up. I'm trying to understand the purpose of the roundup. It appears to have been introduced by commit daf6545e6158f; the implication seems to be that some drivers depend on the property that "the relative alignment of two consecutive bytes in the I/O stream have a difference of 1 even if they are not physically contiguous."
I don't really understand why that property is important, but assuming so, I think your patch is probably the right thing to do.
Jul 30 2025
Seems fine to me, with a couple tweaks needed.
Looks good to me, with some small nitpicks.