- User Since
- May 16 2014, 7:35 PM (186 w, 5 d)
Mon, Dec 11
Sat, Dec 9
I admit that I like the new iterators, they are quite clean and understandable.
I agree with Kirk.
Fri, Dec 8
Does this change break ABI or KBI ? Or both ?
Thu, Dec 7
Plain store is enough, _rel does not add any functionality there. Or the load in the while() loop above should become _acq(), but I do not see a need.
[I only looked at the syscall interface, not read the implementation, plan to do this later].
For my understanding of this stuff. Is some lock which guarantees consistency for the addresses configuration is still held while the eventhandler is invoked ? What is the lock ?
It is not difficult, it is impossible. In other words, no size checks would allow to avoid the issue with the userspace access under the vnode (and/or buffer) lock by preallocating malloced buffer and copying into it.
You have the commit bit, am I right ? Please ask phab admins to change your login to match the cluster user name.
Wed, Dec 6
I did not found anything obviously wrong (i.e. an easy to see contradiction between the comment and code).
Try to compare lengths before committing to strcmp(). Does it help ?
Tue, Dec 5
As I already noted, this change is around the architecturally wrong code. uiomove(9) with UIO_USERSPACE must not be performed while a vnode is locked.
Mon, Dec 4
Such level of artificial intelligence was never applied to the Unix behavior. IMO we should not out-guess the user, and if the requested mode of operation failed, to not retry with randomly tweaked parameters.
Sun, Dec 3
I would be easier to reason about the change if code properly annotated with lock assertions.
Sat, Dec 2
Fri, Dec 1
One more issue, recording it there to keep all diffs against original submission.
commit 2b9fe1c7cf023c6700f69bd25268c8ce04267872 Author: Konstantin Belousov <email@example.com> Date: Fri Dec 1 23:37:17 2017 +0200
Apparently tinderbox is busted. Additionally at least the following chunk is needed.
commit 07e3214722f4cb9928a8ef908e7a4be4a3cb6bcd Author: Konstantin Belousov <firstname.lastname@example.org> Date: Fri Dec 1 20:34:44 2017 +0200
commit 1bdb99ca310aa8b145bdc139aa59ba5373e0c306 Author: Konstantin Belousov <email@example.com> Date: Fri Dec 1 20:20:22 2017 +0200
Trim patch after r326424.
Thu, Nov 30
Edit vm_map_find_min() comments.
Add comment explaining vm_map_find_min().
Wed, Nov 29
Note for the commit message: sched_add() actually marks the thread as runnable for all locks, for instance sleepqueues do setrunnable()->sched_wakeup()->sched_add().
Hmm, after I looked over all uses of thread_alloc(), I do not see a single path where sched_add() is executed without accompanying sched_fork_thread() before it, except perhaps for the thread0. So wouldn't it be simpler to just remove the line from sched_add() for now ?
Do not use goto.
Untangle the loops in vm_map_find().
Tue, Nov 28
Addition of the uio_seg to the functions interfaces is fine.
Hide prev_start under invariants.
Mon, Nov 27
Follow John' explanations:
- Convert error termination on no progress into assert.
- Add overflow checks into the loop.
Sun, Nov 26
The change to swp_pager_freeswapspace() signature and handling of empty runs can be committed in advance.
You mean that the allocators vm_page_alloc(), vm_page_alloc_contig(), and vm_page_alloc_freelist() overwrite the fields anyway.
Sat, Nov 25
Thu, Nov 23
I think that the current patch should be committed as is. It is a significant improvement over the previous state to have the compat32 kevents dumped, and for all variants of them decoded.