Page MenuHomeFreeBSD

mav (Alexander Motin)
User

Projects

User Details

User Since
Jun 3 2014, 6:27 PM (380 w, 2 d)

Recent Activity

Today

mav committed R10:b4194a432b59: callout(9): Allow spin locks use with callout_init_mtx(). (authored by mav).
callout(9): Allow spin locks use with callout_init_mtx().
Fri, Sep 17, 1:40 AM
mav committed R10:3c1c3728f32c: geli(8): Do not report error on resize to the same size. (authored by mav).
geli(8): Do not report error on resize to the same size.
Fri, Sep 17, 1:40 AM
mav committed R10:c8f2af5f5d1f: geli(8): Do not report error on resize to the same size. (authored by mav).
geli(8): Do not report error on resize to the same size.
Fri, Sep 17, 1:39 AM

Yesterday

mav committed R10:1a9342cfb036: bnxt(4): Fix bugs in WOL support. (authored by mav).
bnxt(4): Fix bugs in WOL support.
Thu, Sep 16, 1:44 AM
mav committed R10:8895170347fc: bnxt(4): Fix bugs in WOL support. (authored by mav).
bnxt(4): Fix bugs in WOL support.
Thu, Sep 16, 1:44 AM

Wed, Sep 15

mav committed R10:aac5428f48ef: ipmi: fix negative logic in watchdog control flag (authored by wma).
ipmi: fix negative logic in watchdog control flag
Wed, Sep 15, 3:42 PM
mav committed R10:8fe536177ade: ipmi: New tunable to deactivate IPMI watchdog (authored by wma).
ipmi: New tunable to deactivate IPMI watchdog
Wed, Sep 15, 3:41 PM
mav committed R10:ab96b52907d0: Align taskqueue_enqueue_timeout() to hardclock. (authored by mav).
Align taskqueue_enqueue_timeout() to hardclock.
Wed, Sep 15, 1:33 AM
mav committed R10:c519a52692c7: Align taskqueue_enqueue_timeout() to hardclock. (authored by mav).
Align taskqueue_enqueue_timeout() to hardclock.
Wed, Sep 15, 1:33 AM
mav committed R10:6c2d4404161a: ipmi(4): Limit maximum watchdog pre-timeout interval. (authored by mav).
ipmi(4): Limit maximum watchdog pre-timeout interval.
Wed, Sep 15, 1:24 AM

Tue, Sep 14

mav committed R10:02d8194012a9: mps/mpr(4): Move xpt_register_async() out of lock. (authored by mav).
mps/mpr(4): Move xpt_register_async() out of lock.
Tue, Sep 14, 9:41 PM
mav committed R10:272c4a4dc5fb: Allow setting NFS server scope and owner. (authored by mav).
Allow setting NFS server scope and owner.
Tue, Sep 14, 6:18 PM
mav closed D31952: Allow setting NFS server scope and owner..
Tue, Sep 14, 6:18 PM

Mon, Sep 13

mav requested review of D31952: Allow setting NFS server scope and owner..
Mon, Sep 13, 8:06 PM
mav accepted D31922: ctl(4): Do hole-punching for UNMAP to file-backed LUNs.
Mon, Sep 13, 4:27 PM
mav added inline comments to D31922: ctl(4): Do hole-punching for UNMAP to file-backed LUNs.
Mon, Sep 13, 1:30 PM
mav committed R10:e76786909ce0: Fix data race in scsi cd driver. (authored by mav).
Fix data race in scsi cd driver.
Mon, Sep 13, 1:03 PM
mav closed D31726: Fix data race in scsi cd driver.
Mon, Sep 13, 1:02 PM

Sun, Sep 12

mav committed R10:53ec9de7b6bf: Missed line from 7af4475a6e31. (authored by mav).
Missed line from 7af4475a6e31.
Sun, Sep 12, 11:05 PM
mav committed R10:1d8cda26cad2: vmd(4): Major driver refactoring (authored by mav).
vmd(4): Major driver refactoring
Sun, Sep 12, 11:05 PM
mav committed R10:4f6eeb1cb1e3: vmd_bus: Fix typo in comment (authored by nc).
vmd_bus: Fix typo in comment
Sun, Sep 12, 11:04 PM
mav committed R10:75547acf1cd5: vmd: Rename vmd_bus class to pci (authored by nc).
vmd: Rename vmd_bus class to pci
Sun, Sep 12, 11:04 PM
mav accepted D31892: iscsi: Abort data-out tasks queued on a terminating session..
Sun, Sep 12, 12:59 AM
mav accepted D31891: iscsi: Add a helper routine to abort a data-out task..
Sun, Sep 12, 12:51 AM

Sat, Sep 11

mav accepted D31726: Fix data race in scsi cd driver.

Looks good to me.

Sat, Sep 11, 4:21 PM

Tue, Sep 7

mav committed R10:900b7ac652b3: nvme(4): Add MSI and single MSI-X support. (authored by mav).
nvme(4): Add MSI and single MSI-X support.
Tue, Sep 7, 1:30 AM
mav committed R10:4ccde1f0f101: nvme(4): Do not panic on admin queue construct error. (authored by mav).
nvme(4): Do not panic on admin queue construct error.
Tue, Sep 7, 1:29 AM
mav committed R10:0e6969a0f4e2: nvme(4): Add MSI and single MSI-X support. (authored by mav).
nvme(4): Add MSI and single MSI-X support.
Tue, Sep 7, 1:26 AM
mav committed R10:d9cacf0b66c3: nvme(4): Do not panic on admin queue construct error. (authored by mav).
nvme(4): Do not panic on admin queue construct error.
Tue, Sep 7, 1:25 AM

Sun, Sep 5

mav resigned from D31839: f00f: We don't need giant to manipulate vm structures.
Sun, Sep 5, 9:23 PM
mav added a comment to D31840: hyperv: scanning locking is using the bus mtx.

Looks good, but while at hyper-v I'd also do it for hv_pci_delete_device().

Sun, Sep 5, 9:20 PM
mav added a comment to D31831: Create wrapper for Giant taken for newbus.

You could also add the explicit topology locking into sysctl_hdac_pindump() and hdaa_sysctl_reconfig(), and remove CTLFLAG_NEEDGIANT from all 3 places in hda(4) driver. Or I can do it separately after, if you prefer.

Sun, Sep 5, 9:10 PM

Sat, Sep 4

mav committed R10:1f7a6325fe1b: sound(4): Remove pointless Giant from bus_dma_tag_create(). (authored by mav).
sound(4): Remove pointless Giant from bus_dma_tag_create().
Sat, Sep 4, 10:31 PM
mav added a comment to D31831: Create wrapper for Giant taken for newbus.

Hans, I think you are too picky here. We already have xpt_topo_lock in CAM, ng_topo_lock in NetGraph, and 4 more line that in random drivers, so I think this abbreviation is quite typical.

Sat, Sep 4, 10:19 PM
mav committed R10:541699f6f69c: Remove impossible checks. (authored by mav).
Remove impossible checks.
Sat, Sep 4, 8:13 PM
mav committed R10:71bf3900b782: ioat(4): Remove Giant from ioat_test enable/disable. (authored by mav).
ioat(4): Remove Giant from ioat_test enable/disable.
Sat, Sep 4, 7:55 PM
mav added inline comments to D31836: ip6mrouter: Make the expiration callout MPSAFE.
Sat, Sep 4, 6:27 PM
mav accepted D31833: newbus: add bus_topo_assert.
Sat, Sep 4, 6:22 PM
mav accepted D31830: fd: Move from using device_busy to a refcount.
Sat, Sep 4, 3:35 PM
mav accepted D31831: Create wrapper for Giant taken for newbus.
Sat, Sep 4, 3:31 PM
mav accepted D31835: altq: mark callouts as mpsafe.
Sat, Sep 4, 3:12 PM
mav accepted D31830: fd: Move from using device_busy to a refcount.

I think we should drain after the wait, since some operations may still complete while we are waiting, or it may take time for consumers to release us, so why not operate the motor in process?

Sat, Sep 4, 3:11 PM
mav accepted D31833: newbus: add bus_topo_assert.
Sat, Sep 4, 3:04 PM
mav accepted D31832: bus: mark sysctls MPSAFE.
Sat, Sep 4, 2:59 PM
mav added a comment to D31831: Create wrapper for Giant taken for newbus.

I am mostly unfamiliar with miibus interface, but I see ~80 calls to mii_attach() in a tree, many of which are going from driver attach methods and are already under the lock. Are you expecting to recurse on the lock?

Sat, Sep 4, 2:56 PM
mav accepted D31835: altq: mark callouts as mpsafe.

Thank you. There is one more in altq_subr.c in init_machclk_setup().

Sat, Sep 4, 2:34 PM
mav added a comment to D31830: fd: Move from using device_busy to a refcount.

I think detach method should be aggressive, not looking for busy, since in many cases its call means the device is no longer there or soon won't be. So you should just call fd_detach_geom as it was and then wait for providergone GEOM callback to be called. That callback is a relatively new thing, it was not there originally, that is why open counting was used.

Sat, Sep 4, 2:15 PM
mav committed R10:70d16ac0e889: cam(4): Fix quick unplug/replug for SCSI. (authored by mav).
cam(4): Fix quick unplug/replug for SCSI.
Sat, Sep 4, 3:29 AM
mav committed R10:bf2cfa495f0d: cam(4): Fix quick unplug/replug for SCSI. (authored by mav).
cam(4): Fix quick unplug/replug for SCSI.
Sat, Sep 4, 3:26 AM
mav committed R10:a264594d4ff1: Unify console output. (authored by mav).
Unify console output.
Sat, Sep 4, 3:19 AM
mav committed R10:bd6085c6ae28: Re-implement virtual console (constty). (authored by mav).
Re-implement virtual console (constty).
Sat, Sep 4, 2:22 AM

Fri, Sep 3

mav committed R10:cd85b97e0e70: rt(4): Replace Giant callout+task with timeout_task. (authored by mav).
rt(4): Replace Giant callout+task with timeout_task.
Fri, Sep 3, 10:10 PM
mav committed R10:da69c6752674: vt(4): Mark callouts MP-safe. (authored by mav).
vt(4): Mark callouts MP-safe.
Fri, Sep 3, 8:04 PM
mav committed R10:fa3b03d37854: pcib(4): Switch from callout to timeout_task. (authored by mav).
pcib(4): Switch from callout to timeout_task.
Fri, Sep 3, 7:04 PM
mav committed R10:9895a2073f98: bnxt(4): Mark sysctls MP-safe. (authored by mav).
bnxt(4): Mark sysctls MP-safe.
Fri, Sep 3, 5:52 PM
mav added a comment to D31052: Separate callbacks into Giant locked and non-Giant locked..
In D31052#717779, @mav wrote:

Are you familiar with sys/dev/usb/wlan code, or we need somebody from wlan area, same as for rtwn and wtap?

Yes, but mostly the USB part. All drivers have a softc and each softc has a mutex which you can use for the callouts, but I don't know about LOR which might happen inside the WLAN core code.

Fri, Sep 3, 5:42 PM
mav added a comment to D31052: Separate callbacks into Giant locked and non-Giant locked..

I always thought it was overhead to use "!TAILQ_EMPTY()" and then "TAILQ_FIRST()" to get the first entry.

Fri, Sep 3, 5:39 PM
mav added a comment to D31052: Separate callbacks into Giant locked and non-Giant locked..

@mav : The best is to get rid of Giant.

Fri, Sep 3, 5:27 PM
mav added a comment to D31053: Exclude Giant from adaptive locking..

I think this should better be postponed a bit until we fix all other Giant consumers except newbus, assuming it is what causes the longest delays.

Fri, Sep 3, 5:21 PM
mav committed R10:4081c895e5ce: bxe(4): Mark sysctls and callout MP-safe. (authored by mav).
bxe(4): Mark sysctls and callout MP-safe.
Fri, Sep 3, 4:27 PM
mav committed R10:6b2ff27cb952: mge(4): Mark sysctls and callout MP-safe. (authored by mav).
mge(4): Mark sysctls and callout MP-safe.
Fri, Sep 3, 4:16 PM
mav added a comment to D31052: Separate callbacks into Giant locked and non-Giant locked..

I agree with Konstantin. Just recently without seeing this review I've fixes several most annoying to me cases of Giant callouts. After that quick search shows me only 38 remaining instances of callout_reset(..., 0), out of which only 6 seem like really use Giant, while most others I bet just need quick code look to be marked mpsafe.

Fri, Sep 3, 12:30 PM
mav committed R10:5d9e5a7edfb5: Missed line from 7af4475a6e31. (authored by mav).
Missed line from 7af4475a6e31.
Fri, Sep 3, 2:26 AM
mav committed R10:4730a8972b1f: callout(9): Allow spin locks use with callout_init_mtx(). (authored by mav).
callout(9): Allow spin locks use with callout_init_mtx().
Fri, Sep 3, 1:27 AM
mav closed D31778: callout(9): Allow spin locks use with callout_init_mtx().
Fri, Sep 3, 1:27 AM
mav committed R10:7af4475a6e31: vmd(4): Major driver refactoring (authored by mav).
vmd(4): Major driver refactoring
Fri, Sep 3, 1:16 AM
mav closed D31762: vmd(4): Major driver refactoring.
Fri, Sep 3, 1:16 AM
mav committed R10:a996b55ab34c: mpr(4): Fix unmatched devq release. (authored by mav).
mpr(4): Fix unmatched devq release.
Fri, Sep 3, 12:45 AM
mav committed R10:0149aaeb8f60: mpr(4): Handle mprsas_alloc_tm() errors on device removal. (authored by mav).
mpr(4): Handle mprsas_alloc_tm() errors on device removal.
Fri, Sep 3, 12:45 AM
mav committed R10:a2784b47e481: mpr/mps: Minor state machine fix (authored by imp).
mpr/mps: Minor state machine fix
Fri, Sep 3, 12:45 AM
mav committed R10:8a6e5ade1699: Fix mpr(4) and mps(4) state transitions and a use-after-free panic. (authored by ken).
Fix mpr(4) and mps(4) state transitions and a use-after-free panic.
Fri, Sep 3, 12:44 AM

Thu, Sep 2

mav committed R10:8c14d7da5b9b: bnxt(4): Fix bugs in WOL support. (authored by mav).
bnxt(4): Fix bugs in WOL support.
Thu, Sep 2, 10:23 PM
mav updated the diff for D31778: callout(9): Allow spin locks use with callout_init_mtx().

Minor tuning to unlock_spin().

Thu, Sep 2, 2:01 PM
mav requested review of D31778: callout(9): Allow spin locks use with callout_init_mtx().
Thu, Sep 2, 12:02 AM

Wed, Sep 1

mav committed R10:8ee90cc8d3f2: pci_pci: Support growing windows in bus_adjust_resource for NEW_PCIB (authored by jrtc27).
pci_pci: Support growing windows in bus_adjust_resource for NEW_PCIB
Wed, Sep 1, 8:58 PM
mav committed R10:c4bd6b589c8d: pcib(4): Write window registers after resource adjustment (authored by mav).
pcib(4): Write window registers after resource adjustment
Wed, Sep 1, 8:58 PM
mav updated the diff for D31762: vmd(4): Major driver refactoring.

Provide VMD dma tag to all children devices, since host should see it as originator for all requests. It fixes operation with IOMMU enabled at least for directly connected devices. Devices behind a bridge still don't work right for me for some reason, despite receiving the same tag and IOMMU not reporting violations.

Wed, Sep 1, 7:56 PM
mav updated the diff for D31762: vmd(4): Major driver refactoring.

Limit the end of bus numbers range considering available BAR0 size.

Wed, Sep 1, 4:38 PM
mav committed R10:706b1a5724d6: Align taskqueue_enqueue_timeout() to hardclock. (authored by mav).
Align taskqueue_enqueue_timeout() to hardclock.
Wed, Sep 1, 3:51 AM

Tue, Aug 31

mav requested review of D31762: vmd(4): Major driver refactoring.
Tue, Aug 31, 10:36 PM
mav committed R10:e3bdf3da769a: nvme(4): Add MSI and single MSI-X support. (authored by mav).
nvme(4): Add MSI and single MSI-X support.
Tue, Aug 31, 5:46 PM
mav committed R10:31111372e6ba: nvme(4): Do not panic on admin queue construct error. (authored by mav).
nvme(4): Do not panic on admin queue construct error.
Tue, Aug 31, 12:39 AM

Mon, Aug 30

mav added a comment to D31726: Fix data race in scsi cd driver.
In D31726#715924, @mav wrote:

While it looks OK to me, I think it would be good for different drivers to be as close as possible. And I see da got their locking slightly different in af1823cde891.

Do you mean using cam_periph_acquire and cam_periph_release_locked? I suppose we should ref the periph in cdsysctlinit. We use the same pattern in cdopen https://reviews.freebsd.org/source/src/browse/main/sys/cam/scsi/scsi_cd.c$756 .

Mon, Aug 30, 8:41 PM
mav added a comment to D31726: Fix data race in scsi cd driver.

While it looks OK to me, I think it would be good for different drivers to be as close as possible. And I see da got their locking slightly different in af1823cde891.

Mon, Aug 30, 2:16 PM

Sat, Aug 28

mav committed R10:57cf5a9f0bec: sched_ule(4): Pre-seed sched_random(). (authored by mav).
sched_ule(4): Pre-seed sched_random().
Sat, Aug 28, 2:22 AM
mav committed R10:18bc112f63b6: sched_ule(4): Reduce duplicate search for load. (authored by mav).
sched_ule(4): Reduce duplicate search for load.
Sat, Aug 28, 2:22 AM
mav committed R10:f0278de38052: Refactor/optimize cpu_search_*(). (authored by mav).
Refactor/optimize cpu_search_*().
Sat, Aug 28, 2:22 AM
mav committed R10:97e945e0fffc: sched_ule(4): Use trylock when stealing load. (authored by mav).
sched_ule(4): Use trylock when stealing load.
Sat, Aug 28, 2:22 AM

Fri, Aug 27

mav added a comment to D31293: geom: Handle truncated I/O in g_*_data().

I hit this area of residual data handling in GEOM several times over the years. It would be good to formalize and make use of it somehow. But I never saw any reasonable use for it with any block device. It could possibly be used to specify how much data were read/written before some error occurred, but the problem is that in case of parallel execution, done by many classes bio_completed may not mean the first number of bytes of the request has completed, but SOME number of bytes. So it is pretty much useless from that perspective.

Fri, Aug 27, 4:47 PM
mav committed R10:15cb3b5404bd: pcib(4): Write window registers after resource adjustment (authored by mav).
pcib(4): Write window registers after resource adjustment
Fri, Aug 27, 12:40 AM
mav closed D31693: pcib(4): write window after resource adjustment.
Fri, Aug 27, 12:39 AM · PCI

Thu, Aug 26

mav updated the diff for D31693: pcib(4): write window after resource adjustment.

Thinking about it again, pcib_expand_window() should receive not the requested start/end values, but MIN()/MAX() respectively from them and the current window base/limit. Otherwise in case of multiple resources pcib_expand_window() panic on attempt to shrink the window on another side of where it growth. Unfortunately I don't have hardware configuration with more than one second level bridge connected to the one closest to the root to illustrate that.

Thu, Aug 26, 8:55 PM · PCI
mav updated the diff for D31693: pcib(4): write window after resource adjustment.
Thu, Aug 26, 5:52 PM · PCI
mav requested review of D31693: pcib(4): write window after resource adjustment.
Thu, Aug 26, 5:20 PM · PCI

Wed, Aug 25

mav committed R10:2daa57cafbc8: Mark some sysctls as CTLFLAG_MPSAFE. (authored by mav).
Mark some sysctls as CTLFLAG_MPSAFE.
Wed, Aug 25, 1:55 AM
mav committed R10:f6dbc0d7335f: Mark some sysctls as CTLFLAG_MPSAFE. (authored by mav).
Mark some sysctls as CTLFLAG_MPSAFE.
Wed, Aug 25, 1:54 AM
mav committed R10:abe64b99b38b: geom(4): Mark all sysctls as CTLFLAG_MPSAFE. (authored by mav).
geom(4): Mark all sysctls as CTLFLAG_MPSAFE.
Wed, Aug 25, 1:54 AM
mav committed R10:143efcdb3b8c: cam(4): Mark all sysctls as CTLFLAG_MPSAFE. (authored by mav).
cam(4): Mark all sysctls as CTLFLAG_MPSAFE.
Wed, Aug 25, 1:54 AM

Tue, Aug 24

mav accepted D31594: iscsi: Validate DataSN values in Data-In PDUs in the initiator..
Tue, Aug 24, 9:38 PM
mav added inline comments to D31594: iscsi: Validate DataSN values in Data-In PDUs in the initiator..
Tue, Aug 24, 9:06 PM