User Details
- User Since
- May 9 2018, 1:01 AM (349 w, 6 d)
May 2 2024
Mar 20 2024
Feb 24 2024
There are some console messages printed by the early loading code, but these happen before the regular kernel printf code is initialized, so you can only see them if you enable "options EARLY_PRINTF" in your kernel config and also use "options UART_NS8250_EARLY_PORT=0x3f8" to set which serial port the early printf output should go to. (eg. the 0x3f8 in this example is com1). you also need to boot with "-v" to enable "bootverbose" messages for the ucode early load activity to be printed.
Feb 23 2024
Feb 22 2024
Feb 21 2024
Updated diff for latest review comments.
Feb 13 2024
Jan 29 2024
move the code copied from cpucontrol to a new file so that we can share it between the kernel and cpucontrol.
Jan 20 2024
Jan 19 2024
Jan 10 2024
I added the handling you requested for the loader blob containing all of the amd ucode files concatenated together.
updated patch with requested changes
Jan 4 2024
Jan 2 2024
Oct 13 2023
I agree, this msgbuftrigger thing is rather loosey-goosey. I'm just trying to have all the msgbuf paths achieve a consistent level of loosey-gooseyness.
Oct 12 2023
Aug 10 2023
Aug 8 2023
Jun 4 2023
May 30 2023
May 11 2023
May 8 2023
May 3 2023
Mar 29 2023
Mar 27 2023
The concern I have with this change is about user interface. With this patch, if someone renames a directory that is the root of a subtree containing other directories and then unmounts the file system cleanly, fsck will report that the file system is now corrupted because all of the dirdepth values for directories in that subtree are wrong. In fact, every existing file system will immediately be reported as corrupted the first time that the new fsck is run. There are millions of people in the world who know what the fsck output for a clean and uncorrupted UFS file system looks like, and that clean fsck output is very easy to recognize because it's very short and always the same (modulo the line with the last-mounted-on path and the line at the end with the block/inode usage and fragmentation summary). After this patch, fsck can produce millions of lines of output for file systems that aren't really corrupted but rather are merely not optimal, and it will no longer be so simple to tell if a file system is corrupted or not by looking at the fsck output.
Dec 12 2022
Dec 6 2022
Nov 1 2022
Oct 11 2022
Sep 13 2022
Sep 8 2022
Jun 23 2022
I was waiting for the UFS fixes to land.
Jun 22 2022
Updated the diff based on review comments.
The suggestion was to only enable vn_read_from_obj() if the fs fragment size is larger than the page size, but it's actually fine to use vn_read_from_obj() as long as the fs block size is greater than or equal to the page size, so I made the check that way.
May 9 2022
Apr 28 2022
This makes sense to me.
Apr 11 2022
No, in this example of 16k pages and 4k blocks, the first page would contain the first 4 blocks, the second page would contain the next 4 blocks, etc, so mmap'ing the file works as you would expect.
Apr 8 2022
Apr 7 2022
made requested changes.
Apr 6 2022
Feb 28 2022
Feb 24 2022
Feb 23 2022
It would be good to go ahead and resolve the XXX comments that are currently being added by the patch.
I would characterize this change as: redefine "read_bias==0" from the current meaning of "prefer writes" to instead mean "no read-vs-write bias".
This patch looks correct in implementing that new meaning, though it would be nice if it didn't involve essentially duplicating the code of cam_iosched_get_write() in cam_iosched_next_bio().
Feb 22 2022
Feb 10 2022
Feb 8 2022
Jan 10 2022
I agree with kib that there is no need to serialize read requests (that need to choose whether to read from lower or upper) with write requests (that change the target of future reads from lower to upper)... allowing a pending read from the lower layer to complete after a write changes the target of future reads of that sector to be the upper layer is fine. The application must be prepared for the read to return either the old data or the new data in this case because the order of processing of these parallel async operations is not guaranteed.
Dec 3 2021
Yea, I couldn't see any reason for the linker to leave the gap in libcrypto.so's memory layout either, but it doesn't seem like an invalid thing to do either, and it's easy enough to handle it.
update for review comments.
Nov 11 2021
Oct 27 2021
Sep 27 2021
there's one more unsafe use of g_io_request() in UFS, in softdep_synchronize(), but that can be fixed separately from this one.
Sep 24 2021
I'm told that these day using "bool" and true/false is preferred over using "int" and 1/0, but otherwise this is good.
Jul 19 2021
Jun 29 2021
Jun 24 2021
Jun 22 2021
overall I agree with mjg and kirk that it would be simpler and better in the long term for the bufobj to be part of the fs-specific "inode" structure for file systems that need it, rather than having the fs-independent code need to know about multiple flavors of vnodes.
May 28 2021
what is the "issue reported by jhb" that you mention?